A modern, native Linux desktop client for the NanoChat API, built with Python, GTK4, and Libadwaita.
- Native UI: Clean, modern interface designed for GNOME (Libadwaita).
- Persistent Chat: Local caching (SQLite) allows you to view conversations offline.
- Model Selection: Choose from available AI models; your selection is remembered.
- Secure: API keys are stored safely in your system's keyring (Libsecret).
- History: Manage your conversation history (view, delete).
- Cross-Distro: Available as Flatpak for all Linux distributions.
The recommended way to install NanoChat Desktop is via Flatpak:
# Install from Flathub (once available)
flatpak install flathub com.nanogpt.NanoChat
# Or install from a downloaded .flatpak file
flatpak install com.nanogpt.NanoChat-<version>.flatpak
# Run the application
flatpak run com.nanogpt.NanoChatIf you want to contribute or run from source:
Prerequisites:
- Python 3.11 or higher
- GTK4 and Libadwaita development headers
- Libsecret development headers
Fedora:
sudo dnf install python3-devel gtk4-devel libadwaita-devel libsecret-develUbuntu/Debian:
sudo apt install python3-dev libgtk-4-dev libadwaita-1-dev libsecret-1-devFrom Source:
-
Clone the repository:
git clone https://github.com/nanogpt-community/nanochat-desktop.git cd nanochat-desktop -
Create a virtual environment:
python3 -m venv venv source venv/bin/activate -
Install dependencies:
pip install -e . -
Run the application:
nanochat
See the plans/ folder for detailed development plans and upcoming features:
Phase 3 - Assistants and Projects:
- Custom AI assistants with system prompts
- Project folders for organizing conversations
- Enhanced conversation management
Phase 4 - Advanced Features:
- Web search integration
- File attachments
- Usage analytics
Phase 5 - Polish:
- Additional themes and customization
- Accessibility improvements
- Store submission preparation
To build the Flatpak package locally:
# Install flatpak-builder
sudo dnf install flatpak-builder # Fedora
sudo apt install flatpak-builder # Ubuntu/Debian
# Install the GNOME runtime and SDK (if not already installed)
flatpak install flathub org.gnome.Platform//45
flatpak install flathub org.gnome.Sdk//45
# Build the Flatpak
flatpak-builder --user --install --force-clean build flatpak/com.nanogpt.NanoChat.yml
# Export as a single file
flatpak build-export export build
flatpak build-bundle export com.nanogpt.NanoChat-<version>.flatpak com.nanogpt.NanoChatThe Flatpak manifest is available at flatpak/com.nanogpt.NanoChat.yml.
MIT