⭐A free, lightweight and ad-free AI question search, question generation, practice software!
7.7K
AI-powered exam question generator. Upload study materials, generate professional exam questions in seconds.
GitHub Repo: https://github.com/heshengtao/exameow
Pre-built binaries for all platforms are available on the GitHub Releases page.
git clone https://github.com/heshengtao/exameow.git
cd exameow
# Build frontend
cd frontend && pnpm install && pnpm build && cd ..
# Configure AI provider
export AI_ENDPOINT=https://api.openai.com/v1
export AI_API_KEY=sk-your-key-here
export AI_MODEL=gpt-4o
# Build and run
docker compose up -d --build
Open http://localhost:3000.
docker pull ailm32442/exameow:latest
docker run -d -p 3000:3000 \
-e AI_ENDPOINT=https://api.openai.com/v1 \
-e AI_API_KEY=sk-your-key-here \
-e AI_MODEL=gpt-4o \
ailm32442/exameow:latest
| Variable | Default | Description |
|---|---|---|
AI_ENDPOINT | https://api.openai.com/v1 | OpenAI-compatible API endpoint |
AI_API_KEY | — | Your AI API key |
AI_MODEL | gpt-4o | Default model to use |
PORT | 3000 | Server listen port |
STATIC_DIR | /app/static | Static files directory |
RUST_LOG | info | Log level |
| Method | Path | Description |
|---|---|---|
GET | /api/models | List available AI models |
POST | /api/generate | Upload file + generate exam questions |
GET | /api/export | Export questions as CSV |
POST | /api/export/xlsx | Export questions as XLSX |
POST | /api/config/save | Save AI configuration |
GET | /api/config/load | Load saved AI configuration |
curl -X POST http://localhost:3000/api/generate \
-F "[email protected]" \
-F 'params={"question_types":["single_choice","multi_choice"],"count":10,"difficulty":"medium","language":"Chinese"}'
┌─────────────────────────────────────────────────────┐
│ Frontend (Vue 3 + Vite + Pinia) │
│ Served as static files from the Rust server │
├─────────────────────────────────────────────────────┤
│ Server (Rust / Axum) │
│ ├── File Parser (PDF, DOCX, XLSX, PPTX, EPUB…) │
│ ├── AI Client (OpenAI-compatible API) │
│ ├── Exam Builder (Prompt engineering + parsing) │
│ └── Export (XLSX, CSV) │
├─────────────────────────────────────────────────────┤
│ Deploy Targets │
│ ├── Docker (self-hosted) │
│ ├── Tauri Desktop (macOS / Windows / Linux) │
│ ├── Tauri Mobile (iOS / Android) │
│ └── Cloudflare Pages + Worker │
└─────────────────────────────────────────────────────┘
# Rust server
cargo run -p exameow-server
# Frontend dev server
cd frontend && pnpm dev
# Tauri desktop app
pnpm tauri dev
exameow/
├── frontend/ # Vue 3 SPA
├── packages/
│ ├── core/ # Rust shared library (AI, parser, export, config)
│ ├── server/ # Axum HTTP server
│ └── shared/ # TypeScript shared types
├── src-tauri/ # Tauri desktop + mobile app
├── workers/ # Cloudflare Workers (Hono)
├── scripts/ # Build and deploy scripts
├── Dockerfile
└── docker-compose.yml
Apache-2.0
Content type
Image
Digest
sha256:f43816758…
Size
21.5 MB
Last updated
23 days ago
docker pull ailm32442/exameow