Built with love by a passionate Vim enthusiast, Emran Hossain.
Writer is an engineered-to-order, distraction-free Markdown text editor designed for Cross platform use (Currently only macOS and Linux have not tested on windows). Architected for developers, students, and power users, it fuses the efficiency of Vim motions with modern development tools. Whether you are documenting complex system architectures, practicing DSA implementations, or capturing rapid brain dumps, Writer brings IDE-grade utility directly to your writing workflow.
A major iteration focused on empowering product development workflows and enhancing productivity interfaces.
-
Visual Logic Flows: Model architectural patterns, flowcharts, and system designs directly in an interactive sandbox.
-
Vector Export: Easily export your canvas layouts to high-fidelity PDF format for documentation or distribution.
- Task Management: Maintain project velocity with an integrated Kanban board to organize backlog tasks, in-progress items, and milestones.
- Zero Setup Journaling: Instantly bootstrap a new markdown file named with the current date to log daily standups, progress, or sudden ideas.
- Modern Workspace Navigation: A simplified and clean layout for the application header, reducing visual clutter to maximize focus.
- Lifecycle Management: Tracks the state of your notes. You can categorize files into statuses like Active, On-Hold, Completed, and Dropped.
- Flexible Organization: Go beyond standard statuses. Create and apply specialized custom tags tailored to your unique documentation hierarchy.

- Visual Checklists: Adding checkboxes to a file automatically generates a real-time progress bar underneath the filename in the file tree.
- Instant View Toggle: Quickly switch between Markdown input, side-by-side split view, and rendered preview modes using a responsive floating button.
- High-Visibility Callouts: Embed stylized callouts natively using standard alert syntax to highlight crucial constraints or quick tips:
> [!NOTE]
> Highlights information that users should take into account, even when skimming.
> [!TIP]
> Optional information to help a user be more successful.
> [!IMPORTANT]
> Crucial information necessary for users to succeed.
> [!WARNING]
> Critical content demanding immediate user attention due to potential risks.
> [!CAUTION]
> Negative potential consequences of an action.
- Polished Settings Panel: Fine-tune theme aesthetics (light and dark modes) alongside editor-specific configuration controls, including support for the newly integrated premium monospaced font Martian Mono.
- State Persistence and Efficiency: Optimized workspace state by adding file-tree memoization. This vastly reduces UI rendering overhead when handling massive workspaces or triggering recursive state operations.
- Dynamic File Tree Icon Scaling: Implemented recursive folder icon size scaling. Folders nested within subdirectories now automatically scale down by 35% to maintain a highly proportional, neat visual hierarchy across deep directory branches, combined with optimized statusbar layout scaling.
Upgraded CodeMirror-based Markdown table editing utility matching the flow of premium editors like Obsidian. It features:
- Dynamic Table Formatting: Automatically aligns cells and column widths on the fly to eliminate manual formatting.
- Advanced Navigation Keymaps: Smooth navigation using
Tabto move to the next cell,Shift-Tabto move backward, andEnterto create a new row while maintaining the column structure. - Obsidian-Style Live Preview: Intelligently skips separator lines and hides pipes/syntax when the cursor leaves the table block, presenting a clean, rendered grid in live editing mode.
- Explicit Formatting Commands: Manual layout formatting triggerable via
Mod-Shift-F.
Unlock context-aware content generation. The integrated assistant helps draft content quickly. Future updates will leverage local and remote model context to refine, summarize, and adapt existing text directly from your cursor position.
Render complex diagrams, flowcharts, and sequence structures directly in your notes using clean, readable Markdown syntax.
Designed to act as a lightweight dev utility, Writer provides rich code completion and syntactic checking natively inside Markdown code blocks.
- Redesigned Design System: Complete user interface overhaul optimized for ocular comfort, featuring curated light and dark themes.
- Agnostic AI Mode: Bring your own API keys. Connect to OpenRouter or other major provider endpoints to power your generative writing tasks at cost.
- Indexed File Search: Instantly locate key files, notes, and fragments across your workspace.
Most note-taking systems are bloated with cloud synchronizations or rigid database structures. Writer is custom-built for developers who prefer the speed of local files, the precision of Vim keys, and the utility of LSP assistance.
It is a lightweight desktop client that complements the modern terminal workflow, turning rapid, disposable brain dumps into highly-organized markdown documentation without the overhead of heavy IDEs.
writer is a simple note-taking app that uses Markdown syntax to format your notes.
You can create your first note by clicking on the top-left icon on the sidebar, or delete one by clicking on top right icon.
Following there's a quick overview of the currently supported Markdown syntax.
This is a bold text. This is an italic text.
Here are all the heading formats currently supported by Writer:
Write warnings :> [!WARNING]
For example, you can add a list of bullet points:
- Bullet point 1
- Bullet point 2
- Bullet point 3
Here we have a numbered list:
- Numbered list item 1
- Numbered list item 2
- Numbered list item 3
This is a blockquote. You can use it to emphasize some text or to cite someone.
Inline code is written as double `
Code block snippets using the following syntax _```js or py```
Links are written as [name](u.r.l)
I have configured a cross-platform, single-command bootstrap and packaging pipeline. The pipeline operates flawlessly across Windows, macOS, and Linux.
Restore all strict dependencies from the package lockfile:
cd writer
npm run bootstrapStart the interactive developer hot-reloading environment:
cd writer
npm run devRun the full clean, typecheck, compile, and packaging pipeline:
cd writer
npm run build && npm run packageYou can also run specific segments of the pipeline:
- Clean output folders:
npm run clean - Compile Frontend React:
npm run build:frontend - Compile Electron Core:
npm run build:electron - Build targeted packages:
- macOS:
npm run package:mac - Windows:
npm run package:win - Linux:
npm run package:linux
- macOS:
If packaging to Linux distribution formats (like .deb, .rpm, .pacman, .snap), run my host prerequisite validator to verify packages like fakeroot or rpmbuild are present:
cd writer
./scripts/check-prerequisites.sh

