# Getting Started

> Download, install, and make your first translation edit in under 10 minutes.

Source: https://stringlane.app/docs/getting-started
Last updated: 2026-08-19

StringLane opens your localization folder and gives you a live side-by-side view of every language. Changes write directly to your source files: no import, no export, no round trips.

This tutorial takes you from a fresh install to your first committed translation in about 10 minutes.

## Step 1: Download and install

Get the build for your platform from [stringlane.app/download](/download). StringLane runs on macOS, Windows and Linux.

### macOS

Download the `.dmg` — **Apple Silicon** for M1 and later, **Intel** for x86_64. Requires macOS 13 Ventura or later. Open the disk image, drag StringLane to your Applications folder, and launch it.

The build is signed with a Developer ID certificate and notarised by Apple, so it opens without a Gatekeeper warning.

### Windows

Download the x64 installer (`StringLane-Setup-x64.exe`) and run it. Windows 10 or 11.

The installer is not code-signed yet, so SmartScreen will warn about an unknown publisher on first run. Click **More info → Run anyway**.

### Linux

Two options:

```bash
chmod +x StringLane-x86_64.AppImage && ./StringLane-x86_64.AppImage
```

The **AppImage** runs on any distro and self-updates in place — it is the recommended option, and on Arch or Manjaro it is the only one, as there is no pacman package. The **`.deb`** suits Debian, Ubuntu and Pop!_OS, but does not auto-update: reinstall to upgrade.

Every artifact is listed with a checksum in [`SHA256SUMS`](https://dl.stringlane.app/SHA256SUMS) if you want to verify the download.

![StringLane welcome window on first launch: format pills + trust row + keyboard hints](/docs-screenshots/welcome-v2-pills.webp)

The Welcome screen shows the formats StringLane supports, ARB · `.strings` · `.xcstrings` · Android XML · i18next JSON, along with the core guarantees: **Local only · BYOK AI · No account**.

## Step 2: Open your localization folder

StringLane works directly with your project's localization files. You don't need to move anything.

**Three ways to open a project:**

1. **Drag your folder** onto the StringLane window: drop any folder that contains ARB, `.strings`, Android XML, i18next JSON, or xcstrings.
2. **⌘O** (File → Open Folder): navigate to your project root or its localization subdirectory.
3. **⌘P → Open folder…**: via the command palette.

StringLane scans the folder recursively and loads all locale files it finds. The project name (derived from the folder name) appears in the sidebar header.

## Step 3: Tour the interface

Once a project loads, you land in the unified editor: a **key sidebar** on the left + **per-key detail pane** on the right.

![Unified editor: sidebar with namespace-grouped keys and per-key detail pane in Grid mode](/docs-screenshots/detail-pane-grid.webp)

- **Sidebar** (280px, left): every key in your project, grouped by namespace (the segment before `.` or `_`). Search, filter by locale or Issues-only, and a **⌘P** Command Palette launcher at the bottom.
- **Detail pane**: the key name + chips + Grid/List toggle; below, every locale side-by-side with its value, AI translate button, and validation rail.
- **Issues panel** (right rail or bottom drawer, your choice), auto-opens when the project has any validation issues. Each row jumps you to the offending cell.
- **Status bar** (bottom): completion ring, error / warning chips, save indicator with "Saved · Ns ago" recency.

## Step 4: Edit a translation

Click any locale's value in the detail pane to edit it inline. Type your translation, then press:

- **Enter**: confirm and move to the next locale
- **Tab**: confirm and move to the next locale
- **Escape**: cancel and restore the original value
- **⌘Z**: undo changes in the current cell

The edit is saved automatically the moment you leave the cell: no Save button, no confirmation dialog. StringLane writes directly to the source file on disk; the status bar shows "Saved · just now".

## Step 5: Verify auto-save

After editing, open your localization file in any text editor (VS Code, Xcode, etc.). The change is already there. StringLane never buffers: every confirmed edit lands in the file immediately.

If you run `flutter gen-l10n` or rebuild your app right now, the new translation is live.

## Step 6: Speed up with the command palette

Press **⌘P** to open the command palette: one searchable menu for every action in the app. Type to fuzzy-search actions and keys across the project.

![Command palette with the Add key row pre-selected](/docs-screenshots/command-palette-open.webp)

The palette is the fastest path to:

- **Add key…**: create a new translation key
- **Translate all missing with AI**: one-shot fill every gap across every locale
- **Jump to key**: type a key name or value fragment to teleport
- **Toggle Issues panel**, theme switch, open Settings

See [Use the Command Palette](/docs/use-command-palette).

## What's next

- **[Use the List View editor](/docs/use-list-view)**: the unified sidebar + detail-pane surface you just saw, in depth.
- **[Set Up AI Translation in 5 Minutes](/docs/set-up-ai-translation)**: let the model fill in missing translations.
- **[Translate all missing](/docs/translate-all-missing)**: the batch flow when you have gaps across multiple locales.
- **[How to Add a New Locale](/docs/add-a-locale)**: add a language by its BCP 47 code.
- **[How to Read Validation Badges](/docs/read-validation-badges)**: understand the rail colors and loud pills.
- **[Customize keybindings](/docs/customize-keybindings)**: rebind any in-app shortcut.
- **[How to Turn Off Usage Analytics](/docs/configure-privacy)**: what StringLane sends, and the toggle that stops it.
