Ollama Chat Bot 1 is a modern, feature-rich interface for interacting with Ollama models. Built with Flet, it provides a responsive and intuitive UI for chat conversations, code generation, and image analysis capabilities.
The local project contains a substantial Python codebase, tests, and documentation, but it is still in an integration-hardening phase. On 2026-04-05 the repository was refreshed with CLAUDE.md, TDDaaS/CGaaS workflows, repo quality tests, and modern ignore/tooling files so it can be versioned and audited cleanly.
- Modern UI - Built with Flet for a responsive and intuitive interface
- Model Selection - Browse and select from available Ollama models by category
- Chat History Management - Save, load, and manage chat sessions
- Code Detection - Automatically detect and extract code blocks from responses
- Session Persistence - Conversations are saved as JSON files with text reports
- Model Switching - Change models mid-conversation
- Theme Support - Light and dark mode support
- Multi-Modal Support - Support for text, code, and image inputs (for vision models)
- Python 3.10+
- Ollama (locally installed)
- Dependencies:
- flet
- langchain-ollama
- langchain-core
- ollama
- pydantic
- pyyaml
- tiktoken
- Clone the repository:
git clone https://github.com/MontyCraig/Chat-Bot-One.git
cd Chat_Bot_One- Install dependencies:
pip install -r requirements.txt- Ensure Ollama is installed and running:
# Check if Ollama is running
ollama listRun the application:
python app.pyLocal repo-quality checks:
python -m coverage run --rcfile=.coveragerc -m pytest -o addopts='' --noconftest \
quality_tests tests/unit/utils/test_file_utils.py -q
python -m coverage report --rcfile=.coveragerc --fail-under=75
ruff check src quality_tests tests- Select a model from the Models tab
- Type your message in the input field
- View responses in the chat window
- Code blocks are automatically detected and can be saved
- Navigate to the Models tab
- Browse models by category
- Select a model to use for chat
- Navigate to the History tab
- Browse and search previous conversations
- Load a previous conversation to continue
- Navigate to the Settings tab
- Configure application preferences
- Adjust theme, history limits, and other options
The project follows a modular structure:
chat_bot_1/
├── app.py # Main application entry point
├── src/ # Source code directory
│ ├── ui/ # User interface components
│ ├── models/ # Model interaction and management
│ ├── utils/ # Utility functions and helpers
│ ├── rag/ # Retrieval-Augmented Generation system
│ └── code_handler/ # Code detection and management
├── chats/ # Chat history storage
├── reports/ # Generated text reports
└── docs/ # Documentation
See TODO.md for the legacy backlog and REPO_AUDIT_2026-04-05.md for the current priority order.
This project is licensed under the MIT License - see the LICENSE file for details.