AetherNote is a privacy-focused, encrypted note-sharing service built with React and Golang. Leveraging Redis for data handling and client-side encryption for security, AetherNote ensures that your notes remain confidential and secure until they are meant to be seen.
Try it at: https://aethernot.es/
- Self-destructing notes: By default notes are deleted automatically after being viewed once.
- Time-based expiration: Notes can be set to expire after a custom number of time.
- View-based expiration: Notes can be set to expire after a custom number of views.
- Custom password: Ability to use a custom password for encryption (pbkdf2 will be used to derive the encryption key).
- Redis + client-side encryption: Utilizes Redis for in memory data storage and retrieval, combined with client-side encryption to ensure that the server never has access to the contents of the notes.
To configure AetherNote properly, set the following environment variables. Below is a table describing each variable and its function:
Variable | Description | Possible Values |
---|---|---|
LISTENING_PORT |
Port number where the frontend server listens | Any valid port number (e.g., 4000 ) |
REDIS_HOST |
Hostname of the Redis server | Usually localhost or redis in Docker environments |
REDIS_PREFIX |
Prefix used for keys in Redis to identify stored notes | Any string (e.g., note ) |
REDIS_PORT |
Port number on which the Redis server is listening | Any valid port number (default 6379 ) |
MAX_EXPIRATION_TIME |
Maximum time in seconds a note can exist | Any integer or 0 for no time limit |
MAX_VIEWS |
Maximum number of views a note can have before deletion | Any integer |
UPLOAD_LIMIT |
Maximum size of the note content in bytes | Any integer (e.g., 1048576 for 1MB) |
AetherNote comes with a Docker Compose setup for easy deployment. The Docker Compose file configures the necessary services and environment variables for a quick start.
To get AetherNote up and running:
- Clone the repository:
git clone https://github.com/kaliendo/aethernote.git cd aethernote
- Start the service:
docker-compose up -d
Your AetherNote service should now be running and accessible via http://localhost:1337