Skip to main content

Prerequisites

Required Tools

1

Install Node.js 18+

Download from nodejs.org or use a version manager:
macOS/Linux (nvm)
nvm install 18
nvm use 18
Windows (nvm-windows)
nvm install 18
nvm use 18
2

Install pnpm 10.28.2

Fast, disk-efficient package manager:
npm install -g pnpm@10.28.2
Verify installation:
pnpm --version
# Should output: 10.28.2
3

Install Rust (latest stable)

Install via rustup:
macOS/Linux
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Windows
# Download and run rustup-init.exe from https://rustup.rs/
Verify installation:
rustc --version
cargo --version
4

Install Tauri system dependencies

# Install Xcode Command Line Tools
xcode-select --install

Clone Repository

git clone https://github.com/YourOrg/Glyph.git
cd Glyph

Install Dependencies

1

Install frontend dependencies

pnpm install
This installs all packages from package.json.
2

Install Rust dependencies

Rust dependencies are automatically downloaded during first build.To verify Rust setup:
cd src-tauri
cargo check

Editor Setup

Install recommended extensions:
.vscode/extensions.json
{
  "recommendations": [
    "rust-lang.rust-analyzer",      // Rust language support
    "tauri-apps.tauri-vscode",      // Tauri tooling
    "biomejs.biome",                // Linting + formatting
    "bradlc.vscode-tailwindcss"    // Tailwind IntelliSense
  ]
}

Settings

.vscode/settings.json
{
  "editor.defaultFormatter": "biomejs.biome",
  "editor.formatOnSave": true,
  "editor.codeActionsOnSave": {
    "quickfix.biome": "explicit",
    "source.organizeImports.biome": "explicit"
  },
  "[rust]": {
    "editor.defaultFormatter": "rust-lang.rust-analyzer",
    "editor.formatOnSave": true
  },
  "rust-analyzer.check.command": "clippy"
}

Environment Variables

Optional: AI Provider Keys

Create .env in project root for development API keys:
.env
# OpenAI
OPENAI_API_KEY=sk-...

# Anthropic
ANTHROPIC_API_KEY=sk-ant-...

# Google Gemini
GEMINI_API_KEY=...
These are optional. Glyph stores API keys in the user’s space via the settings UI. .env is only for testing during development.

Verify Setup

Run these commands to verify everything is working:
1

Frontend typecheck

pnpm build
# Should complete without errors
2

Rust typecheck

cd src-tauri
cargo check
# Should complete without errors
3

Linting

pnpm check
# Should pass all Biome checks
4

Tests

pnpm test
# Should pass all Vitest tests

Running the App

Development Mode

Hot Reload Behavior

  • Frontend changes (TypeScript/React/CSS): Instant HMR
  • Rust changes: Full recompile (~5-30s depending on changes)

Troubleshooting

”pnpm: command not found"

npm install -g pnpm

"rustc: command not found”

Restart terminal after installing Rust, or run:
source $HOME/.cargo/env

Tauri dev fails with “webkit2gtk not found” (Linux)

sudo apt install libwebkit2gtk-4.1-dev

“error: linker cc not found” (Linux)

sudo apt install build-essential

macOS: “xcrun: error: invalid active developer path”

xcode-select --install

Windows: “error: the cargo binary is missing”

Ensure %USERPROFILE%\.cargo\bin is in your PATH. Restart terminal after installing Rust.

pnpm install fails with EACCES

# Fix npm global permissions
sudo chown -R $(whoami) ~/.npm
sudo chown -R $(whoami) /usr/local/lib/node_modules

Biome errors in VS Code

Ensure Biome extension is installed and enabled:
code --install-extension biomejs.biome

Next Steps

Building

Learn how to build production releases

Testing

Run tests and write new ones

Architecture

Understand the codebase structure

Tauri Commands

Learn IPC communication