Skip to main content
For a faster start, see the Quickstart guide which covers the minimal setup. This page has the full details.

Prerequisites

ToolVersionPurpose
.NET SDK8.0+Backend
Node.js18+Frontend, admin panel
Git2.xVersion control

Clone repositories

git clone https://github.com/HarshBhanushali07/DualMind_Back.git
git clone https://github.com/HarshBhanushali07/DualMind_UI.git
git clone https://github.com/HarshBhanushali07/DualMind_Admin-UI.git

Backend

cd DualMind_Back/src/DualMind.API
Create .env:
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_SERVICE_ROLE_KEY=eyJ...service-role-key
JWT_SECRET=your-jwt-secret
GROQ_API_KEY=gsk_...your-groq-key
Run:
dotnet restore
dotnet run
Verify: curl http://localhost:5079/health Swagger UI: http://localhost:5079/swagger

Frontend

cd DualMind_UI
npm install
Edit config.js with your Supabase credentials:
window.DUALMIND_CONFIG.supabase.url = 'https://your-project.supabase.co';
window.DUALMIND_CONFIG.supabase.anonKey = 'your-anon-key';
Run: npm run dev — opens at http://localhost:8000

Admin panel

cd DualMind_Admin-UI
npm install
npm run dev
Set BACKEND_URL in wrangler.toml for local backend:
[vars]
BACKEND_URL = "http://localhost:5079"

Docker (alternative)

cd DualMind_Back
docker-compose up
Backend starts on port 8080. Set env vars in docker-compose.yml.

Verify full stack

  1. Backend: curl http://localhost:5079/health returns {"status":"healthy"}
  2. Frontend: Open http://localhost:8000, login with Google
  3. Chat: Send a prompt in the arena
  4. Admin: Open admin dev server URL