AI-powered trading journal and analysis platform for professional traders
Debriefly AI is a comprehensive trading journal platform that leverages artificial intelligence to analyze trading performance, identify behavioral patterns, and provide actionable insights to improve trading strategies. The platform combines advanced analytics with an intuitive interface to help traders make data-driven decisions.
- AI-Powered Analysis: Automated trade analysis using machine learning algorithms
- Behavioral Insights: Identify trading patterns and emotional triggers
- Performance Analytics: Comprehensive performance metrics and visualizations
- Trade Import: Support for multiple broker integrations and CSV imports
- Session Debriefing: Detailed post-trading session analysis
- Strategy Optimization: AI-driven strategy recommendations
- Real-time Data: Live market data integration
- Multi-Account Support: Manage multiple trading accounts
- Export Capabilities: Generate reports and export trade data
- React 18 - Modern React with hooks and functional components
- TypeScript - Type-safe JavaScript development
- Vite - Fast build tool and development server
- Tailwind CSS - Utility-first CSS framework
- shadcn/ui - High-quality React components
- Radix UI - Accessible component primitives
- React Router - Client-side routing
- React Hook Form - Form state management
- Zod - Schema validation
- Zustand - Lightweight state management
- TanStack Query - Server state management
- Recharts - Data visualization
- Supabase - Backend-as-a-Service (PostgreSQL, Auth, Edge Functions)
- AWS Lambda - Serverless computing for AI analysis
- Netlify - Frontend hosting and deployment
- Stripe - Payment processing and subscriptions
- ESLint - Code linting
- Prettier - Code formatting
- TypeScript - Static type checking
- Concurrently - Run multiple commands simultaneously
- Node.js 18+
- npm or yarn
- Supabase CLI
- Docker (for local development)
-
Clone the repository
git clone https://github.com/your-username/debriefly-ai.git cd debriefly-ai
-
Install dependencies
npm install
-
Set up environment variables
cp .env.example .env.local
Fill in your environment variables:
VITE_SUPABASE_URL=your_supabase_url VITE_SUPABASE_ANON_KEY=your_supabase_anon_key VITE_STRIPE_PUBLISHABLE_KEY=your_stripe_key
-
Start Supabase locally
supabase start
-
Run the development server
npm run dev
The application will be available at http://localhost:5173
debriefly-ai/
βββ src/
β βββ components/ # Reusable UI components
β βββ features/ # Feature-based modules
β βββ hooks/ # Custom React hooks
β βββ pages/ # Route components
β βββ store/ # State management
β βββ types/ # TypeScript type definitions
β βββ utils/ # Utility functions
βββ lambda-worker/ # AWS Lambda functions
βββ supabase/ # Database migrations and functions
βββ public/ # Static assets
Script | Description |
---|---|
npm run dev |
Start all development services (React, Supabase, Worker) |
npm run dev:react |
Start React development server only |
npm run dev:supabase |
Start Supabase locally |
npm run dev:worker |
Start Lambda worker service |
npm run build |
Build for production |
npm run preview |
Preview production build |
npm run lint |
Run ESLint |
-
Start all services
npm run dev
-
Run Edge Functions locally
supabase functions serve --env-file supabase/.env
-
Debug Edge Functions
supabase functions serve ai-analysis --env-file supabase/.env --inspect-mode brk
-
Run Lambda Worker
# Background mode docker-compose -f docker-compose.dev.yml up -d # With logs docker-compose -f docker-compose.dev.yml logs -f # Stop docker-compose -f docker-compose.dev.yml down
# Create a new migration
supabase migrations new [migration_name]
# Apply migrations
supabase db push
# Reset database
supabase db reset
The frontend is automatically deployed to Netlify on push to main branch.
Manual deployment:
npm run build
netlify deploy --prod --dir=dist
# Deploy to production
supabase link --project-ref your-project-ref
supabase db push
supabase functions deploy
cd lambda-worker
npm run deploy
# Run tests
npm test
# Run tests in watch mode
npm run test:watch
# Run tests with coverage
npm run test:coverage
The application uses Supabase Auth with the following providers:
- Email/Password
- Google OAuth
POST /api/trades
- Import trade dataGET /api/trades
- Retrieve trade historyPOST /api/analysis
- Trigger AI analysisGET /api/analysis/:id
- Get analysis results
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch
git checkout -b feature/amazing-feature
- Make your changes
- Add tests (if applicable)
- Commit your changes
git commit -m 'Add amazing feature'
- Push to the branch
git push origin feature/amazing-feature
- Open a Pull Request
- Follow the existing code style
- Use TypeScript for all new code
- Write meaningful commit messages
- Add JSDoc comments for complex functions
This project is licensed under the MIT License - see the LICENSE file for details.
- Documentation: docs.debriefly.ai
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Email: support@debriefly.ai
- Supabase for the backend infrastructure
- shadcn/ui for the component library
- Tailwind CSS for the styling framework
- Vite for the build tool
Made with β€οΈ by the Debriefly AI team