DailyVault is a privacy-focused web application that lets you write your daily diary and manage to-dos β fully protected with end-to-end encryption (E2EE).
Only you can read what you write. Even the server cannot decrypt your data.
- π§ Write and store diary entries securely
- β Manage personal to-do lists
- π End-to-End Encryption (AES-GCM in browser)
- βοΈ Data stored securely in MySQL via Node.js backend
- π¬ Decryption happens only on your device
- π« Zero-knowledge backend β your data stays private
Frontend: React, JavaScript, Web Crypto API
Backend: Node.js, Express.js
Database: MySQL
Encryption: AES-GCM, PBKDF2 (password-based key derivation)
- User writes a diary entry or to-do item.
- React encrypts the text locally using AES-GCM before sending.
- Encrypted data (ciphertext + IV + salt) is stored in MySQL.
- When fetched, data is decrypted locally again using the same password.
π‘ The server never sees or stores your encryption key or plaintext β total end-to-end privacy.
git clone https://github.com/jadhav045/DailyVault.git
cd DailyVault
# Backend
cd server
npm install
# create .env with PORT, MONGODB_URI, GROQ_API_KEY
npm run dev
# Frontend (new terminal)
cd ../client
npm install
npm start