Prerequisites
Before you begin, ensure you have the following installed:- Node.js 18+ and npm
- Python 3.8+
- Git
- A Supabase account (free tier works)
- API keys for:
- Anthropic Claude (for AI features)
- OpenAI (optional, for additional AI capabilities)
- Composio (for OAuth integrations)
Step 1: Clone the Repository
Step 2: Set Up Backend
Install Python Dependencies
Tip: Consider using a virtual environment to isolate dependencies:
Configure Environment Variables
Create a.env file in the zarna-backend directory:
Start the Backend Server
Verify: Navigate to http://localhost:8000/docs to see the interactive API documentation.
Step 3: Set Up Frontend
Open a new terminal window/tab.Install Node Dependencies
Configure Environment Variables
Create a.env.local file in the zarna-frontend directory:
Start the Frontend Server
Verify: Navigate to http://localhost:3000 to see the Zarna application.
Step 4: Set Up Supabase Database
Create Database Tables
Zarna requires several database tables for CRM, files, users, and integrations.- Go to your Supabase project dashboard
- Navigate to SQL Editor
- Run the initialization scripts located in
/zarna-backend/supabase/migrations/
Enable Row Level Security (RLS)
For production deployments, enable RLS policies on your tables:Step 5: Verify Installation
Test Backend Health
Test Frontend Connection
- Open http://localhost:3000
- You should see the login page
- Create an account or log in
- You should be redirected to the dashboard
Test API Integration
From the frontend, try:- Creating a new company
- Uploading a document
- Running a search query
Next Steps
Explore Features
Learn about CRM, reports, and sourcing features
Set Up Integrations
Connect Gmail, Drive, SharePoint, and other services
API Reference
Explore the complete API documentation
Architecture Guide
Understand how Zarna works under the hood
Common Issues
Port 8000 already in use
Port 8000 already in use
Change the Don’t forget to update
PORT in your .env file:NEXT_PUBLIC_API_URL in the frontend!Missing Python packages
Missing Python packages
Ensure you’re in the correct directory and virtual environment:
Supabase connection error
Supabase connection error
Verify your
SUPABASE_URL and SUPABASE_KEY are correct. The key should be the service role key, not the anon key.npm install fails
npm install fails
Try deleting
node_modules and package-lock.json:API calls fail with CORS error
API calls fail with CORS error
Ensure the backend is running on
localhost:8000 and the frontend on localhost:3000. The backend CORS configuration allows these origins.Development Workflow
Now that you’re set up, here’s the typical development workflow:- Start backend:
cd zarna-backend/api && python run.py - Start frontend:
cd zarna-frontend && npm run dev - Make changes: Edit code in your IDE
- Hot reload: Both servers auto-reload on changes
- Test: Use the frontend UI or API docs at
/docs
Ready to Build?
Your Zarna development environment is ready! Start building amazing features for private equity workflows.Need help?
Contact our team if you encounter any issues.
