Skip to content

Yuato/MacAI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚡ MacAI Study Tool

By: Tony, Sebastian, Gurbaz, Dongyoung

McMaster AI Hackathon 2025 — AI-powered STEM study platform

Learn faster. Score higher. Built for students, by students.


🚀 Features

Feature Description Priority
🧠 Concept Quiz AI-generated MCQ quizzes from any topic, notes, or uploaded file 100%
🔍 Solution Walkthrough Step-by-step problem solutions in plain English 100%
📋 Cheat Sheet Maker Turn notes or files into organized formula sheets — downloadable as .txt or .md 50%
📅 Daily Review QotD + daily warm-up quizzes to build your streak 70%
🎯 Adaptive Quizzes Auto-targets your weak areas 20%
🏆 Leaderboard Compete with classmates via XP rankings 20%
🔥 Streak System Daily study streaks + XP rewards 20%
📁 File Upload Upload .txt, .md, .pdf, .doc, .docx, .ppt, .pptx to any tool NEW

📁 Project Structure

macai-study-tool/
├── server/
│   ├── index.js              # Express server entry point
│   ├── utils/
│   │   └── gemini.js         # Gemini AI client
│   └── routes/
│       ├── quiz.js           # Quiz generation API
│       ├── cheatsheet.js     # Cheat sheet API
│       ├── walkthrough.js    # Solution walkthrough API
│       ├── daily.js          # Daily review/QotD API
│       └── upload.js         # File upload + text extraction API
├── public/
│   ├── index.html            # Main HTML shell
│   ├── styles/
│   │   └── main.css          # Custom styles
│   └── js/
│       ├── app.js            # App initialization
│       ├── state.js          # State management + localStorage
│       ├── api.js            # API client
│       ├── ui.js             # UI utilities + page router + file helpers
│       └── pages/
│           ├── home.js       # Dashboard
│           ├── quiz.js       # Quiz page
│           ├── walkthrough.js # Walkthrough page
│           ├── cheatsheet.js  # Cheat sheet page
│           ├── daily.js       # Daily review page
│           ├── leaderboard.js # Leaderboard page
│           └── settings.js    # Settings page
├── package.json
├── .env.example
└── README.md

⚙️ Setup

1. Get a Gemini API Key

2. Install dependencies

npm install

3. Configure environment

cp .env.example .env
# Edit .env and add your Gemini API key:
# GEMINI_API_KEY=your_key_here

4. Run the app

# Development (with auto-reload)
npm run dev

# Production
npm start

5. Open in browser

http://localhost:3000

🛠 Tech Stack

  • Backend: Node.js + Express
  • AI: Google Gemini 2.5 Flash Lite (free tier)
  • Frontend: Vanilla JS + Tailwind CSS
  • Fonts: Syne + DM Sans + DM Mono
  • Storage: localStorage (client-side)
  • File Parsing: pdf-parse

📦 Dependencies

Package Purpose
express Web server
cors Cross-origin requests
dotenv Environment variables
body-parser Request body parsing
@google/genai Gemini AI SDK
pdf-parse PDF text extraction
nodemon Dev auto-reload

🎯 API Endpoints

Method Endpoint Description
POST /api/quiz/generate Generate MCQ quiz
POST /api/quiz/adaptive Adaptive quiz for weak areas
POST /api/cheatsheet/generate Generate cheat sheet
POST /api/walkthrough/solve Step-by-step solution
POST /api/walkthrough/concepts Concept dependency map
POST /api/daily/qotd Question of the Day
POST /api/daily/review Daily review quiz
POST /api/upload/extract Extract text from uploaded file

📁 Supported File Types

Type Extension Method
Plain text .txt, .md Browser (instant)
PDF .pdf Server-side extraction
Word .doc, .docx Server-side extraction
PowerPoint .ppt, .pptx Server-side extraction

Max file size: 10MB


💡 Usage Tips

  • Quiz: Paste lecture notes or upload a file for targeted exam-prep questions
  • Walkthrough: Works best with specific problems (e.g. "Find ∫x²e^x dx")
  • Cheat Sheet: Upload entire course notes — download as .txt or .md for Notion/Obsidian
  • Daily Review: Do it every morning to maximize your streak XP
  • Adaptive Quiz: The more quizzes you take, the smarter it gets about your weaknesses

🏆 XP System

Action XP Earned
Correct quiz answer +25 XP
Perfect quiz score +50 bonus XP
QotD correct +100 XP
QotD attempted +30 XP
Daily review correct +20 XP each
Generating cheat sheet +15 XP
Solution walkthrough +20 XP

Built with ❤️ at McMaster AI Hackathon 2025

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors