A real-time AI-powered recruitment platform with three main modules:
- Virtual Recruiter - Voice-based AI recruiter for real-time phone calls
- AI Interviewer - Automated interview system with feedback generation
- AI Recruiter - Resume parsing and candidate matching
Toptal-AI-MVP/
├── client/ # Frontend React application
│ ├── public/ # Static files
│ ├── src/ # Source code
│ │ ├── assets/ # Images, fonts, etc.
│ │ ├── components/ # Reusable React components
│ │ ├── context/ # React context providers
│ │ ├── modules/ # Feature-specific modules
│ │ ├── pages/ # Page components
│ │ ├── services/ # API services
│ │ ├── styles/ # CSS and styling files
│ │ ├── App.jsx # Main App component
│ │ ├── App.css # App-specific styles
│ │ ├── index.css # Global styles
│ │ └── main.jsx # Entry point
│ ├── package.json # Frontend dependencies
│ ├── vite.config.js # Vite configuration
│ └── eslint.config.js # ESLint configuration
│
├── server/ # Backend Node.js application
│ ├── controllers/ # Route controllers
│ ├── middleware/ # Express middleware
│ ├── prisma/ # Database schema and migrations
│ ├── routes/ # API routes
│ ├── services/ # Business logic
│ ├── utils/ # Utility functions
│ ├── index.js # Server entry point
│ └── package.json # Backend dependencies
│
└── README.md # Project documentation
- Node.js (v16 or higher)
- PostgreSQL
- Twilio Account
- Google Cloud Account
- Firebase Account
- Clone the repository:
git clone https://github.com/saadakhtr29/Toptal-AI-MVP.git
cd toptal-ai-mvp- Install dependencies:
# Install server dependencies
cd server
npm install
# Install client dependencies
cd ../client
npm install- Set up environment variables:
- Copy
.env.exampleto.envin both client and server directories - Fill in the required environment variables
- Set up the database:
cd server
npx prisma migrate dev- Start the development servers:
# Start server (from server directory)
npm run dev
# Start client (from client directory)
npm run dev- Real-time voice calls with AI
- Speech-to-text and text-to-speech conversion
- Conversation memory and context management
- Role-based interview questions
- Real-time answer evaluation
- PDF report generation
- Resume parsing and skill extraction
- Candidate matching
- Automated outreach message generation
POST /api/twilio/voice- Handle incoming voice callsPOST /api/twilio/stream- Handle media streamsPOST /api/calls/start- Start an outbound callGET /api/calls/status/:callId- Get call status
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.