// Cryptographic Identity System

Your Identity Key


Questline does not use passwords. It does not use accounts. It does not send you a welcome email with a temporary link that expires in 24 hours. Instead, it generates a unique Ed25519 cryptographic keypair on first launch and uses it to sign every request to the sync server. Your private key never leaves your machine. Your public key is your identity in the realm.

This is not an SSH key — although Ed25519 is the same algorithm SSH uses, because the field has had decades to agree on the right answer. It is Questline's own identity system, stored independently of your SSH configuration, and it requires nothing from you except launching the app. The key is generated automatically. There is no command to run. There is no setup wizard. There is no confirmation email. It simply happens.

# What Questline generates on first launch

  Algorithm .... Ed25519
  Private key .. Linux   : ~/.config/questline/identity.key
               macOS   : ~/Library/Application Support/questline/identity.key
               Windows : %APPDATA%\questline\identity.key
  Public key ... displayed in the Sync screen  ← this is your identity in the realm

  Key format ... hex-encoded, 64 characters (32 bytes)
  Generated .... automatically on first launch
  Required action from you: none

I Have Never Launched Questline

Launch the app. That is it. Questline detects the absence of an identity file and generates a fresh Ed25519 keypair automatically. By the time you finish the onboarding screen, your identity exists, your public key is ready, and you have technically performed cryptography without trying.

I Have Already Launched Questline

Your identity was created on first launch and saved to:

Linux   : ~/.config/questline/identity.key
macOS   : ~/Library/Application Support/questline/identity.key
Windows: %APPDATA%\questline\identity.key

Open the Sync screen inside the app (8 from the Dashboard) to view and copy your public key — it is the 64-character hex string listed under Identity.

Sharing Your Public Key

Your public key is what other users need to invite you to a shared project. In the Sync screen, your public key is displayed and can be copied to clipboard. Share the 64-character hex string with your companion. It is safe to share. That is the entire point of a public key. The private half stays local and is never transmitted anywhere.

Inviting Someone to Fellowship

Ask your companion for their public key — they find it in their Sync screen. Open the Fellowship screen in Questline, press I to invite, paste their 64-character public key, select the project and role, and confirm. They accept on their device. The project syncs between both identities via the server from that point forward.

Working Across Devices

Questline is designed to follow you. The same character, the same Chronicle, the same projects — on Linux, macOS, and Windows, at the same time if needed. The sync engine pushes your tasks, notes, projects, journal entries, and character profile to the server automatically every few minutes. Your identity is tied to a cryptographic keypair — whoever holds that key is you to the server.

Moving to a new machine is now built into the app. On your old device press E on the Sync screen to export a Transfer Code. On the new device press I and paste it. The app backs up your database automatically at both ends, restores your identity, and pulls your full Chronicle from the server. No file managers, no terminal, no paths to remember.

Sync keeps things current day-to-day. The cloud backup (B on the Sync screen) is a full snapshot you push deliberately — useful before wiping a machine or as an extra safety net. Do both. They serve different purposes and cost almost nothing.

// First-Time Sync Setup

If you want cloud sync and backup across devices, follow these steps after installing.

Enabling Cloud Sync

  • 1Launch Questline. Complete the onboarding (choose your class, set your name). Your identity keypair is generated silently in the background.
  • 2Open the Sync screen. Your User ID and public key are displayed. No further action is needed to generate them — they already exist.
  • 3Enter the sync server URL and enable sync. Questline registers your public key with the server automatically on the next sync operation.
  • 4Press B in the Sync screen to push your first backup to the cloud. From now on, sync runs when you press S on the Dashboard.

Moving to a New Machine

  • 1Old machine: Open the Sync screen. Press S to push the latest sync data, then B to push a full cloud backup. This ensures nothing is missing on the server.
  • 2Old machine: Press E on the Sync screen — Export Profile. Questline creates a timestamped local database backup and displays a Transfer Code. Press C inside the modal to copy it to your clipboard.
  • 3New machine: Install Questline and complete onboarding. Then open the Sync screen, set the server URL, and press IRestore Identity. Paste the Transfer Code and press Enter. Your current database is backed up first, then your identity is replaced and a full sync starts automatically.
  • 4Questline pulls your Chronicle, character, tasks, notes, and shared projects from the server. Your identity on both machines is now identical — the server sees them as the same user.
# Transferring your identity to a new machine — built into the Sync screen

# ── Old machine ────────────────────────────────────────────────────────────
  [S]  Sync screen → push latest data to server
  [B]  Push a full cloud backup
  [E]  Export Profile → Questline backs up your local DB and shows a Transfer Code
  [C]  Copy Transfer Code to clipboard (inside the Export modal)

# ── New machine ────────────────────────────────────────────────────────────
  Install Questline and complete onboarding
  Open Sync screen → set server URL → [S] to register
  [I]  Restore Identity → paste Transfer Code → [Enter]

# Questline backs up the current DB, writes the new identity.key,
# triggers a full sync, and reloads your Chronicle automatically.
# Works across any OS combination — Linux, macOS, Windows.

// If Your Identity File Is Lost or Deleted

# If identity.key was deleted or the config directory was wiped:

  Questline will generate a NEW keypair on the next launch.
  Your local database (tasks, notes, journal) remains intact.

  However:
    ✗  Your new public key will NOT match your previous identity
    ✗  Fellowship invitations tied to the old key must be re-sent
    ✗  Cloud sync registration is lost — you must re-register
    ✗  Companions must invite the new identity to shared projects

# Prevention: back up the file. It is 300 bytes.
# There is no excuse. The Chronicle is unforgiving on this matter.

Back Up Your Identity

Your cryptographic identity is the only thing that cannot be regenerated from your data. Your tasks, notes, journal entries, and Chronicle can all be restored from a cloud backup. Your signing key cannot be recovered if lost — the sync server has never heard of you by any other name.

The easiest way to back it up is E on the Sync screen. Questline generates a Transfer Code you can store in a password manager or note. That code is all you need to restore your identity on any machine at any time. Keep it somewhere deliberate — before you need it, not after. The backlog will still be there when you return. Your identity may not be.

Ko-FiSponsor