Docs / Getting started / Quickstart

RYZE Docs

A local-first guide for setup, privacy, AI controls, and technical reference.

Install targets

macOS · 12+
Universal binary · DMG
Windows · 10+
x64 · MSI
Linux · Ubuntu 22.04+
AppImage · deb · rpm
Build from source
git clone · npm install · npm run dev

OAuth callbacks use loopback (`127.0.0.1`), and tokens stay on-device.

Quickstart

Install RYZE, connect a Microsoft account, and read your first message in under two minutes.

Use this page as the end-to-end setup flow if you are new to the project.

  • Install from the latest release for your platform
  • Connect one account with OAuth or app-password IMAP
  • Wait for initial sync and open your first thread

Install

RYZE ships signed builds for macOS, Windows, and Linux.

For development, clone the repo and run the local app build pipeline.

git clone https://github.com/your-org/ryze-mail.git
cd ryze-mail
npm install
npm run dev

Connect an account

Microsoft 365 and Outlook use OAuth2. RYZE opens your browser and waits for a local callback.

IMAP providers can be configured with app passwords and standard host/port settings.

ryze --account add
# Pick provider and complete auth in browser

Keyboard shortcuts

Default shortcuts are tuned for triage speed and reading flow.

  • j / k: next and previous thread
  • o: open selected thread
  • e: archive thread
  • r: reply
  • /: focus search

Where your mail lives

By default, RYZE stores mail in a local SQLite database under your user profile.

No remote RYZE backend exists, and no inbox copy is synced to vendor servers by RYZE itself.

  • macOS: ~/Library/Application Support/ryze/db.sqlite
  • Linux: ~/.config/ryze/db.sqlite
  • Windows: %APPDATA%\ryze\db.sqlite

Encryption at rest

RYZE uses SQLCipher for database encryption at rest.

The encryption key is stored in OS-native key storage (Keychain, Credential Manager, or libsecret).

file ~/.ryze/db.sqlite
# Should not show plain SQLite header

Backups & restore

Backup by copying the encrypted DB file and exporting account settings.

Restore by placing the DB in the expected path and re-linking credentials in OS key storage.

Verify the binary

Release artifacts include SHA256 checksums and signed tags.

Compare local checksums with published values before first run.

shasum -a 256 ryze-macos.dmg
# compare with checksums.txt

Setting up Gemini

AI features are opt-in. Paste your Gemini API key in Settings -> AI & keys.

Keys are stored locally in OS key storage and are not synced by RYZE.

What gets sent where

Only the thread content needed for the action is sent to the configured model provider.

RYZE does not proxy or log those requests on any RYZE-owned server.

tcpdump -i any port 443
# trigger summary and inspect destination host

Disabling AI

Disable AI globally in settings or remove the stored API key to hard-stop requests.

When disabled, all AI actions are hidden from the UI and command palette.

CLI flags

Common launch-time flags for local testing and diagnostics.

  • --account add
  • --reset-onboarding
  • --profile <name>
  • --verbose

Config file

Runtime config is loaded from your profile directory and merged with defaults.

Environment variables can override selected fields for local development.

Database schema

Core tables include accounts, threads, messages, attachments, and sync cursors.

Indexes are tuned for thread list reads, search, and incremental sync updates.

Architecture

The app uses a local-first architecture: UI, sync engine, and data store all run on the client machine.

Provider adapters normalize message and folder models into one local schema.

Contributing

Create a feature branch, run tests, and open a PR with a focused scope.

Changes touching sync, storage, or auth should include targeted tests and migration notes when needed.

Changelog

Release notes track user-visible changes, fixes, and migration notes.

Each entry should include version, date, and compatibility notes.

License

RYZE is open-source and licensed under the repository license file.

Review third-party notices before distributing modified builds.