Update
the rest of the post is a little outdated and we have a new website that feature the app
Alpha is incoming and we already have a mobile and desktop app !
The rest of the post is a little outdated but the core idea is still the same
we now have Tauri for dekstop app and React Native + Expo for mobile

Annota is a local-first, fully offline-capable, end-to-end encrypted note-taking application built with a security-first architecture and production-grade sync design.
It combines a powerful rich text editor with a tree-structured knowledge system, encrypted image handling, version history, and deterministic secure sync β all while ensuring the server never sees plaintext data.
Architectural Highlights
- π True End-to-End Encryption (server sees zero content β including images)
- π± Local-First & Fully Offline Capable
- π§ Deterministic Secure Sync Architecture
- πΌ Encrypted Image Lifecycle + Garbage Collection
- β»οΈ Image reference reuse across notes & versions (no duplication)
- π Tree-based hierarchical structure
- π Local version history system
- βοΈ Memory-only decryption with lazy loading
- π§Ή Garbage collection both locally and in backend storage
- π¨ Highly customizable UI & typography settings
π Rich Text Editor
Built on TipTap, integrated via a native mobile WebView.
Supports:
- All common inline styles (bold, italic, underline, strike, etc.)
- Custom code block highlighting
- LaTeX rendering
- YouTube video embedding
- Tables
- Image uploading via:
- Device library
- Camera
- Pasting
- Image URL (downloaded and stored locally)
- Theme-aware rendering injected into the WebView
π³ Tree-Based Notes & Folders
- Infinite nested folder structure
- Clean hierarchical navigation
- Soft delete system with restore capability
- Designed for scalable knowledge organization
π Version History (Local)
- Version snapshots stored locally
- Lightweight and storage-aware
- Designed to integrate seamlessly with encryption
- Allows recovery of previous states without server-side exposure
π End-to-End Encryption
Annota is built around a strict encryption model:
- All note content encrypted client-side
- All images encrypted client-side
- Server stores only encrypted blobs
- Only minimal metadata stored (ID & timestamps)
- Decryption occurs in memory only
- Lazy loading of encrypted content
- Zero plaintext persistence on server
π Key Management
- 12-word recovery phrase generation
- Secure account recovery flow
- Deterministic key restoration across devices
- No key material stored server-side
π Secure Sync Design
- Deterministic sync architecture
- Replace-based conflict-safe updates
- Server acts purely as encrypted storage
- Designed to avoid data leakage by structure
πΌ Image System
- Client-side encrypted image storage
- Images reused via referencing instead of duplication across:
- Multiple notes
- Multiple versions
- Encrypted uploads to backend storage
- Local and backend garbage collection:
- Orphaned image cleanup
- Reference tracking system
- Download support for images
π Backend Architecture
Database Design
- Encrypted notes storage
- Encrypted image storage
- Image-reference mapping
- Soft delete flags
- Minimal metadata storage
- Version history stored locally (not server-side)
π Storage Awareness
- Storage size debugging tools
- Version-aware data considerations
- Designed to prevent unnecessary duplication
- Conscious encrypted blob management
π¨ User Settings
- Theme switching
- Font selection
- Font size control
- Line spacing control
- Compact mode
- Editor-aware typography customization
π± Platform
- Native mobile application
- WebView-based rich editor integration
- Designed with future desktop support in mind
π Roadmap
- π₯ Desktop application (Tauri/Electron)
- UI & UX polishing
- Home screen widgets
- Note templates
- Tag system
- Performance optimizations
- And more to comeβ¦