TodoCrypt
A full-stack todo app demonstrating MongoDB Client-Side Field Level Encryption using the mirage-encryption npm package.
Overview
TodoCrypt is a production-quality full-stack application built to showcase the mirage-encryption package in action. Todo data is encrypted at the field level in MongoDB using CSFLE — the server never stores plaintext. Features user auth, CRUD operations, and a glassmorphism React UI.
Problem
Encryption libraries are often demonstrated with toy examples that don't reflect real-world integration complexity. TodoCrypt provides a realistic, end-to-end working application to validate and showcase the mirage-encryption package.
Approach
Built a Node.js/Express backend that initialises the mirage-encryption service before accepting connections. All todo fields are transparently encrypted on insert and decrypted on read. The React frontend communicates over a JWT-authenticated REST API.
Technical Decisions
mirage-encryption handles all CSFLE setup, keeping the application layer clean. JWT + bcryptjs for secure user auth. Framer Motion for UI animations.
Challenges
Integrating MongoDB CSFLE in a deployed environment (Vercel/VPS) where the crypt_shared binary path must be configured correctly at runtime.