A modern web interface for managing and interacting with Ollama models on localhost.
- Sleek glassmorphism design with gradient accents
- Fully responsive - optimized for desktop, tablet, and mobile
- Touch-friendly controls with proper hit targets
- Monitor Running Models - View all running models with resource usage
- Start/Kill Ollama - Control the Ollama service directly from the UI
- Concurrent Downloads - Download multiple models simultaneously
- Real-Time Progress - Live progress bars with speed and size info (e.g., "943 MB/8.6 GB | 3.2 MB/s")
- Cancel Anytime - Stop downloads mid-process
- Persistent Progress - Downloads continue in background, visible to all users
- Auto-Cleanup - Completed/failed downloads automatically removed
- Info - View detailed model information in modal
- Copy - Duplicate models with new names
- Remove - Delete models with confirmation
- Clone or place this repository in your Pinokio API directory:
C:\pinokio\api\Ollama_Z.git\ - Open Pinokio and find "Ollama Web Interface" in your apps
- Click "Install" to set up the environment
- Click "Start" to launch the web interface
-
Ensure Python 3.8+ is installed
-
Create a virtual environment:
python -m venv venv
-
Activate the virtual environment:
- Windows:
venv\Scripts\activate - Linux/Mac:
source venv/bin/activate
- Windows:
-
Install dependencies:
pip install -r requirements.txt
Via Pinokio: Click the "Start" button in Pinokio
Manually:
python app.pyThe web interface will be available at: http://localhost:11435
- Ollama must be installed and running on
localhost:11434 - Download Ollama from: https://ollama.ai
The interface supports all major Ollama operations:
- serve - Start ollama (if not already running)
- pull - Download models from registry with progress tracking
- list - View all installed models
- ps - Monitor running models with resource info
- run - Chat with models through the interface
- stop - Stop running models
- cp - Copy models
- rm - Remove models
- show - Display detailed model information
Ollama_Z.git/
├── app.py # Flask application
├── templates/
│ └── index.html # Web interface
├── requirements.txt # Python dependencies
├── pinokio.js # Pinokio configuration
├── install.json # Pinokio install script
├── start.js # Pinokio start script
GET /api/ps- List running models with resource infoGET /api/list- List all installed modelsPOST /api/stop- Stop a specific running modelPOST /api/rm- Remove a modelPOST /api/cp- Copy a model to new namePOST /api/show- Get detailed model information
POST /api/pull- Start downloading a modelGET /api/pull/all- Get all active download progress (real-time)GET /api/pull/progress/<model>- Get specific model download progressPOST /api/pull/cancel- Cancel an active download
POST /api/chat- Stream chat responses (Server-Sent Events)POST /api/chat/stop- Stop active generation
POST /api/start- Start Ollama servicePOST /api/kill- Kill all Ollama processesPOST /api/serve- Start Ollama serve (deprecated, use /api/start)
- Backend: Flask with threading for concurrent operations
- Frontend: Vanilla JavaScript (no build step required)
- Streaming: Server-Sent Events (SSE) for chat responses
- Progress Tracking: Global shared state with auto-cleanup
- Process Management: Direct subprocess control for Ollama CLI
The server runs on 0.0.0.0:11435 by default and connects to Ollama at localhost:11434.
To change these settings, edit app.py:
OLLAMA_URL = "http://localhost:11434"
app.run(host='0.0.0.0', port=11435)- Modern browsers with ES6+ support
- ReadableStream API for streaming responses
- CSS Grid and Flexbox for responsive layout
MIT