---
title: Getting Started
---

## Installation

### From crates.io (Recommended)

Install panache with Cargo:

```bash
cargo install panache
```

### Pre-built Binaries

Download platform-specific binaries from the [releases
page](https://github.com/jolars/panache/releases):

- **Linux**: x86_64 and ARM64 (available as `.deb`, `.rpm`, or `.tar.gz`)
- **macOS**: Intel and Apple Silicon (`.tar.gz`)
- **Windows**: x86_64 (`.zip`)

#### Debian/Ubuntu

```bash
wget https://github.com/jolars/panache/releases/latest/download/panache_<VERSION>_amd64.deb
sudo dpkg -i panache_*.deb
```

#### Fedora/RHEL/openSUSE

```bash
wget https://github.com/jolars/panache/releases/latest/download/panache-<VERSION>.x86_64.rpm
sudo rpm -i panache-*.rpm
```

### From Source

Clone the repository and build:

```bash
git clone https://github.com/jolars/panache.git
cd panache
cargo install --path .
```

### Verify Installation

Check that panache is installed correctly:

```bash
panache --version
```

## Basic Usage

### Format a File

Format a Quarto or Markdown document to stdout:

```bash
panache format document.qmd
```

Format a file in place:

```bash
panache format document.qmd
```

### Format from stdin

Pipe content through panache:

```bash
cat document.qmd | panache format
```

Or use input redirection:

```bash
panache format < document.qmd
```

### Check Formatting

Check if a file is already formatted (exits with non-zero code if changes
needed):

```bash
panache format --check document.qmd
```

This is useful in CI/CD pipelines:

```bash
# Check all Quarto files
find . -name "*.qmd" -exec panache format --check {} \;
```

## Configuration

panache looks for configuration files in this order:

1. Explicit `--config` path
2. `.panache.toml` or `panache.toml` in current/parent directories
3. `~/.config/panache/config.toml` (XDG config directory)
4. Built-in defaults

### Create a Config File

Create `.panache.toml` in your project root:

```toml
# Basic configuration
flavor = "quarto"      # Options: pandoc, quarto, rmarkdown, gfm, commonmark
line_width = 80        # Characters per line
wrap = "reflow"        # Options: reflow, preserve
blank_lines = "collapse"  # Options: collapse, preserve
```

### Use a Custom Config

Specify a config file explicitly:

```bash
panache format --config custom.toml document.qmd
```

See the [Configuration](configuration.qmd) guide for all options.

## Getting Help

- **GitHub Issues**:
  [github.com/jolars/panache/issues](https://github.com/jolars/panache/issues)
- **Discussions**:
  [github.com/jolars/panache/discussions](https://github.com/jolars/panache/discussions)
