notes/self hosted email/calendar. secure, simple and stupid.
Find a file
2025-06-27 13:33:33 -07:00
.github/workflows added fly deploy yml in order to ensure CD 2025-06-22 14:01:41 -07:00
.vscode added a VScode debugger 2025-06-23 21:36:39 -07:00
eversync fix settings+unpushed a secret 2025-06-25 02:01:08 -07:00
eversyncc implement message editing functionality with error handling 2025-06-26 14:52:25 -07:00
templates Improve dark mode styling for web archive, and fixed logic with buttons to view HTML 2025-06-11 01:32:28 +02:00
.dockerignore update settings for PostgreSQL 2025-05-10 19:10:41 +02:00
.gitignore expose fly.toml from gitignore 2025-06-19 10:12:42 -07:00
add_embed.html dark mode WIP 2025-06-02 19:57:36 +02:00
add_task.html dark mode WIP 2025-06-02 19:57:36 +02:00
calendar.html Add recurrence feature to calendar events 2025-06-11 03:27:18 +02:00
chat.html Add AI assist button to chat input for message refinement and implement functionality to fetch AI responses. 2025-06-09 20:14:25 +02:00
chat_thread.html implement message editing functionality with error handling 2025-06-26 14:52:25 -07:00
create_whiteboard.html massive dark mode finish 2025-06-02 23:44:23 +02:00
Dockerfile added mime type cheking, html cleansing, extra user verfication 2025-06-25 17:09:44 -07:00
document_list.html Implement local time display for document last edited timestamp 2025-06-10 18:50:11 +02:00
documents.html fixed properly displaying Quill.JS documents 2025-06-11 03:03:38 +02:00
edit_document.html fixed properly displaying Quill.JS documents 2025-06-11 03:03:38 +02:00
embed_list.html added ordering to the embed list and fixed css so delete button css dosent get applied to the dropdown menu 2025-06-24 00:19:50 -07:00
fcm.py fixed notification logic i think 2025-06-25 00:49:39 -07:00
file_list.html rework voice recognition error handling and remove unused service worker code. fixed a small bug in oneko 2025-06-23 18:13:44 -07:00
fly.toml updated clamav setup 2025-06-19 10:43:03 -07:00
index.html prevent javascript from erroing 2025-06-23 23:07:43 -07:00
LICENSE license as is. 2025-05-09 21:06:24 +02:00
manage.html added functionality to delete profile picture 2025-06-23 21:59:44 -07:00
manage.py init 2025-05-03 22:01:13 +02:00
meeting.html dark mode WIP 3 2025-06-02 21:24:23 +02:00
music.html styling changes, most of the work was done in gitignored Dockerfile to restore music functionality - yt-dlp is not reliable and you have to reinstall it frequently 2025-06-10 21:29:49 +02:00
notes.html rework voice recognition error handling and remove unused service worker code. fixed a small bug in oneko 2025-06-23 18:13:44 -07:00
pomodoro.html dark mode WIP 3 2025-06-02 21:24:23 +02:00
README.md Update README.md 2025-06-27 13:33:33 -07:00
register.html recaptcha support added 2025-06-02 01:28:58 +02:00
requirements.txt added mime type cheking, html cleansing, extra user verfication 2025-06-25 17:09:44 -07:00
sentry_replay.html profile picture display 2025-06-11 01:03:14 +02:00
task_list.html dark mode WIP 2025-06-02 19:57:36 +02:00
thought_reframing.html massive dark mode finish 2025-06-02 23:44:23 +02:00
upload.html dark mode WIP 2025-06-02 19:57:36 +02:00
view_document.html fixed properly displaying Quill.JS documents 2025-06-11 03:03:38 +02:00
weather.html remove commented-out forecast code and simplify forecast div structure 2025-06-23 23:42:17 -07:00
weather_pick.html dark mode WIP 3 2025-06-02 21:24:23 +02:00
whiteboard.html Add drawing tools and shape functionality to whiteboard 2025-06-11 02:35:22 +02:00
whiteboard_list.html Implement local time display for whiteboard timestamps 2025-06-10 19:15:25 +02:00

Neighborhood Badge

Eversync Notes, Office Suite & Calendar

Banner

Secure, Simple, and Stupid
All-in-one productivity suite

Features

  • 📝 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

🚀 Quick Start

  1. Clone the repository:
    git clone https://github.com/rudy3333/eversync.git
    cd eversync
    
  2. Install dependencies:
    pip install -r requirements.txt
    
  3. Run migrations:
    python manage.py migrate
    
  4. Start the development server:
    python manage.py runserver
    

⚙️ Environment Variables

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.

Deployment

To run with Gunicorn:

gunicorn eversync.wsgi

Docker

A Dockerfile is included for containerized deployment:

docker build -t eversync .
docker run -d -p 8000:8000 eversync

Reverse Proxy

For production, use a reverse proxy like Caddy or Nginx. See Gunicorn deployment docs for example configurations.

🤝 Contributing

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.

📬 Support & Contact

📄 License

This project is licensed under our custom license — do whatever you want, I probably won't care.