Local PDF Q&A: upload documents, ask questions, and chat with your files. Everything runs in Docker — no separate Ollama install required.
- Docker Desktop (macOS / Windows) or Docker Engine + Compose (Linux)
- ~8 GB RAM recommended (AI models + PDF indexing)
- Several GB free disk space for downloaded models
Most users can skip this. Defaults work out of the box:
- Chat model:
gemma4 - Embed model:
nomic-embed-text
To use different Ollama models, do this before your first launch:
cp .env.example .env
# Edit .env and set CHAT_MODEL / EMBED_MODELOn first install, Mino shows which models it will download and pauses so you can stop and edit .env if needed.
git clone <your-repo-url> mino
cd mino
./scripts/launch.shThat's it. The first run downloads Docker images and AI models (this can take 10+ minutes). Later launches start in seconds and open your browser automatically.
macOS: you can also double-click Launch Mino.command.
When you launch for the first time, you'll see a setup banner listing the chat and embed models. Press Enter to continue. Mino will:
- Build the app containers
- Start Ollama inside Docker
- Download the configured models
- Start all services and open
http://localhost:8000
./scripts/stop.shYour indexed documents and chat history are kept unless you run docker compose down -v.
Docker is not running
Start Docker Desktop and run ./scripts/launch.sh again.
Port 8000 is already in use
Stop the other service using that port, or change the published port in docker-compose.yml.
Model download fails or chat errors mention a missing model
Check the model name exists in Ollama's library. Update .env, remove .mino-installed, and run ./scripts/install.sh again.
Windows without bash
Use Git Bash or WSL to run the scripts, or manually:
docker compose up -d --buildThen open http://localhost:8000 in your browser.
Start the stack directly:
docker compose up --buildRun tests (no Docker required):
python -m unittest api/tests/test_retrieval.py
python -m unittest librarian/tests/test_parsing.pyEnvironment variables (OLLAMA_HOST, REDIS_HOST, CHAT_MODEL, EMBED_MODEL) are set in docker-compose.yml. See .env.example for the user-facing overrides.