Get the platform running on your machine in a few steps. You need Node.js, MongoDB, and Zerodha Kite Connect API credentials for full broker functionality.

Prerequisites

Before you begin, ensure you have:
  • Node.js 18+ and npm
  • Yarn (recommended for the frontend) or npm
  • MongoDB running locally or a remote connection string
  • Zerodha Kite Connect API key and secret (for live trading)
  • Two terminal windows — one for backend, one for frontend
The backend and frontend are separate git repositories. Clone or open each folder independently and run install commands in both.

Local development

1

Start MongoDB

Ensure MongoDB is running and note your connection string. You will set this as MONGO_URI in the backend .env file.
2

Install and run the backend

From the nifty_fifty_bank_nifty_NodeJS folder:
The API starts on port 5000 by default (PORT env). Nodemon watches for file changes during development.
3

Install and run the frontend

In a separate terminal, from the nifty_fifty_bank_nifty_ReactJS folder:
Vite serves the React dashboard. Open the URL shown in the terminal (typically http://localhost:5173).
4

Configure environment variables

Backend (.env in nifty_fifty_bank_nifty_NodeJS):Frontend (.env in nifty_fifty_bank_nifty_ReactJS):
VITE_APP_BASEURL must include the trailing /api/ path and match the backend port.
5

Log in to the dashboard

Open the frontend URL in your browser and sign in with an admin account.
  • If no admin exists yet, use the create-admin script to seed one.
  • MFA is supported if enabled on the user account.
  • On success, the JWT is stored in the frontend and attached to all API requests.
6

Connect Zerodha

After logging in as admin, click Login to Zerodha in the dashboard header.This opens ${VITE_APP_BASEURL}zerodha/login in a new tab and completes the Kite OAuth flow. On success, the access token is saved in MongoDB and the backend starts the Kite WebSocket for live ticks.
In production, a daily 6 AM IST cron job refreshes the Zerodha token automatically. See Zerodha daily refresh for details.
7

Configure index settings

Navigate to Settings (/settings) as admin:
  1. Add or edit an index configuration (symbol, segment, recurring buy flags, trailing sell parameters).
  2. Save the settings — they are stored in MongoDB as IndexSetting documents.
  3. Return to the Dashboard (/dashboard) and select the index tab.
  4. Start recurring buy for the desired segment (cash, futures, or options).
Live ticks and order updates stream to the dashboard via Socket.io once Zerodha is connected.

Verify everything works

Enable dummy mode in global settings to test strategy logic without placing live broker orders. See Dummy mode.

Next steps