> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/sinelaw/fresh/llms.txt
> Use this file to discover all available pages before exploring further.

# Installation

> Install Fresh using your preferred package manager on macOS, Linux, Windows, or build from source

## Quick Install

The fastest way to install Fresh is using the automatic installer that detects the best method for your system:

```bash theme={null}
curl https://raw.githubusercontent.com/sinelaw/fresh/refs/heads/master/scripts/install.sh | sh
```

Or choose your preferred installation method below.

## macOS

### Homebrew (Recommended)

The recommended way to install Fresh on macOS:

<Steps>
  <Step title="Add the Fresh tap">
    ```bash theme={null}
    brew tap sinelaw/fresh
    ```
  </Step>

  <Step title="Install Fresh">
    ```bash theme={null}
    brew install fresh-editor
    ```
  </Step>

  <Step title="Verify installation">
    ```bash theme={null}
    fresh --version
    ```
  </Step>
</Steps>

<Note>
  **macOS Terminal Tips**: For the best experience on macOS, see [macOS Terminal Configuration](https://getfresh.dev/docs/configuration/keyboard#macos-terminal-tips) for recommended terminal settings and keyboard shortcuts.
</Note>

## Windows

### Winget (Recommended)

Install Fresh using Windows Package Manager:

```bash theme={null}
winget install fresh-editor
```

### npm

Alternatively, Windows users can install via npm:

```bash theme={null}
npm install -g @fresh-editor/fresh-editor
```

Or try without installing:

```bash theme={null}
npx @fresh-editor/fresh-editor
```

## Linux

### Arch Linux (AUR)

<Tabs>
  <Tab title="Binary Package (Recommended)">
    Using an AUR helper like `yay` or `paru`:

    ```bash theme={null}
    yay -S fresh-editor-bin
    ```

    Or manually:

    ```bash theme={null}
    git clone https://aur.archlinux.org/fresh-editor-bin.git
    cd fresh-editor-bin
    makepkg --syncdeps --install
    ```

    <Tip>The binary package is faster to install as it downloads pre-built binaries instead of compiling from source.</Tip>
  </Tab>

  <Tab title="Build from Source">
    Using an AUR helper:

    ```bash theme={null}
    yay -S fresh-editor
    ```

    Or manually:

    ```bash theme={null}
    git clone https://aur.archlinux.org/fresh-editor.git
    cd fresh-editor
    makepkg --syncdeps --install
    ```
  </Tab>
</Tabs>

### Debian/Ubuntu (.deb)

Download and install the latest release:

```bash theme={null}
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](https://github.com/sinelaw/fresh/releases).

### Fedora/RHEL/openSUSE (.rpm)

Download and install the latest release:

```bash theme={null}
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 -U fresh-editor.rpm
```

Or download the `.rpm` file manually from the [releases page](https://github.com/sinelaw/fresh/releases).

### Bazzite/Bluefin/Aurora Linux

These distributions support Homebrew:

```bash theme={null}
brew tap sinelaw/fresh
brew install fresh-editor
```

### FreeBSD

Install from ports or using pkg:

```bash theme={null}
pkg install fresh
```

For more information, see [FreshPorts](https://www.freshports.org/editors/fresh).

### AppImage (Universal Linux)

Download the `.AppImage` file from the [releases page](https://github.com/sinelaw/fresh/releases):

<Steps>
  <Step title="Download and make executable">
    ```bash theme={null}
    chmod +x fresh-editor-VERSION-x86_64.AppImage
    ```
  </Step>

  <Step title="Run directly (slower startup)">
    ```bash theme={null}
    ./fresh-editor-VERSION-x86_64.AppImage
    ```
  </Step>
</Steps>

<Tip>
  **For faster startup** (recommended): Extract the AppImage instead of running it directly. This avoids the FUSE mount overhead on each launch (\~10x faster):

  ```bash theme={null}
  ./fresh-editor-VERSION-x86_64.AppImage --appimage-extract
  mkdir -p ~/.local/share/fresh-editor ~/.local/bin
  mv squashfs-root/* ~/.local/share/fresh-editor/
  ln -sf ~/.local/share/fresh-editor/usr/bin/fresh ~/.local/bin/fresh
  ```

  Ensure `~/.local/bin` is in your PATH.
</Tip>

Available for x86\_64 and aarch64 architectures.

### Flatpak

Download the `.flatpak` bundle from the [releases page](https://github.com/sinelaw/fresh/releases):

```bash theme={null}
flatpak install --user fresh-editor-VERSION-x86_64.flatpak
flatpak run io.github.sinelaw.fresh
```

See the [flatpak README](https://github.com/sinelaw/fresh/blob/master/flatpak/README.md) for building from source.

## Cross-Platform

### npm / npx

Install globally via npm:

```bash theme={null}
npm install -g @fresh-editor/fresh-editor
```

Or try without installing:

```bash theme={null}
npx @fresh-editor/fresh-editor
```

### Pre-built Binaries

Download pre-built binaries for your platform from the [releases page](https://github.com/sinelaw/fresh/releases).

Available for:

* macOS (Intel and Apple Silicon)
* Linux (x86\_64, aarch64)
* Windows (x86\_64)

## Rust Users

### cargo-binstall (Fast)

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

<Steps>
  <Step title="Install cargo-binstall (if not already installed)">
    ```bash theme={null}
    cargo install cargo-binstall
    ```
  </Step>

  <Step title="Install Fresh">
    ```bash theme={null}
    cargo binstall fresh-editor
    ```
  </Step>
</Steps>

### From crates.io

Build from source using Cargo:

```bash theme={null}
cargo install --locked fresh-editor
```

<Warning>
  This method compiles Fresh from source, which can take several minutes depending on your system.
</Warning>

## Nix

### Nix Flakes

Run without installing:

```bash theme={null}
nix run github:sinelaw/fresh
```

Or install to your profile:

```bash theme={null}
nix profile add github:sinelaw/fresh
```

## Build from Source

For developers or those who want the latest development version:

<Steps>
  <Step title="Clone the repository">
    ```bash theme={null}
    git clone https://github.com/sinelaw/fresh.git
    cd fresh
    ```
  </Step>

  <Step title="Build with Cargo">
    ```bash theme={null}
    cargo build --release
    ```
  </Step>

  <Step title="Run Fresh">
    ```bash theme={null}
    ./target/release/fresh [file]
    ```
  </Step>

  <Step title="Optional: Install to system">
    ```bash theme={null}
    cargo install --path .
    ```
  </Step>
</Steps>

## Verification

After installation, verify Fresh is working:

<CodeGroup>
  ```bash Version Check theme={null}
  fresh --version
  ```

  ```bash Open Fresh theme={null}
  fresh
  ```

  ```bash Open a File theme={null}
  fresh README.md
  ```
</CodeGroup>

You should see the Fresh version number (currently v0.2.12) when running `fresh --version`.

## Next Steps

<CardGroup cols={2}>
  <Card title="Quick Start Tutorial" icon="rocket" href="/quickstart">
    Learn the basics in 5 minutes
  </Card>

  <Card title="Configuration" icon="gear" href="/configuration/overview">
    Customize Fresh to your preferences
  </Card>

  <Card title="Features Guide" icon="sparkles" href="/features/editing">
    Explore all the features Fresh offers
  </Card>

  <Card title="Keyboard Shortcuts" icon="keyboard" href="/reference/keybindings">
    Learn essential keyboard shortcuts
  </Card>
</CardGroup>

## Troubleshooting

<AccordionGroup>
  <Accordion title="Command not found after installation">
    Ensure the installation directory is in your PATH:

    * **Homebrew**: `/usr/local/bin` (Intel Mac) or `/opt/homebrew/bin` (Apple Silicon)
    * **npm**: Check `npm config get prefix`
    * **Cargo**: `~/.cargo/bin`
    * **AppImage**: Ensure `~/.local/bin` is in your PATH

    Add to your shell profile (`.bashrc`, `.zshrc`, etc.):

    ```bash theme={null}
    export PATH="$HOME/.local/bin:$PATH"
    ```
  </Accordion>

  <Accordion title="Permission denied errors">
    If you get permission errors when running Fresh:

    ```bash theme={null}
    chmod +x /path/to/fresh
    ```
  </Accordion>

  <Accordion title="Terminal compatibility issues">
    Fresh works best with modern terminal emulators. Recommended terminals:

    * **macOS**: iTerm2, Alacritty, or built-in Terminal.app
    * **Linux**: Alacritty, Kitty, GNOME Terminal, Konsole
    * **Windows**: Windows Terminal, Alacritty

    See [Troubleshooting](/reference/troubleshooting) for more help.
  </Accordion>
</AccordionGroup>
