TradeSync is a platform that connects multiple prop firm accounts into a single interface, providing unified analytics, equity tracking, and account oversight.
trade-sync/
├── frontend/ # Next.js frontend application
├── backend/ # Go backend API
└── README.md
- Unified Dashboard: View all your prop firm accounts in one place
- Real-time Stats: Monitor total balance, equity, P&L, and more
- Account Overview: Detailed table with account information and performance metrics
- Secure Auth: Email/password login with JWT-based sessions and TOTP 2FA
- Responsive Design: Works seamlessly on desktop and mobile devices
- Modern Tech Stack: Built with Next.js and Go with Chi router
- Next.js - Latest Next.js version
- TypeScript - Type-safe JavaScript
- Tailwind CSS - Utility-first CSS framework
- Go - High-performance backend language
- Chi - Lightweight, idiomatic router
- CORS - Cross-origin resource sharing support
- Node.js 20+ and npm
- Go 1.21+
-
Navigate to the backend directory:
cd backend -
Copy the example environment file (optional):
cp .env.example .env
-
Install dependencies (if needed):
go mod download
-
Run the server:
go run cmd/server/main.go
The API server will start on
http://localhost:8080
-
Navigate to the frontend directory:
cd frontend -
Copy the example environment file:
cp .env.example .env.local
-
Install dependencies:
npm install
-
Run the development server:
npm run dev
The application will be available at
http://localhost:3000
Use the included startup script to run both services simultaneously:
chmod +x start.sh
./start.shThis will start both the backend and frontend services. Press Ctrl+C to stop all services.
You can also run both services manually in separate terminal windows:
Terminal 1 (Backend):
cd backend
go run cmd/server/main.goTerminal 2 (Frontend):
cd frontend
npm run devNEXT_PUBLIC_API_URL=http://localhost:8080/apiPORT=8080
JWT_SECRET=change-me
TOTP_ISSUER=TradeSync
JWT_TTL_HOURS=24- Build:
pnpm run build - Start production:
pnpm start - Lint:
pnpm run lint
- Build:
go build -o bin/server cmd/server/main.go - Run:
./bin/server - Format:
go fmt ./... - Test:
go test ./...
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License.