Skip to content

sinelaw/fresh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fresh

Visit the official Fresh website

📦 Installation Instructions

A terminal-based text editor.

Why?

Why another text editor? Fresh brings the intuitive, conventional UX of editors like VS Code and Sublime Text to the terminal.

While veterans like Emacs and Vim - and newer editors like Neovim and Helix - are excellent for power users who prefer modal, highly specialized workflows, they often present a steep learning curve for those used to standard GUI interactions. Fresh is built for the developer who wants a familiar, non-modal experience out-of-the-box, without sacrificing the speed and portability of the command line. Keyboard bindings, mouse support, menus, command palette etc. are all designed to be familiar to most modern users.

Architecturally, Fresh is built to handle multi-gigabyte files or slow network streams efficiently, maintaining a negligible memory overhead regardless of file size. While traditional editors struggle with latency and RAM bloat on large files, Fresh delivers consistent, high-speed performance on any scale.

The goal for Fresh is to be an intuitive and accessible, high-performance terminal-based editor that "just works" on any hardware, for everyone.

Discovery & Ease of Use

Fresh is designed for discovery. It features native UIs, a full Menu system, and a powerful Command Palette. With full mouse support, transitioning from graphical editors is seamless.

Modern Extensibility

Extend Fresh easily using modern tools. Plugins are written in TypeScript and run securely in a sandboxed Deno environment, providing access to a modern JavaScript ecosystem without compromising stability.

Low-Latency Performance

Fresh is engineered for speed. It delivers a low-latency experience, with text appearing instantly. The editor is designed to be light and fast, reliably opening and editing huge files up to multi-gigabyte sizes without slowdown.

Comprehensive Feature Set

  • File Management: open/save/new/close, file explorer, tabs, auto-revert, git file finder
  • Editing: undo/redo, multi-cursor, block selection, smart indent, comments, clipboard
  • Search & Replace: incremental search, find in selection, query replace, git grep
  • Navigation: go to line/bracket, word movement, position history, bookmarks, error navigation
  • Views & Layout: split panes, line numbers, line wrap, backgrounds, markdown preview
  • Language Server (LSP): go to definition, references, hover, code actions, rename, diagnostics, autocompletion
  • Productivity: command palette, menu bar, keyboard macros, git log, diagnostics panel
  • Plugins & Extensibility: TypeScript plugins, color highlighter, TODO highlighter, merge conflicts, path complete, keymaps

Fresh Screenshot Fresh Screenshot Fresh Screenshot

Installation

Platform Method
macOS Homebrew
Arch Linux AUR
Debian/Ubuntu .deb
Fedora/RHEL .rpm
Linux (any distro) Flatpak
All platforms Pre-built binaries
npm npm / npx
Rust users (Fast) cargo-binstall
Rust users crates.io
Nix Nix flakes
Developers From source

macOS (Homebrew)

brew tap sinelaw/fresh
brew install fresh-editor

Arch Linux (AUR)

Binary package (recommended, faster install):

git clone https://aur.archlinux.org/fresh-editor-bin.git
cd fresh-editor-bin
makepkg --syncdeps --install

Build from source:

git clone https://aur.archlinux.org/fresh-editor.git
cd fresh-editor
makepkg --syncdeps --install

Using an AUR helper (such as yay or paru):

# Binary package (recommended, faster install)
yay -S fresh-editor-bin

# Or build from source
yay -S fresh-editor

Debian/Ubuntu (.deb)

Download and install the latest release:

curl -sL $(curl -s https://api.github.com/repos/sinelaw/fresh/releases/latest | grep "browser_download_url.*_$(dpkg --print-architecture)\.deb" | cut -d '"' -f 4) -o fresh-editor.deb && sudo dpkg -i fresh-editor.deb

Or download the .deb file manually from the releases page.

Fedora/RHEL/openSUSE (.rpm)

Download and install the latest release:

curl -sL $(curl -s https://api.github.com/repos/sinelaw/fresh/releases/latest | grep "browser_download_url.*\.$(uname -m)\.rpm" | cut -d '"' -f 4) -o fresh-editor.rpm && sudo rpm -i fresh-editor.rpm

Or download the .rpm file manually from the releases page.

Flatpak

Download the .flatpak bundle from the releases page and install:

flatpak install --user fresh-editor-VERSION-x86_64.flatpak
flatpak run io.github.sinelaw.fresh

See flatpak/README.md for building from source.

Pre-built binaries

Download the latest release for your platform from the releases page.

npm

npm install -g @fresh-editor/fresh-editor

Or try it without installing:

npx @fresh-editor/fresh-editor

Using cargo-binstall

To install the binary directly without compiling (much faster than crates.io):

First, install cargo-binstall if you haven't already

cargo install cargo-binstall

Then install fresh

cargo binstall fresh-editor

Nix flakes

Run without installing:

nix run github:sinelaw/fresh

Or install to your profile:

nix profile install github:sinelaw/fresh

From crates.io

cargo install fresh-editor

From source

git clone https://github.com/sinelaw/fresh.git
cd fresh
cargo build --release
./target/release/fresh [file]

Documentation

License

Copyright (c) Noam Lewis

This project is licensed under the GNU General Public License v2.0 (GPL-2.0).