Secure, Simple, and Stupid
All-in-one productivity suite
- 📝 Note-taking with rich text support
- 📅 Calendar & event management
- 📂 Document storage and management
- 🗂️ Office suite utilities
- 🔒 Privacy-first, self-hosted
- 🔔 Notifications & reminders
- 🖼️ Whiteboard for visual collaboration
- 🔗 Embeds and web archives
- 🎵 Pomodoro timer, music, and more
- Clone the repository:
git clone https://github.com/rudy3333/eversync.git cd eversync
- Install dependencies:
pip install -r requirements.txt
- Run migrations:
python manage.py migrate
- Start the development server:
python manage.py runserver
Create a .env
file in your project root with the following variables:
SECRET_KEY=your-django-secret-key
DB_NAME=your_db_name
DB_USER=your_db_user
DB_PASSWORD=your_db_password
DB_HOST=your_db_host
DB_PORT=your_db_port
RECAPTCHA_PUBLIC_KEY=your_recaptcha_public_key
RECAPTCHA_PRIVATE_KEY=your_recaptcha_private_key
EMAIL_HOST=smtp.example.com
EMAIL_PORT=587
EMAIL_USE_TLS=True
EMAIL_HOST_USER=your_email@example.com
EMAIL_HOST_PASSWORD=your_email_password
DEFAULT_FROM_EMAIL=webmaster@localhost
REGISTRATION_SALT=randomstring
- For push notifications, place your Firebase service account JSON as
fcm_secret.json
in the project root. - For reCAPTCHA, get your keys from Google reCAPTCHA.
To run with Gunicorn:
gunicorn eversync.wsgi
A Dockerfile
is included for containerized deployment:
docker build -t eversync .
docker run -d -p 8000:8000 eversync
For production, use a reverse proxy like Caddy or Nginx. See Gunicorn deployment docs for example configurations.
Contributions are welcome! To get started:
- Fork this repository
- Create a new branch (
git checkout -b feature/your-feature
) - Commit your changes
- Open a pull request
Please see the issues page for ideas and discussion.
- For questions, open an issue
- For direct contact, reach out via GitHub profile
This project is licensed under our custom license — do whatever you want, I probably won't care.