💡 Inspiration

As a CSE student, I've seen many of my classmates struggle with STEM subjects — not because they aren't smart, but because they don't have access to personalized help. Textbooks are boring, YouTube videos are generic, and private tutors are expensive. I wanted to build something that gives every student their own AI tutor — one that understands their grade level and answers their specific doubts.

🔨 How I Built It

STEMate is a full stack MERN application:

  • Frontend — Built with React.js, using React Router for navigation and Axios for API calls. I used React Markdown to render AI responses beautifully.
  • Backend — Node.js and Express.js handle all API routes for authentication and AI features.
  • Database — MongoDB with Mongoose stores user accounts and chat history.
  • AI — Groq API with LLaMA 3.3 70B model powers all AI features including topic explanations, quiz generation, doubt solving and study roadmaps.
  • Auth — bcrypt for secure password hashing.

The app has two servers running simultaneously — React on port 3000 and Express on port 5000, communicating via REST APIs.

📚 What I Learned

  • Building a complete MERN stack application from scratch
  • Integrating AI APIs into a real web application
  • Managing state in React with useState and useEffect
  • Designing grade-adaptive AI prompts for different student levels
  • Handling full conversation history for multi-turn AI chat

🚧 Challenges I Faced

  • AI response formatting — Getting the AI to return clean, well-structured responses took careful prompt engineering. I used React Markdown to render the responses properly.
  • Grade-based prompting — Making the AI truly adapt its explanation style for a 6th grader vs a 12th grader required fine-tuning the prompts.
  • Chat history — Implementing save and delete functionality while keeping the conversation context intact was tricky but rewarding.
  • Dark/Light mode — Making all components respect the theme using CSS variables across the entire app took careful planning.

🎯 What's Next

  • Mobile app version
  • Support for more subjects beyond STEM
  • Teacher dashboard to assign topics to students
  • Offline mode for students with limited internet access

Built With

Share this project:

Updates