A minimalist, privacy-focused personal journal with AI assistance
Features β’ Installation β’ Development β’ Contributing
- Modern Editor: Built on TipTap with markdown support, code blocks, and more
- Auto-Save: Never lose your thoughts with automatic saving
- Calendar View: Navigate entries easily with an intuitive calendar interface
- Mood Tracking: Record your daily mood with emoji indicators
- Daily Quotes: AI-generated inspirational quotes to spark creativity
- Text Polish: Enhance your writing with AI-powered refinement
- Translation: Translate content to multiple languages
- Grammar Fix: Automatically correct grammar mistakes
- History: Track all AI operations for each entry
- Multiple Providers: Support for Qwen (ιΏιδΊ) and Murf.ai
- Voice Selection: Choose from various voice options
- Speed Control: Adjust playback speed to your preference
- Audio Playback: Built-in audio player for listening to your entries
- Writing Statistics: Track total entries, current streak, and longest streak
- Mood Analytics: Visualize your emotional patterns over time
- Full-Text Search: Quickly find entries with powerful search capabilities
- Cloud Sync: Synchronize your entries across devices via Supabase
- Import/Export: Backup and restore your data as JSON
- Privacy First: All data stored locally on your device by default
- Cross-Platform: Available on Windows, macOS, and Linux
- Node.js 18+ and pnpm
- Rust and Cargo
- System dependencies for Tauri (see Tauri Prerequisites)
# Clone the repository
git clone https://github.com/fan-tastic-z/echo-daily.git
cd echo-daily
# Install dependencies
pnpm install
# Run in development mode
pnpm tauri devComing soon! Releases will be available on GitHub Releases.
echo-daily/
βββ src/ # Frontend source (React + TypeScript)
β βββ components/ # React components
β βββ lib/ # API layer
β βββ store/ # State management (Zustand)
β βββ types/ # TypeScript types
βββ src-tauri/ # Backend source (Rust)
β βββ src/
β β βββ ai/ # AI provider implementations
β β βββ db/ # Database queries and migrations
β β βββ tts/ # Text-to-speech providers
β β βββ keychain/ # Secure storage for API keys
β βββ capabilities/ # Tauri capability configurations
βββ Cargo.toml # Rust dependencies
# Development
pnpm tauri dev # Start dev server with hot reload
# Building
pnpm tauri build # Build production binaries
pnpm build # Build frontend only
# Linting & Formatting
pnpm exec eslint . # Lint frontend code
pnpm exec prettier --write . # Format code
# Type checking
pnpm exec tsc --noEmit # Check TypeScript types
# Rust
cargo check # Check Rust code
cargo test # Run Rust tests
cargo clippy # Lint Rust codeLinux (Arch/Manjaro):
- AppImage bundling may fail due to
linuxdeploycompatibility with newer system libraries - The build produces working DEB and RPM packages successfully
- If you encounter AppImage build errors, the packages are still available in
src-tauri/target/release/bundle/
Output Artifacts:
- Linux:
.deb,.rpm,.AppImagebundles - Windows:
.exeinstaller - macOS:
.dmginstaller,.appbundle
Frontend:
- Framework: React 19.1 with TypeScript
- Editor: TipTap (ProseMirror-based)
- Styling: Tailwind CSS
- State: Zustand
- Icons: Lucide React
- Code Quality: ESLint 9, Prettier
Backend:
- Framework: Tauri 2.0
- Database: SQLite with SQLx
- AI: ζΊθ°± AI (Zhipu AI)
- TTS: Qwen, Murf.ai
- Sync: Supabase (optional, self-hosted)
- Security: Platform keychain for API keys
TODO: Add screenshots here
- Click the wand icon (πͺ) in the header
- Enter your Zhipu AI API key
- Configure model settings
- Click the speaker icon (π) in the header
- Choose your provider (Qwen or Murf.ai)
- Enter your API key
- Select voice and adjust speed
- Click the cloud icon (βοΈ) in the header
- Configure your Supabase project:
- Enter your Supabase URL and anon key
- Set up the required database tables
- Enable sync to keep your entries synchronized across devices
- Manual sync or automatic sync on save
- Click the database icon (πΎ) in the header
- Export: Save all your data as a JSON file
- Import: Restore from a previous backup
- Mobile apps (iOS/Android)
- Plugin system
- Custom themes
- End-to-end encryption
- More AI providers
- Attachment support (images, files)
This project is licensed under the MIT License - see the LICENSE file for details.
- Tauri - Cross-platform desktop framework
- TipTap - Rich text editor framework
- Zhipu AI - AI services provider
- Supabase - Backend as a service for sync
- Lucide - Beautiful icons
Made with β€οΈ by fan-tastic-z
β Star us on GitHub β it helps!