An open API service indexing awesome lists of open source software.

https://github.com/h1ddenpr0cess20/tyumi

An open source AI chatbot web app
https://github.com/h1ddenpr0cess20/tyumi

ai chatbot chatgpt claude gemini grok mistral ollama web-app

Last synced: 2 months ago
JSON representation

An open source AI chatbot web app

Awesome Lists containing this project

README

          

# Tyumi

![Tyumi Logo](src/assets/img/logo.svg)

**An open source AI assistant platform**

[![Version](https://img.shields.io/badge/version-v1.1.1-blue.svg)](https://github.com/h1ddenpr0cess20/Tyumi)
[![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
[![JavaScript](https://img.shields.io/badge/javascript-ES6+-yellow.svg)](https://developer.mozilla.org/en-US/docs/Web/JavaScript)


[![Stars](https://img.shields.io/github/stars/h1ddenpr0cess20/Tyumi.svg?logo=github)](https://github.com/h1ddenpr0cess20/Tyumi/stargazers)
[![Issues](https://img.shields.io/github/issues/h1ddenpr0cess20/Tyumi.svg)](https://github.com/h1ddenpr0cess20/Tyumi/issues)
[![PRs](https://img.shields.io/github/issues-pr/h1ddenpr0cess20/Tyumi.svg)](https://github.com/h1ddenpr0cess20/Tyumi/pulls)
[![Last Commit](https://img.shields.io/github/last-commit/h1ddenpr0cess20/Tyumi.svg)](https://github.com/h1ddenpr0cess20/Tyumi/commits)
[![Website](https://img.shields.io/website?url=https%3A%2F%2Ftyumi.app)](https://tyumi.app)

## Overview

Tyumi is a client‑side AI chat app that works with multiple model providers (OpenAI, Anthropic, Google, Mistral, xAI, Hugging Face, GitHub Models) and local runtimes (Ollama, LM Studio). It supports tool/function calling, TTS, themes, and fully local storage — no backend required.

Start with the guides: [Getting Started](docs/getting-started.md) · [Overview](docs/overview.md) · [Services & Models](docs/services.md) · [Tool Calling](docs/tool-calling.md) · [Memory](docs/memory.md) · [Security](docs/security.md) · [Storage](docs/storage.md) · [UI & UX](docs/ui-and-ux.md) · [Docker](docs/docker.md) · [Troubleshooting](docs/troubleshooting.md) · [Changelog](docs/changelog.md)

## Features

- Multi‑provider models: OpenAI, Anthropic, Google, Mistral, xAI, Hugging Face, GitHub Models; plus Ollama/LM Studio — setup and model lists in [Services & Models](docs/services.md)
- Tool calling: search, image generation/editing, finance, food, entertainment, social, jobs, real estate, utilities — framework and how to add tools in [Tool Calling](docs/tool-calling.md)
- UX: themes, responsive layout, syntax highlighting, markdown, image gallery — design notes in [UI & UX](docs/ui-and-ux.md)
- TTS: multiple voices, optional autoplay, simple controls
- Local‑only storage: conversations, images, audio via IndexedDB; keys kept in the browser — details in [Storage](docs/storage.md)
- Optional memory: local, FIFO‑limited memories appended to the system prompt — behavior and API in [Memory](docs/memory.md)

## Quick Start

- Clone and open:
```bash
git clone https://github.com/h1ddenpr0cess20/Tyumi.git
cd Tyumi
```
- Open `index.html` directly, or serve over HTTPS for APIs, TTS, and geolocation (see the [Getting Started guide](docs/getting-started.md)).
- In Settings → API Keys, add keys for providers you’ll use. Keys are stored locally.
- Optional Android build: `src/assets/apk/tyumi.apk`

Local models:
- Ollama: install, pull a model (e.g., `qwen3`), and point Tyumi to your instance — see the [Ollama guide](docs/ollama.md)
- LM Studio: run the OpenAI‑compatible server and set the base URL in Settings — see the [LM Studio guide](docs/lm-studio.md)

## HTTPS and Docker

- HTTPS: recommended for full functionality — quick steps in [Getting Started](docs/getting-started.md)
- Docker/Compose: full instructions and SSL options in the [Docker guide](docs/docker.md)

Common Docker commands:
- Build image:
```bash
docker build -t tyumi:latest .
```
- Run (HTTP on port 8080 → 80 in container):
```bash
docker run --rm -p 8080:80 tyumi:latest
```

## Architecture & Development

- High‑level architecture: [Architecture](docs/architecture.md)
- Storage, security, and data handling: [Security](docs/security.md) and [Storage](docs/storage.md)
- UI/UX notes and layout: [UI & UX](docs/ui-and-ux.md)
- Developer guide and contribution notes: [Development](docs/development.md) and [CONTRIBUTING](CONTRIBUTING.md)

Common tasks:
- Add tools: implementations in `src/js/services/tools/*`, schemas in `src/js/services/tools/definitions.js` — see [Tool Calling](docs/tool-calling.md)
- Add models/providers: edit `src/config/config.js` and related init files — see [Services & Models](docs/services.md)
- Themes and styling: `src/css/themes/**`, `src/css/components/**`

## Usage

- Choose provider/model in Settings, type a message, send, and stream results.
- Enable Tools in Settings to allow function calls for search, images, and more — details in [Tool Calling](docs/tool-calling.md)
- Manage conversations, images, and audio locally via History and Gallery.

## Policies & Notes

- Privacy/Security: client‑side only; no tracking — see [Security](docs/security.md)
- Troubleshooting: common issues and tips — see [Troubleshooting](docs/troubleshooting.md)
- Changelog: user‑facing changes — see [Changelog](docs/changelog.md)
- Not a Companion: philosophy and boundaries — read [Not a Companion](docs/not-a-companion.md)

## License

MIT — see LICENSE

## Support

If you find this project helpful, consider supporting its development.

- Bitcoin (BTC): `34rgxUdtg3aM5Fm6Q3aMwT1qEuFYQmSzLd`
- Bitcoin Cash (BCH): `13JUmyzZ3vnddCqiqwAvzHJaCmMcjVpJD1`
- Dogecoin (DOGE): `DCmgAhS7U77krayBN1cooeaic2H8F289uY`
- Ethereum (ETH): `0xE8ac85A7331F66e7795A64Ab51C8c5A5A85Ed761`

## Acknowledgments

- Markdown: marked.js
- Syntax highlighting: Highlight.js
- Sanitization: DOMPurify

---


© 2025 Dustin Whyte | Released under the MIT License