Skip to content

Installation & Setup

This guide walks you through setting up OpenZess from scratch on a Windows machine.

Prerequisites

Before starting, ensure you have the following installed:

bash
# Check WSL
wsl --status

# Check Node.js
node --version  # Should be v18+

# Check Python (inside WSL)
wsl -d Debian bash -c "python3 --version"  # Should be 3.10+

TIP

If you don't have WSL installed, run wsl --install -d Debian in an elevated PowerShell terminal and restart your machine.

Step 1: Clone the Repository

bash
git clone https://github.com/rosdebbu/openzess.git
cd openzess

Step 2: Configure Environment Variables

Create a .env file in the project root:

env
# Database (Neon PostgreSQL — get a free instance at neon.tech)
DATABASE_URL=postgresql://neondb_owner:YOUR_PASSWORD@YOUR_HOST.neon.tech/neondb?sslmode=require

# Optional: Stitch MCP API Key for design generation
STITCH_API_KEY=YOUR_STITCH_KEY
VITE_STITCH_API_KEY=YOUR_STITCH_KEY

WARNING

Never commit your .env file to Git. It contains sensitive credentials.

Step 3: Boot the System

OpenZess provides a single startup script that handles everything:

bash
wsl -d Debian bash
cd /mnt/c/Users/YOUR_USER/path/to/openzess
bash start_wsl.sh

What start_wsl.sh does automatically:

  1. Launches Xvfb — An invisible X11 virtual display on :100
  2. Starts Fluxbox — A lightweight window manager attached to the virtual display
  3. Installs Python dependencies — Including psycopg2-binary for PostgreSQL
  4. Boots FastAPI backend — On http://localhost:8000
  5. Installs Node modules — If node_modules doesn't exist
  6. Starts Vite frontend — On http://localhost:5173

Step 4: Access OpenZess

Open your browser and navigate to:

http://localhost:5173

You'll see the Welcome screen where you can select your LLM provider and enter your API key.

Supported LLM Providers

ProviderModelAPI Key Format
Google Geminigemini-2.5-flashStandard Gemini key
OpenAIgpt-4o-minisk-...
Anthropicclaude-3-5-sonnetsk-ant-...
Groqllama-3.3-70bgsk_...
DeepSeekdeepseek-chatDeepSeek or OpenRouter key
Qwenqwen-2.5-72bOpenRouter key
GLMglm-4OpenRouter key
Kimimoonshot-v1-8kOpenRouter key
Ollamallama3.2No key needed (local)

INFO

All providers are routed through LiteLLM, which normalizes the API interface. You can switch providers at any time from the Settings panel.

Released under the MIT License.