jotDown is a beautiful, feature-rich notes application for Linux that combines the power of Markdown with the convenience of both a desktop GUI and command-line interface. Whether you prefer clicking or typing, jotDown adapts to your workflow.
- Modern Design: Clean, intuitive interface following Material Design 3
- Adaptive Themes: System auto, light, and dark themes
- Live Preview: Toggle between Markdown editing and rendered preview
- Responsive Layout: Optimized for various screen sizes
- AES-256 Encryption: Secure your sensitive notes with strong encryption
โ ๏ธ (Experimental) - Password Protection: Optional password-based access control
- Local Storage: Your data stays on your machine - no cloud required
โ ๏ธ Note: Encryption features are currently experimental. While we use industry-standard AES-256 encryption, please ensure you have backups of important data and test thoroughly before relying on encryption in production environments.
- Multiple Locations: Choose where your notes are stored
- App Data (default, no file system access needed)
- Documents folder (
~/Documents/jotDown/
) - Home directory (
~/jotDown/
) - Custom location of your choice
- Easy Migration: Automatically migrate notes when changing locations
- Backup & Export: Create zip archives with individual Markdown files
- Desktop GUI: Full-featured graphical application
- Command Line: Powerful CLI for automation and quick access
- Shared Data: Both interfaces work with the same notes seamlessly
- Headers, lists, and formatting
- Code blocks with syntax highlighting
- Links, images, and tables
- Blockquotes and more
- Live preview while editing
Choose the package format that works best for your Linux distribution:
wget https://github.com/timappledotcom/jotdown/releases/download/v0.1.7/jotdown-v0.1.7-amd64.deb
sudo dpkg -i jotdown-v0.1.7-amd64.deb
wget https://github.com/timappledotcom/jotdown/releases/download/v0.1.7/jotdown-v0.1.7-x86_64.rpm
sudo rpm -i jotdown-v0.1.7-x86_64.rpm
# Or with dnf/yum:
sudo dnf install jotdown-v0.1.7-x86_64.rpm
wget https://github.com/timappledotcom/jotdown/releases/download/v0.1.7/JotDown-v0.1.7-x86_64.AppImage
chmod +x JotDown-v0.1.7-x86_64.AppImage
./JotDown-v0.1.7-x86_64.AppImage
wget https://github.com/timappledotcom/jotdown/releases/download/v0.1.7/jotdown-v0.1.7-linux-x64.tar.xz
tar -xf jotdown-v0.1.7-linux-x64.tar.xz
cd jotdown-v0.1.7-linux-x64
./install.sh # Optional: install system-wide
# Or run directly: ./jotdown
๐ฆ Latest Release: v0.1.7 - View all releases
๐ง v0.1.7 Highlights: Fixed dock icon display and taskbar pinning issues
After installing jotDown, you can set up the convenient jd
command for CLI access:
Quick Setup (Recommended):
# Navigate to your jotDown installation and run the included setup script
cd /opt/jotdown # or your installation directory
sudo ./bin/setup-jd.sh
Alternative Methods:
wget https://github.com/timappledotcom/jotdown/releases/download/v0.1.6/setup-cli.sh
chmod +x setup-cli.sh
sudo ./setup-cli.sh
Or create symlink manually:
sudo ln -s /opt/jotdown/bin/jd /usr/local/bin/jd
jd --help
- Flutter SDK 3.24+
- Linux development tools
- GTK 3.0+ development libraries
# Install dependencies (Ubuntu/Debian)
sudo apt-get install libgtk-3-dev libx11-dev pkg-config cmake ninja-build libblkid-dev libsecret-1-dev
# Clone the repository
git clone https://github.com/timappledotcom/jotdown.git
cd jotdown
# Get Flutter dependencies
flutter pub get
# Enable Linux desktop support
flutter config --enable-linux-desktop
# Build the application
flutter build linux --release
# The built application will be in build/linux/x64/release/bundle/
Launch jotDown from your application menu or run jotdown
in the terminal.
- Click the "+" floating action button
- Enter a title and start writing in Markdown
- Use the preview toggle to see rendered output
- Save with Ctrl+S or click the save button
- Click the settings gear icon
- Choose your preferred storage location
- Test the location and save
- Optionally migrate existing notes
jotDown includes a powerful CLI for terminal enthusiasts and automation.
# List all notes
jd list
# Add a new note
jd add -t "My Note" -c "Note content here"
# View a note
jd view --id 123456789
# Search notes
jd search -q "important"
# Use with your favorite editor
export EDITOR=vim
jd add -t "Meeting Notes" --editor
The jd
command is a convenient wrapper around the full Dart CLI:
# Make it globally available
sudo ln -s /path/to/jotdown/bin/jd /usr/local/bin/jd
For detailed CLI documentation, see CLI_README.md.
lib/
โโโ main.dart # App entry point
โโโ models/ # Data models
โโโ services/ # Business logic
โโโ screens/ # UI screens
โโโ widgets/ # Reusable components
bin/
โโโ jotdown.dart # CLI implementation
โโโ jd # CLI wrapper script
assets/
โโโ icons/ # Application icons
โโโ jotdown.desktop # Linux desktop integration
We welcome contributions! Please feel free to:
- Report bugs and issues
- Suggest new features
- Submit pull requests
- Improve documentation
Exciting features coming to jotDown:
- Android App: Native Android application for seamless mobile note-taking
- Cross-platform Sync: Keep your notes synchronized across Linux desktop and Android
- Peer-to-Peer Sync: Direct device-to-device synchronization without cloud dependencies
- End-to-End Encryption: Secure sync with client-side encryption
- Local Network Discovery: Automatic detection of other jotDown instances on your network
- Hardware Key Support: Integration with security keys for authentication
- Biometric Authentication: Fingerprint/face unlock support on supported devices
- Rich Media Support: Enhanced image, audio, and file attachment handling
- Advanced Search: Full-text search with filters, tags, and smart suggestions
๐ก Have ideas for other features? Share them in our discussions!
This project is licensed under the MIT License - see the LICENSE file for details.
- Built with Flutter for native Linux performance
- Icons created with love using SVG
- Inspired by the need for a simple, powerful notes application
- Issues: GitHub Issues
- Discussions: GitHub Discussions