Skip to content
davideagosti-devPublic

About

ZENOIDE IDE - Next-gen coding environment

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

691 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Zenoide

AI-powered cloud IDE.

Production: https://zenoide.com Production Workspace: https://app.zenoide.com

Stack

  • Frontend: Next.js 16.6.1, React 19, TypeScript, Tailwind v4, CodeMirror 6
  • Backend: PostgreSQL 16, Redis (BullMQ), Next.js API routes
  • Agent: LangGraph + PostgresSaver, Anthropic Claude API (claude-sonnet-4-6)
  • Terminal: node-pty (real PTY)
  • Auth: Auth.js v5 JWT + GitHub OAuth
  • Deploy: Fly.io (app=zenoide-app, region=lhr)

Quick Start (Local Dev)

Prerequisites

  • Node.js 20+
  • Docker & Docker Compose
  • Git

Setup

  1. Clone repository:
git clone https://github.com/yourusername/zenoide.git
cd zenoide
  1. Copy environment file:
cp .env.local.example .env.local
  1. Update .env.local:

    • AUTH_SECRET — session signing key (AUTH_SECRET=dev-secret-zenoide-local-only for local dev)
    • GITHUB_CLIENT_ID / GITHUB_CLIENT_SECRET — GitHub OAuth App credentials
    • ANTHROPIC_API_KEY — Anthropic API key for AI features
    • REDIS_URL — Redis connection (redis://localhost:6379 for local dev)
    • DATABASE_URL — Postgres connection (postgres://postgres:postgres@localhost:5433/zenoide)
    • STRIPE_SECRET_KEY — Stripe secret key (sk_test_... in dev)
    • STRIPE_WEBHOOK_SECRET — Stripe webhook secret (whsec_...)
  2. Start Docker stack:

# Windows
.\scripts\docker-dev.ps1 start

# macOS/Linux
./scripts/docker-dev.sh start
  1. Install dependencies:
npm install
  1. Run development server:
npm run dev
  1. Open http://localhost:3000

Docker Commands

.\scripts\docker-dev.ps1 start        # Start Postgres + Redis
.\scripts\docker-dev.ps1 start-full   # Start + pgAdmin
.\scripts\docker-dev.ps1 stop         # Stop all
.\scripts\docker-dev.ps1 logs         # View logs
.\scripts\docker-dev.ps1 shell        # PostgreSQL shell
.\scripts\docker-dev.ps1 backup       # Backup database
.\scripts\docker-dev.ps1 reset        # Reset database (DANGER!)

Local Services

Service URL
App http://localhost:3000
pgAdmin http://localhost:5051
PostgreSQL localhost:5433
Redis localhost:6379

pgAdmin credentials: dev@zenoide.local / admin


Testing

npm run lint              # ESLint
npm run build             # Next.js build
npx tsc --noEmit          # TypeScript check
npm run test              # Vitest (478 unit tests)
$env:E2E_TEST_MODE = "true"; npm run test:e2e  # Playwright deterministic E2E (excludes @real-agent)
# Optional LLM-on-disk agent checks (requires ANTHROPIC_API_KEY): npm run test:e2e:real-agent

Database Migrations

Run in order:

\i database/init.sql
\i database/seed.sql
\i database/add_subscription_unique.sql
\i database/add_agent_steps.sql
\i database/add_chat_tables.sql
\i database/add_embeddings.sql
\i database/add_workspace_unique.sql
\i database/alter_timeline_events.sql
\i database/add_agent_memories.sql
\i database/add_pending_patch_bundle.sql
\i database/add_teams.sql
\i database/add_user_mcp_servers.sql
\i database/add_agent_events_log.sql

LangGraph checkpoint tables are created automatically on first startup.


Production Deploy (Fly.io)

# Deploy
fly deploy -a zenoide-app

# Logs
fly logs -a zenoide-app

# Health check
curl https://zenoide-app.fly.dev/api/health

# Scale
fly scale count 2 --region lhr -a zenoide-app

Required secrets on Fly.io:

  • AUTH_SECRET, AUTH_TRUST_HOST
  • NEXTAUTH_URL, NEXT_PUBLIC_APP_URL
  • ANTHROPIC_API_KEY
  • DATABASE_URL, REDIS_URL
  • GITHUB_CLIENT_ID, GITHUB_CLIENT_SECRET
  • CLOUD_API_URL, CLOUD_API_KEY
  • STRIPE_SECRET_KEY, STRIPE_WEBHOOK_SECRET
  • ENABLE_AGENT_WORKER

CI/CD: push to main → GitHub Actions → lint + test + fly deploy


Architecture

Agent Graph (LangGraph)

planner → executor → autoVerify → verifier → (replanner | executor | END)

Agent Tools

read_file, search_code, create_file, propose_patch, run_command, run_tests, list_dir, browser_navigate, read_url, get_diagnostics

Key Features

  • Editor: CodeMirror 6, LSP (TS/JS/PHP/Python/C#/Go/Rust), ghost text, Cmd+K, split view, DiffView
  • Chat: Streaming SSE, @file/@folder/@codebase mentions, chat-to-agent handoff
  • Agent: Multi-step planning, autoVerify (lint+test after each write), patch review UI
  • Patches: Hunk-level apply/reject, multi-file bundles, rollback
  • Terminal: Real PTY via node-pty
  • Auth: GitHub OAuth + credentials, JWT sessions
  • Billing: Stripe checkout + portal, quota system (Free/Pro/Team)

About

ZENOIDE IDE - Next-gen coding environment

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages