Skip to content

TimeUnderTensors/Quip

Repository files navigation

Quip - AI-Powered Learning Platform

Version License Python React

Quip is a local AI-powered educational platform for learning programming concepts. It leverages a local LLM (Ollama) to provide personalized learning experiences in programming, system design, and software engineering.

Features

Learn

  • AI-Powered Tutoring: Chat-based learning with adaptive difficulty
  • Multiple Tracks: Fundamentals, Software Engineering, AI/ML, Systems Programming, Data Engineering
  • Personalized Recommendations: AI-suggested difficulty levels based on your progress

Practice

  • AI-Generated Problems: Dynamically generated coding challenges
  • 20+ LeetCode Patterns: Arrays, Strings, Trees, Graphs, Dynamic Programming, and more
  • Code Grading: AI-powered feedback on your solutions

Design

  • System Design Challenges: Design Twitter, YouTube, Uber, payment systems, and more
  • AI-Generated Challenges: Unique challenges generated based on difficulty level
  • Visual Canvas: Drag-and-drop system design with React Flow

Docs, Cheatsheets & Flashcards

  • Programming Languages: Python, TypeScript, Rust, C++, JavaScript, Go
  • Frameworks: React, FastAPI, Express, Docker, Kubernetes
  • Quick Reference: 20+ cheatsheets and 100+ flashcards for spaced repetition
  • Learning Roadmaps: Structured paths for Frontend, Backend, Full-Stack, ML, DevOps, and more

Progress Tracking

  • Achievements: Unlock badges as you complete topics and challenges
  • Streaks: Track your daily learning streak
  • History: View all your past learning activities

Installation

Desktop App (Windows)

  1. Download Quip Setup 1.0.0.exe from the releases
  2. Run the installer
  3. Launch Quip from the Start Menu or Desktop shortcut
  4. On first launch, the app will prompt you to start Ollama (required for AI features)

Antivirus / Smart App Control

Windows Smart App Control or antivirus software may block the app from running. If you see errors or a blank screen:

Windows 11:

  • Go to Settings > Privacy & security > Windows Security > App & browser control
  • Turn off Smart App Control temporarily, OR
  • Add the Quip app to the allowlist

Antivirus (Windows Defender, etc.):

  • Open Windows Security
  • Go to Virus & threat protection > Manage settings
  • Under Exclusions, add the Quip installation folder:
    • C:\Program Files\Quip
    • Or %LOCALAPPDATA%\Programs\Quip

If the installer won't run:

  • Right-click the .exe file
  • Select Properties
  • Check Unblock at the bottom
  • Click OK and run again

Development Setup

Prerequisites

  • Python 3.12+
  • Node.js 18+
  • Ollama installed

1. Clone the Repository

git clone <repository-url>
cd kip

2. Set Up Backend

cd backend

# Create virtual environment (recommended)
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Start the backend server
python -m uvicorn app.main:app --host 127.0.0.1 --port 8000

3. Set Up Frontend

cd frontend

# Install dependencies
npm install

# Start the development server
npm run dev

4. Start Ollama (Required for AI Features)

# Pull the required model
ollama pull qwen3:latest

# Start Ollama service
ollama serve

Usage

  1. Open your browser to http://localhost:5173 (development) or launch the desktop app
  2. The application will connect to Ollama automatically
  3. Use the sidebar to navigate between Learn, Practice, Design, Docs, Progress, History, Roadmaps, Cheatsheets, and Flashcards sections

Tech Stack

Backend

  • FastAPI - Modern Python web framework
  • SQLAlchemy - ORM with async support
  • Ollama - Local LLM integration (qwen3 model)

Frontend

  • React 18 - UI library
  • TypeScript - Type safety
  • Vite - Build tool
  • Tailwind CSS - Styling
  • Zustand - State management
  • React Flow - System design canvas
  • Monaco Editor - Code editor

Desktop App

  • Electron - Desktop shell
  • PyInstaller - Python bundling

Project Structure

kip/
├── backend/
│   ├── app/
│   │   ├── api/           # API endpoints
│   │   ├── services/       # Business logic
│   │   ├── database.py     # Database models
│   │   └── main.py         # FastAPI app
│   └── requirements.txt
│
├── frontend/
│   ├── src/
│   │   ├── components/     # React components
│   │   ├── stores/         # Zustand state
│   │   ├── services/       # API client
│   │   └── types/          # TypeScript types
│   └── package.json
│
├── electron/
│   ├── main.js            # Electron main process
│   └── preload.js         # IPC bridge
│
├── SPEC.md                 # Detailed specification
├── IMPLEMENTATION_GUIDE.md # Development guide
└── README.md              # This file

API Endpoints

Health

  • GET /api/health - Check API status

Teaching

  • GET /api/teaching/topics - Get available topics
  • POST /api/teaching/start - Start a learning session
  • POST /api/teaching/{session_id}/message - Send a message
  • GET /api/teaching/profile - Get learner profile

Practice

  • GET /api/practice/categories - Get problem categories
  • POST /api/practice/generate - Generate a new problem
  • POST /api/practice/submit - Submit a solution

Design

  • GET /api/design/challenges - Get design challenges
  • POST /api/design/generate - Generate AI challenge
  • POST /api/design/submit - Submit design for evaluation

Progress & History

  • GET /api/progress - Get user progress and achievements
  • GET /api/history - Get activity history

Learning Resources

  • GET /api/roadmaps - Get learning roadmaps
  • GET /api/cheatsheets - Get cheatsheets
  • GET /api/flashcards - Get flashcards

Troubleshooting

App won't start or shows blank screen

  • See Antivirus / Smart App Control section above
  • Check logs at: %APPDATA%\Quip\logs\main.log

Ollama not detected

  • Make sure Ollama is installed from https://ollama.ai
  • Run ollama list to verify models are installed
  • Run ollama serve to start the Ollama service

Backend errors

  • Port 8000 may be in use by another application
  • Check if another instance of Quip is running

License

MIT License - see LICENSE for details.

Acknowledgments

About

AI-Powered Learning Platform

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors