Gemini Web UI is a lightweight, elegant, and powerful web interface for Google’s Gemini models, built on top of the robust gemini-cli.
Powered by Streamlit, this application provides a user-friendly chat interface that bridges the gap between the command line and a full graphical experience. It is designed for developers, researchers, and power users who want to leverage the capabilities of Gemini with the convenience of session management, file context handling, and visual interaction.
The primary goal of this project is to provide a seamless visual layer over the gemini-cli tool. While the CLI is excellent for automation and quick tasks, gemini-webui enhances the workflow by offering:
- Persistent Session Management: Easily switch between multiple active conversations.
- Visual Context Management: Drag-and-drop file uploads and clipboard image pasting.
- Rich Text Rendering: Markdown support for code blocks, tables, and mathematical formulas.
- 💬 Interactive Chat: A familiar chat interface with full Markdown support.
- 🗂️ Session Management: Create, rename (auto-generated titles), and delete sessions.
- 📂 Context Awareness:
- File Uploads: Upload documents and code files to be included in the context.
- Clipboard Integration: Paste images directly from your clipboard for multimodal analysis.
- Context Management: View and remove active context files easily.
- 📜 History Tracking: Local history storage ensures you can pick up where you left off.
- 🎨 Modern UI: Clean, responsive design with a collapsible sidebar for better focus.
Before running the application, ensure you have the following installed:
-
Python 3.13+
-
gemini-cli: The core engine powering this UI.
npm install -g @google/gemini-cli
Set up your Gemini API credentials as per the gemini-cli documentation.
The easiest way to install and run gemini-webui is using pipx. This ensures the application runs in an isolated environment without conflicting with other Python packages.
pipx install git+https://github.com/thesfinox/gemini-cli-webui.gitOnce installed, you can run the application from anywhere:
gemini-webuiIf you want to contribute or modify the code, we recommend using uv for fast dependency management.
-
Clone the repository:
git clone https://github.com/thesfinox/gemini-cli-webui.git cd gemini-webui -
Install dependencies:
uv sync
-
Run the application:
uv run gemini-webui
To start the web interface, run:
gemini-webuiThe application will open in your default web browser at http://localhost:8501.
To serve the application on the local network, use the --server.address flag:
gemini-webui --server.address=0.0.0.0Contributions are welcome! Please see CONTRIBUTING.md for guidelines on how to report bugs, suggest features, and submit pull requests.
This project is licensed under the MIT License. See the LICENSE file for details.
- Built with Streamlit.
- Powered by Google Gemini.