// the find
sinelaw/fresh
Terminal based IDE & text editor: easy, powerful and fast
Fresh is a terminal text editor written in Rust targeting the 'zero config' niche — VS Code-style keybindings, mouse support, LSP, and multi-cursor editing without any setup. It's aimed at developers who want IDE features in the terminal but refuse to learn Vim or Emacs. Think Micro or Helix but more ambitious in scope.
- Packaging story is unusually thorough: single static musl binary, self-updating, plus deb/rpm/AUR/Nix/winget/npm/Flatpak/AppImage all covered with CI workflows for each — this is more distribution work than most editors bother with.
- TypeScript plugin system using sandboxed QuickJS (with oxc transpilation at load time) is architecturally interesting — plugins are typed, sandboxed, and don't require Rust knowledge to write.
- Genuine performance attention: the Cargo.toml shows selective opt-level=3 for oxc/rquickjs in dev builds to avoid slow plugin load times during development, and there's a documented approach to multi-GB file handling.
- The orchestrator feature (per-worktree workspaces with AI agent session management) is a real differentiator — it's not just 'we added Claude support', it's a workflow concept around parallel git worktrees.
- Telemetry is opt-out, not opt-in. It sends version, OS, and terminal type daily. For a tool running in developer environments this will be a hard no for many teams and should have been opt-in from day one.
- The plugin API surface is still opaque — `fresh.d.ts` exists but there's no stable API guarantee documented, meaning plugins written today may silently break on updates.
- GPL-2.0 license will block adoption in any commercial product that wants to embed or significantly integrate this editor, which limits the potential ecosystem.
- The codebase is a single-maintainer project with 309 forks but the contributor graph almost certainly shows one dominant author — the CONTRIBUTING.md and issue tracker should be checked before betting on this for anything critical.