DocForge is a desktop application designed to streamline the process of creating, managing, and refining documents for Large Language Models (LLMs). It connects to local AI providers like Ollama, allowing you to leverage the power of AI to improve your documents in a secure, offline-first environment.
- Modern, Draggable Title Bar: A sleek, VS Code-style custom title bar maximizes screen space and integrates essential functions (Electron version only).
- Integrated Command Palette: Quickly access all core functions from a central search bar, including editor actions such as formatting, locking, AI refinement, and emoji generation.
- Hierarchical Document Organization: Organize your documents in a familiar folder structure. Create nested subfolders, duplicate items, and use drag-and-drop to rearrange your workspace or import files from your computer.
- Clipboard Capture: Turn whatever is on your system clipboard into a document in one step—DocForge classifies the contents automatically, generates a title with your connected LLM when possible, and prompts you to restore permissions if clipboard access is blocked.
- Full Context Menu & Keyboard Navigation: Navigate and manage items using a complete right-click context menu or use only the keyboard for a faster workflow.
- Universal Monaco Editor: A powerful, VS Code-like editor is used for all document types, including Markdown, HTML, and various source code files, with syntax highlighting and code folding.
- One-Click Formatting: Clean up Markdown, JSON, JavaScript, and TypeScript documents directly from the editor toolbar.
- Cancel Unsaved Changes: Instantly roll a document back to its last saved state with a dedicated toolbar button when an experiment goes sideways.
- Document Locking: Protect sensitive drafts by toggling a padlock button that flips the editor into a read-only mode until you intentionally unlock it.
- Emoji-Enhanced Titles: Insert emoji directly into document and folder names or let the AI suggest a prefix so your workspace stays scannable at a glance.
- Multi-Document Tabs: Keep several documents open at once, pin important files, and quickly jump between them using the tab strip and overflow picker.
- Multi-Format Live Preview: Get a real-time, rendered preview for Markdown, HTML, PDFs, and common image formats. The preview can be displayed side-by-side (vertically or horizontally) with the editor, and binary formats open straight into preview mode with zoom and pan controls tailored to each viewer.
- Focused Workspace Zoom: Use a single set of zoom controls that automatically follow whichever pane—editor or preview—has focus, complete with 5% increments, keyboard and mouse support, and quick resets.
- AI-Powered Refinement: Use your connected local LLM to automatically refine and improve your documents with a single click.
- Document Templating: Create reusable document templates with variables to quickly generate new documents for recurring tasks.
- Document Export: Save any document to your filesystem with a suggested filename and the correct extension for its detected type, whether you're running the Electron app or using the browser build.
- Hover-First Tree Actions: Keep document titles readable while revealing quick actions—duplicate, export, lock, etc.—only when you hover or focus each row in the sidebar.
- Integrated Python Workflow: Open an inline Python console tied to your documents to execute snippets, review logs, and manage isolated environments without leaving DocForge.
- Shell & PowerShell Execution: Run or syntax-test scripts directly from the editor with per-document environment overrides that merge with workspace defaults configured in Settings.
- Version History: Explicitly save new versions of your documents. Manage your history by viewing diffs, deleting old versions, and restoring to any point in time.
- Local LLM Discovery: Automatically detects running local LLM providers like Ollama and LM Studio for easy setup.
- Highly Customizable:
- Interface: Switch between light and dark themes, adjust the UI scale, choose from multiple icon sets, and fine-tune accent colors with the compact picker.
- Keyboard Shortcuts: Remap default shortcuts for core application commands to fit your preferences.
- Database Management: A dedicated settings panel allows you to view database statistics, run integrity checks, and perform maintenance like backups and optimization.
- Workspace Bootstrap: Create a brand new SQLite database from the status bar or settings to start fresh without leaving the app.
- Configurable Data Storage: Choose a custom SQLite database location or reopen an existing workspace file from the settings panel.
- Comprehensive Action Logging: Every user action is logged, and the logger panel now supports range selections, modifier-aware drag selection, and configurable copy-to-clipboard exports with or without timestamps and levels.
- Offline First: All your data is stored locally on your machine.
- Auto-Update: Control automatic startup checks, opt into pre-release builds, and trigger manual "Check for Updates" scans that report success or errors inline.
- Resizable Layout: The sidebar, templates panel, and logger panel are all fully resizable to customize your workspace.
- Download: Grab the latest release for your operating system from the Releases page.
- Run a Local LLM: Ensure you have a local AI provider like Ollama or LM Studio running.
- Configure: Launch DocForge, open the Settings view, and select your detected LLM service and a model to use for refinement tasks.
- Create: Start creating, organizing, and refining your documents!
For detailed instructions on usage and features, please refer to the Functional Manual.
To review the history of changes, see the Version Log. Detailed release notes are archived under docs/releases/.
DocForge adopts GitHub Spec Kit to keep feature planning, implementation, and review aligned. The toolkit installs slash commands for AI coding assistants and project scripts that generate numbered spec packages under specs/.
Use the uv tool to install or upgrade the Spec Kit CLI globally:
uv tool install specify-cli --from git+https://github.com/github/spec-kit.git
# Upgrade later with:
uv tool install specify-cli --force --from git+https://github.com/github/spec-kit.gitRun specify check inside the repository to confirm prerequisites.
-
Generate a scaffolded spec folder and branch slug:
.specify/scripts/bash/create-new-feature.sh "<feature summary>" -
Use your preferred AI assistant with the
/speckit.*commands to fill out the artifacts:Core commands
/speckit.constitutionupdates the governance document./speckit.specify,/speckit.plan, and/speckit.taskspopulate the feature spec, technical plan, and task list./speckit.implementcan translate an approved plan into code.
Optional commands
/speckit.clarifyresolves ambiguous requirements before planning./speckit.analyzechecks alignment across spec, plan, and tasks prior to implementation./speckit.checklistgenerates quality checklists tailored to the feature.
-
Commit the spec folder before beginning implementation so reviewers can trace scope and acceptance criteria.
To create a new public build of DocForge:
- Update the version in
package.jsonand regenerate the lockfile withnpm version <new-version> --no-git-tag-version. - Draft the release notes by updating
VERSION_LOG.mdwith a new section that summarizes the changes included in the release (the automated workflow copies the top entry into the GitHub release body) and by capturing detailed notes underdocs/releases/<version>.mdfor archival. - Review the Markdown documentation (README, manuals, and release notes) so the written guidance matches the current workflow.
- Sync the documentation copies under
docs/(README, manuals, version log) with any updates made at the project root. - Commit the changes and push them to the default branch so the release tag points at the finalized documentation.
- Create and push a tag that matches the new version (for example,
git tag v0.8.0followed bygit push origin v0.8.0) to trigger the automated release workflow. - Monitor the "Release" workflow run, then confirm that the published GitHub release lists the correct notes and includes installers for every platform before announcing availability.
- The canonical artwork lives at
assets/icon.svg. Keep this SVG under version control to simplify brand updates. npm run build(and any script that calls it) automatically validates the SVG and regeneratesicon.icns,icon.ico, and a high-resolutionicon.pngvia thescripts/prepare-icons.mjshelper.- If the SVG is missing or invalid the script logs a warning and leaves existing binary icons untouched, allowing packaging to proceed with the previously generated assets.
- Run
npm run prepare:iconsto regenerate the platform-specific icons on demand without rebuilding the JavaScript bundles.