A powerful AI-powered Call assistant that assists users in learning and generating personalized learning paths based on their goals, skills, and preferences. Converse with the AI to get help with your learning and get a personalized learning path.
- 🤖 AI-Powered Call Assistant
- 📊 Personalized Learning Paths
- 🎯 Goal-Oriented Planning
- ⏱️ Time Management
- 📚 Resource Curation
- Frontend: Next.js, TypeScript, Tailwind CSS
- Backend: Convex
- AI: Google Gemini
- Authentication: Clerk
- UI Components: Shadcn UI
- Icons: Lucide Icons
- Node.js (v18 or higher)
- npm or yarn
- Convex account
- Google Gemini API key
- Clerk account
- Clone the repository:
git clone https://github.com/yashksaini-coder/100xdevs-coder-trainer.git
cd 100xdevs-coder-trainer- Install dependencies:
npm install
# or
yarn install- Set up environment variables:
Create a
.env.localfile in the root directory with the following variables:
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key
CLERK_SECRET_KEY=your_clerk_secret_key
GEMINI_API_KEY=your_gemini_api_key
NEXT_PUBLIC_CONVEX_URL=your_convex_url- Initialize Convex:
npx convex dev- Start the development server:
npm run dev
# or
yarn devsrc/
├── app/ # Next.js app directory
│ ├── profile/ # Profile page components
│ ├── generate-roadmap/ # Generate roadmap page components
│ ├── guide/ # Guide page components
│ └── ... # Other pages
├── components/ # Reusable components
│ ├── ui/ # Shadcn UI components
│ └── ... # Other components
├── convex/ # Backend functions
│ ├── http.ts # HTTP endpoints
│ ├── roadmaps.ts # Roadmap mutations/queries
│ ├── schema.ts # Database schema
│ └── users.ts # User-related functions
└── lib/ # Utility functions- Endpoint:
/vapi/generate-roadmap - Method: POST
- Description: Generates a personalized learning roadmap based on user input
- Request Body:
{
"Goal": "string",
"Skill": "beginner | intermediate | advanced",
"Time": "<2h | 2-5h | 5-10h | 10+h",
"Interests": "string[]",
"Deadline": "string",
"Constraints": "string[]",
"Preferences": "string[]",
"Language": "string",
"Status": "new | in_progress | completed",
"user_id": "string"
}Each roadmap includes:
- Learning goals
- Skill level assessment
- Time commitment
- Areas of interest
- Learning constraints
- Preferences
- Milestones
- Success metrics
- Estimated completion time
- 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
- Convex for the backend infrastructure
- Google Gemini for AI capabilities
- Clerk for authentication
- Shadcn UI for UI components
- Lucide Icons for icons
🌟 If you find this project helpful, please give it a star on GitHub! 🌟

