AceNow / README.md
GitHub Action
Clean deployment - 0 binaries
39b5ef2
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:

  1. API Gateway (Port 5000): Single entry point that routes requests and manages cross-service communication.
  2. Auth Service (Port 5001): Handles Google OAuth2 authentication and configuration.
  3. File Parser Service (Port 5002): Specialized in extracting text content from PDFs and PPTXs.
  4. AI Service (Port 5003): The "brain" of AceNow, managing complex prompts and various AI model providers.
  5. Frontend Service (Port 5004): Serves the web application, styles, and assets.

πŸš€ Quick Start

1. Requirements

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)

  1. Create a new Space on Hugging Face.
  2. Select Docker as the SDK.
  3. Upload the project (the Dockerfile at the root handles the multi-service build).
  4. Go to Settings > Variables & Secrets and add your .env variables.

Option B: Render (Manual)

  1. Deploy the API Gateway as a Web Service.
  2. Deploy individual services as Private Services (no cost for inter-service communication).
  3. Link them using the environment variables in the Gateway.

πŸ“„ License

Β© 2026 Jose Davidson. Developed with the assistance of Antigravity.