neurocyte / flow
git clone https://github.com/neurocyte/flow.git
v0.7.2 · 8mo ago
🔥 on GitHub Trending today
Flow Control: a programmer's text editor
+2
stars, 24h · #5,127
+~14
stars, 7 days · #5,869
+~60
stars, 30 days · #7,919
2.5k
★ total · +1% this week
127
forks · 59 open issues
Star history (as recorded here)
LanguageZig
LicenseMIT
Created2024-02-25 (2y ago)
Last push1d ago
Watchers13
OwnerUser
Seen on GitHub Trending
- 2026-10-22 — #12 daily in zig · +1 ★
- 2026-10-21 — #7 daily in zig
- 2026-10-20 — #7 daily in zig · +3 ★
GitHub topics
Links
- GitHub: github.com/neurocyte/flow
- Homepage: https://flow-control.dev
- Releases · Issues · Hacker News mentions
README excerpt
# Flow Control: a programmer's text editor This is my Zig text editor. It is under active development, but very stable and is my daily driver for almost everything. # Features - **Lightning Fast** TUI with ≤6ms frame times, **low latency** input handling and smooth **animated scrolling** - Intuitive UI with **tabs**, **scrollbars** and **palettes** with full **mouse** support for all UI elements - Support for more than **70 programming languages**, **zero configuration** needed, via **tree-sitter** powered syntax highlighting - **Language Server Protocol** pre configured support for most language servers - Powerful **multi-cursor** editing and integrated **clipboard history** - Powerful configurable keybinding system that supports **modal** and **non-modal** editing styles - Multiple pre-configured **keybinding modes** - Flow Control - GUI IDE style bindings (similar to vscode) - Emacs - Vim - Helix - User created - Hybrid rope/piece-table buffer system, edit **very large files** with **thousands of cursors** - Infinite **undo** (at least until you run out of ram) - Full **unicode** support, including support for the kitty text sizing protocol - Plenty of **themes** included and support for vscode themes via the flow-themes project - Runs on **Linux, FreeBSD, MacOS, Windows and Android** (under termux) with easy **cross-compilation** to all supported targets # Requirements - A modern terminal with **24bit color** and, ideally, **kitty keyboard protocol** support. **Kitty**, **Foot** and **Ghostty** are the recommended terminals at this time. **Zellij** also works well. Most other terminals will work, but likely with reduced functionality. - **NerdFont** support. Either via terminal font fallback or a patched font. - A **UTF-8** locale # Roadmap See our devlog for on-going updates from the development team. ## In Development - LSP completion support - Persistent undo/redo - File watcher integration ## Future - Collaborative editing - Plugin system - Multi-terminal sessions # Installer and manual downloads There is an installation guide on the main website with instructions for using the installer script. Direct downloads of source tarballs and release and nightly binary builds are listed on the downloads page. Or check your favorite local system package repository. # Building Make sure your system meets the requirements listed above. Flow builds with zig 0.17 at this time. Build with: [code] Zig will by default build a binary optimized for your specific CPU. If you get illegal instruction errors add `-Dcpu=baseline` to the build command to produce a binary with generic CPU support. Thanks to Zig you may also cross-compile from any host to pretty much any target. For example: [code] When cross-compiling zig will build a binary with generic CPU support. The output binary is: [code] It is statically built (by default) and contains all the required tree-sitter parsers and queries. No additional runtime files are required. # Run