- Setup Node.js and Express backend
- Configure environment variables with dotenv
- Connect to MySQL database
- Setup Sequelize ORM
- Setup React frontend with vite.
- Configure Tailwind CSS with shadcn
- Install and setup Lucide icons
- Create basic route placeholders (backend and frontend)
- Define User and Role models
- Define Lead and LeadStatus models
- Define Activity model
- Define Task model
- Implement model associations and constraints
- Create database sync script
- Add role seeding script (rep, admin)
- Write model validation tests
- Backend: Implement JWT authentication routes
- Backend: Create auth middleware for route protection
- Frontend: Build login page UI
- Frontend: Implement authentication state management
- Frontend: Create protected route wrapper
- Backend: Create endpoints for dashboard metrics
- Backend: Implement task listing API
- Backend: Create lead status aggregation API
- Frontend: Build layout shell with navbar and sidebar
- Frontend: Configure Shadcn if not available
- Frontend: Implement Sales Rep dashboard Using ShadCN
- Frontend: Create "My Tasks" component
- Frontend: Create "Leads by Status" chart
- Frontend: Create "Daily Activities" chart
- Backend: Implement CRUD API for leads
- Backend: Create lead status update route with validation rules
- Backend: Create lead filtering and search API
- Frontend: Build leads table UI with filtering/searching
- Frontend: Create lead profile view
- Frontend: Implement contact info section
- Frontend: Build status update dropdown with validation
- Frontend: Create notes section
- Backend: Create activity logging API
- Backend: Implement activity retrieval by lead
- Frontend: Build activity log tab in lead profile
- Frontend: Create activity form modal
- Frontend: Implement activity history display
- Backend: Create task creation and assignment API
- Backend: Implement task listing and filtering
- Frontend: Build task form component
- Frontend: Create task panel in lead profile
- Frontend: Implement task display on dashboard
- Backend: Integrate OpenAI
- Backend: Implement Deal Coach AI endpoint
- Backend: Create Customer Persona Builder endpoint
- Backend: Build Objection Handler endpoint
- Backend: Develop Win-Loss Explainer endpoint
- Frontend: Create AI panels in lead profile
- Frontend: Implement AI response display components
- Frontend: Add fallback states for AI failures
- Frontend: Integrate the AI Components in our user flow
- Backend: Create lead assignment API
- Backend: Implement reporting endpoints
- Frontend: Build Sales Admin dashboard
- Frontend: Create lead assignment controls
- Frontend: Implement Reports page
- Frontend: Build conversion funnel chart
- Frontend: Create "Converted leads by rep" component
- Backend: Add CSV upload support for bulk leads
- Frontend: Implement CSV upload UI
- Frontend: Add confirmation modals for destructive actions
- Frontend: Create toast notifications system
- Frontend: Add loading skeletons for async content
- Test end-to-end flows
- Fix UI issues and polish design