Lightweight project management for small teams.
Projects · Todos · Releases · Notes — all in one native desktop app.
| Installer | Description |
|---|---|
DragonFly.exe |
Portable Windows executable (no install needed) |
DragonFly_x.x.x_x64_en-US.msi |
Standard Windows Installer (MSI) |
DragonFly_x.x.x_x64-setup.exe |
NSIS Installer with auto-update support |
dragonfly_x.x.x_amd64.deb |
Debian / Ubuntu package |
dragonfly-x.x.x-1.x86_64.rpm |
Fedora / openSUSE package |
dragonfly_x.x.x_amd64.AppImage |
Portable Linux executable |
Track your releases and features at a glance. See progress bars, task counts, and overall project health in one view.
Drag & drop tasks across columns. Features group their child tasks together — moving a feature moves all its tasks along.
Manage tasks and features with quick-add buttons, search, tags, and release assignment. Filter by release, feature, assignee, or tag.
Plan and organize your releases. Assign tasks, track progress, and generate CAB reports.
Block-based rich text editor with hierarchical sub-notes, Table of Contents navigation, full-text search, tags, and file attachments.
Multi-language support (7 languages), customizable AI prompts, database backup, update check, user management, and optional sync configuration.
Create and manage multiple projects from a visual project selection screen. Each project has its own tasks, notes, releases, and sync configuration. Join shared projects from teammates via dragonfly:// Space URL or Sync URL + Space Key, or keep projects local-only.
DragonFly works fully offline by default. All data stays on your machine.
For team sync, you self-host a PocketBase instance — your server, your rules. All synced data is AES-GCM encrypted with your space key before leaving the client. The server only stores opaque ciphertext.
The docker/ folder in this repository contains a ready-to-use Dockerfile and docker-compose.yml.
1. Clone and start:
git clone https://github.com/McHill007/dragonfly-release.git
cd dragonfly-release/docker
docker compose up -d --build2. Create a Superuser:
docker exec dragonfly-pb /pb/pocketbase superuser create admin@example.com YOUR_PASSWORDOr open the Admin UI at http://localhost:8080/_/.
3. Connect DragonFly:
In the app, go to Settings > Sync and enter:
| Field | Value |
|---|---|
| Server URL | http://<your-server-ip>:8080 |
| Admin Email | The superuser email from step 2 |
| Admin Password | The superuser password from step 2 |
| Space Key | A shared passphrase (used for encryption + auth) |
Click Setup Server — DragonFly will automatically create all required collections and a sync user. After setup, click Connect to start syncing.
Teammates can join a synced project by entering the same Sync URL and Space Key in the Join Project dialog.
| Layer | Technology |
|---|---|
| Runtime | Tauri v2 (Rust + WebView) |
| Frontend | React 19 + TypeScript + Vite |
| UI | Tailwind CSS v4 + shadcn/ui |
| Editor | BlockNote |
| State | Zustand |
| Sync | PocketBase (self-hosted) |
DragonFly is primarily developed and tested on Windows. Linux builds are provided as a convenience.
| Format | Tested on | Status |
|---|---|---|
.exe / .msi |
Windows 10/11 | Fully supported |
.deb |
Ubuntu 22.04+ | Works |
.rpm |
Fedora 36+ | Works |
.AppImage |
Ubuntu 22.04+ | Works |
Note: RHEL-based distributions (Oracle Linux, CentOS, Rocky Linux) may lack the required
libwebkit2gtk-4.1library. Use the AppImage on those systems or try Fedora instead.
If you run into problems on your Linux distribution, please open an issue.
Bugfixes
- Images and file attachments now display correctly in the installed app (MSI/EXE/DEB) — previously they only loaded in dev mode due to an overly restrictive asset protocol scope in production builds
Features
- Voice input for Notes: dictate text directly into the editor using three configurable providers — Live (Web Speech API, free, internet required), OpenAI (uses your existing API key, ~$0.006/min), or Local (offline Whisper, no API key needed)
- Local Whisper model management in Settings: download, inspect, and delete models (Tiny / Small / Medium / Large) without leaving the app
- Transcribed text is inserted at the current cursor position in the Notes editor
Improvements
- Minimize-to-tray toggle is now visible and configurable directly in Settings > General
- Reminder email subject line is now translated into all supported languages
- SMTP test email subject and body are now translatable
- Many previously hardcoded English strings (note titles, tooltip labels, sidebar headers, todo progress counter, scratchpad actions) are now fully translated across all 7 supported languages (EN, DE, ES, FR, IT, PL, RO)
Features
- Markdown paste: pasting markdown text (from any source, VS Code, terminals, etc.) is automatically converted to rich blocks via the
markedlibrary — headings, lists, code blocks, tables and more all paste correctly - In-document anchor links (e.g. table of contents generated from pasted markdown) now scroll to the target heading in view mode instead of navigating to an external URL
Improvements
- Editor typography: Geist Sans font, 14px base size, tighter letter-spacing for a cleaner reading experience
- Inline code styling: warm amber pill (amber background, border, monospace font)
- Block styles: editorial quote with left accent, fading gradient divider, muted list markers, fully muted checked items
- Table of Contents panel: smaller 11px text with level-based color hierarchy (H1 dark → H2 grey → H3 light)
Bugfixes
- Fixed "Edit link" button text invisible (white on white) in the BlockNote link toolbar
- Removed "Open in new tab" button from the link toolbar
Features
- Single-instance enforcement: launching a second instance brings the existing window into focus instead of starting a new process
- Autostart now starts the app silently in the tray (window stays hidden on login, opens on first manual interaction)
Bugfixes
- Attachments (images, files) in notes and tasks now display correctly on all synced PCs — previously the image path pointed to the originating machine
- Permanently deleting a note/task from the recycle bin on one PC now also removes it from the recycle bin on other synced PCs on next sync
- Fixed startup crash ("HotKey already registered") when a previous instance did not clean up its global shortcut
Features
- Code blocks with syntax highlighting and language selection (powered by Shiki via
@blocknote/code-block) - Mermaid diagram blocks in the notes editor — edit mode shows a textarea, view mode renders the diagram as SVG
- Support for all Mermaid diagram types including architecture diagrams with built-in icons (cloud, database, disk, internet, server)
- Insert Mermaid diagrams via the
/slash menu
Bugfixes
- Mermaid architecture diagram icons now render correctly (icon SVG was stripped by DOMPurify in strict mode)
- Markdown export now serializes Mermaid blocks as proper
```mermaidfences instead of lossy text
Features
- Personal reminders with due dates, recurrence, SMTP email notifications, and alert sound
- Minimize to system tray on window close (configurable in Settings)
- Autostart on system login — app starts in the tray so reminders are always active (cross-platform, configurable in Settings)
- Cross-device reminder sync via PocketBase: a single sync secret derives both a public record ID and a private AES encryption key — the server never sees the plaintext
- "New Task" entry in the tray context menu for quick task creation without opening the app
- Global Ctrl+N shortcut to open the new task dialog, even when the app is only in the tray
Improvements
- Admin credentials are now stored per project instead of globally, enabling multiple projects on different PocketBase servers
- Setting admin credentials for one project automatically propagates to all other local projects on the same server (trailing-slash normalized)
- Admin credential fields in the schema upgrade dialog are pre-filled when credentials are already stored for that project
Bugfixes
- Fix window X button doing nothing when "Minimize to Tray" is disabled
Improvements
- Upgrade all dependencies (React 19, Zustand 5, Vite 7, dnd-kit 10, i18next 25, Tailwind 4.2, TypeScript 5.9)
- Resizable sidebar in Notes and Scratchpad pages (drag handle to widen)
- Batch move for kanban feature drag (single state update + single DB query instead of per-child)
- Fix download link on schema-blocked screen
Bugfixes
- Fix scratchpad content overwrite when switching quickly between pads
- Fix external links not opening (missing shell permission)
Features
- Scratchpad recycle bin in Settings > Data (restore, permanent delete, empty all)
- Scratchpad favorites with star toggle and collapsible sidebar section
- Multi-login auth handling: dialog to fix Space Key or leave project on auth failure
- Empty states for Releases, Todos, and Scratchpads with icons and create buttons
Improvements
- Notes favorites section collapsible with chevron toggle and count
- Scratchpads sorted alphabetically, showing created/updated timestamps
- Responsive task toolbar: collapse buttons and hide labels on smaller screens
- Sync tombstone fix: restored items no longer re-deleted on next sync
- Scratchpad autosave: flush pending changes on switch and navigation
Improvements
- Centralized logging service for consistent error tracking
- Fix silent catch blocks across the codebase
- Safe JSON.parse with fallback handling
Features
- Task priority field
- Note favorites with sticky links in sidebar
- Embeddable scratchpad blocks in notes and tasks
- Dashboard empty state with project selection improvements
Improvements
- New logo and sidebar font
- Center settings tabs and fix minimum width for settings cards
- Remove Hindi language
- Remove legacy JSON migration
- Robust schema verification and scratchpad improvements
Bugfixes
- Fix border in BlockNote editor
Features
- Scratchpad with Excalidraw drawing canvas (two-panel layout, auto-save, manual save)
Features
dragonfly://Space URL protocol for simplified project joining- Schema versioning system with automatic migration support
- Remote schema version check on project open and join
- PocketBase backup & restore help section in sync settings
- Logs tab in settings for sync diagnostics
Improvements
- Redesigned sync settings: separate sync info and admin credentials cards
- Verify admin credentials against server before saving
- Password visibility toggle for admin password fields
- Migrated admin credentials from config.ini to database
- Renamed release artifacts for consistency
Features
- Multi-project support with project selection screen and sidebar indicator
- Table of Contents panel for notes (heading extraction, click-to-scroll)
- Customizable AI prompts in Settings (Notes, Tasks, CAB report)
- Project leave functionality
- Collapsible tags section at bottom of notes tree sidebar
Improvements
- Better error handling in sync service
- Clean up attachments on project delete
- Fix tombstone reconnect loop (clear sync credentials on tombstone detection)
Features
- Collapsible sidebar (240px / 56px) with icon tooltips and smooth transition
- Collapsible Kanban columns with rotated text strip and drag-drop support
- Default collapsed columns configurable in Settings (persisted to database)
- Horizontal scroll on the board with min-width per column
- Settings reorganized into 5-tab system (General, Users, Data, Sync, About)
- License and third-party license info in About tab
Improvements
- Compact TaskCard design: smaller tags, release as text, avatar next to title
- Standardized font sizes across Dashboard, Tasks, and Releases pages
- Responsive toolbars with horizontal scroll and smaller controls
- Board usable at smaller window sizes (min-width reduced to 800px)
Features
- Update check in Settings (checks GitHub releases for new versions)
- Quick-add buttons on release headers and feature rows in Tasks view
- Search field to filter tasks by title
- CAB report generation for releases
Improvements
- TaskModal accepts initial release/feature values for pre-filled creation
- Linux CI builds fixed (icons included in repo)
Features
- Database backup (ZIP with DB + attachments) in Settings
- Recycle bin for tasks and notes with restore/permanent delete
- Delete confirmation dialogs for tasks, notes and releases
- Deleting a feature asks whether to also delete child tasks
- Tasks grouped under their feature in the board
- Dragging a feature moves all child tasks along
- Show/hide done toggle on the board
- Feature modal shows list of child tasks
- Dashboard with release and feature progress overview
- CSV export for tasks
- 6 new languages: Polish, French, Spanish, Italian, Romanian, Hindi
- Linux builds (DEB, RPM, AppImage)
- Portable Windows EXE in releases
Improvements
- Releases sorted descending in filter dropdowns
- Features sorted alphabetically in filter dropdown
Bugfixes
- Fixed build error caused by unsupported Array method
Features
- PocketBase sync with end-to-end encryption
- Passphrase protection with auto-lock
- Hierarchical notes with sub-notes
- AI text improvement (OpenAI integration)
- File attachments for tasks and notes
- Kanban board with drag-and-drop
- Features and tasks (two-level hierarchy)
- Release management with task assignment
- User management with color avatars
- Tags for tasks
- Automated build and release via GitHub Actions





