Spaces:
Running
Running
metadata
title: AceNow
emoji: π
colorFrom: blue
colorTo: indigo
sdk: docker
pinned: false
license: mit
AceNow - AI-Powered Exam Prep Microservices
AceNow is a focused platform for last-minute exam preparation, offering AI-powered summaries, key topics, and quick quizzes for efficient revision. Built with a modern microservices architecture, it integrates seamlessly with Google Classroom to retrieve study materials and uses state-of-the-art AI models for content analysis.
β¨ Core Features
- Google Classroom Integration: Securely fetch documents (PDF/PPTX) and announcements from your enrolled courses.
- Smart Study Logic:
- Key Topics: Automatically identifies high-priority exam concepts.
- AI Summaries: Concise oversight of core ideas for fast reading.
- Pedagogical Quizzes: Scenario-based MCQs with hints and detailed rationales for every answer.
- Robust AI Fallback: Multi-provider engine (Gemini 2.0 -> Groq Llama 3 -> Ollama) ensures 100% uptime even during rate limits.
- Parallel Downloads: Bundle all course materials into a single ZIP file instantly using JSZip.
- Modern Responsive UI: Premium glassmorphic interface with Dark/Light modes and full mobile compatibility.
- AI Assistant: Dedicated academic chat interface for deep-diving into complex topics.
ποΈ Architecture
The system is split into specialized microservices:
- API Gateway (Port 5000): Single entry point that routes requests and manages cross-service communication.
- Auth Service (Port 5001): Handles Google OAuth2 authentication and configuration.
- File Parser Service (Port 5002): Specialized in extracting text content from PDFs and PPTXs.
- AI Service (Port 5003): The "brain" of AceNow, managing complex prompts and various AI model providers.
- Frontend Service (Port 5004): Serves the web application, styles, and assets.
π Quick Start
1. Requirements
- Python 3.9+
- Google Cloud Project for Google Classroom API.
- Gemini API Key (Primary).
- Groq API Key (Fallback).
2. Setup
Create a .env file in the root directory:
GOOGLE_CLIENT_ID=your_client_id
GEMINI_API_KEY=your_gemini_key
GROQ_API_KEY=your_groq_key
# Optional: HF_TOKEN=your_huggingface_token
3. Run with Docker Compose
The easiest way to start the entire cluster:
docker-compose up --build
Access the app at: http://localhost:5000
4. Run Locally (Dev Mode)
Alternatively, use the provided development runner:
python run_dev.py
π Free Hosting & Deployment
AceNow is designed to run entirely on free-tier services.
Option A: Hugging Face Spaces (Recommended)
- Create a new Space on Hugging Face.
- Select Docker as the SDK.
- Upload the project (the
Dockerfileat the root handles the multi-service build). - Go to Settings > Variables & Secrets and add your
.envvariables.
Option B: Render (Manual)
- Deploy the API Gateway as a Web Service.
- Deploy individual services as Private Services (no cost for inter-service communication).
- Link them using the environment variables in the Gateway.
π License
Β© 2026 Jose Davidson. Developed with the assistance of Antigravity.