Sign inSign up

corentinth/enclosed

By corentinth

•Updated about 1 year ago

Minimalistic web application designed for sending private and secure notes.

Image
Developer tools
Web servers
4

500K+

corentinth/enclosed repository overview

⁠Enclosed

Enclosed is a minimalistic web application designed for sending private and secure notes.

All notes are end-to-end encrypted, ensuring that the server and storage have zero knowledge of the content. Users can set a password, define an expiration period (TTL), and choose to have the note self-destruct after being read.

A live instance is available at enclosed.cc⁠.

⁠Features

  • End-to-End Encryption: Your notes are encrypted on the client side, and only the intended recipient can decrypt them.
  • Zero Knowledge: The server does not have access to the content of the notes.
  • Configurable Security Options: Set a password, expiration time, and choose self-destruction after the note is read.
  • Minimalistic UI: Simple and intuitive user interface for quick note sharing.

⁠Self host

⁠Docker

You can quickly run the application using Docker.

# From docker hub
docker run -d -p 8787:8787 corentinth/enclosed
# or from GitHub Container Registry
docker run -d -p 8787:8787 ghcr.io/corentin-th/enclosed

With volume persistency Replace /path/to/local/data with the path to your local data directory.

# From docker hub
docker run -d -p 8787:8787 -v /path/to/local/data:/app/.data corentinth/enclosed
# or from GitHub Container Registry
docker run -d -p 8787:8787 -v /path/to/local/data:/app/.data ghcr.io/corentin-th/enclosed
⁠Docker Compose

You can also use Docker Compose to run the application.

services:
  enclosed:
    image: corentinth/enclosed@latest
    ports:
      - 8787:8787
    volumes:
      - /path/to/local/data:/app/.data
    restart: unless-stopped

⁠Usage

  1. Visit the application URL.
  2. Create a new note by entering the content.
  3. (Optional) Set a password and expiration time.
  4. Save the note, and you will receive a unique link.
  5. Share the link with the intended recipient.

⁠Project Structure

This project is organized as a monorepo using pnpm workspaces. The structure is as follows:

  • packages/app-client: Frontend application built with SolidJS.
  • packages/app-server: Backend application using HonoJS.

⁠Contributing

Contributions are welcome! Please refer to the CONTRIBUTING.md file for guidelines on how to get started, report issues, and submit pull requests.

⁠License

This project is licensed under the Apache 2.0 License. See the LICENSE⁠ file for more information.

⁠Credits and Acknowledgements

This project is crafted with ❤️ by Corentin Thomasset⁠.

It would not have been possible without the following open-source projects:

⁠Frontend
  • SolidJS: A declarative JavaScript library for building user interfaces.
  • shadcn-solid.com: UI components library for SolidJS.
  • Tabler Icons: A set of open-source icons.
⁠Backend
  • HonoJS: A small, fast, and lightweight web framework for building APIs.
  • unstorage: A universal storage API.
  • Zod: A TypeScript-first schema declaration and validation library.
⁠Inspiration

⁠Contact Information

Please use the issue tracker on GitHub for any questions or feedback.

Tag summary

Content type

Image

Digest

sha256:d1e78c34a…

Size

53.9 MB

Last updated

about 1 year ago

docker pull corentinth/enclosed