English | Русский
Minimalist, ultra-fast, and completely serverless alternative to heavy AI web interfaces like Open WebUI.
No bulky Docker containers, no local databases to configure, no Python dependency hell, and no endless loading spinners. Just a clean static frontend that runs directly in your browser and stores everything locally.
Our built-in analytics are completely transparent and privacy-friendly — powered strictly by Cloudflare's free static pages analytics. If you prefer absolute privacy, you can run 🧪lab locally via Bun, which completely eliminates any analytics. Your API keys and chat history never leave your browser.
- Zero Backend / Client-Full: Everything runs strictly on the client side. Your API keys are stored securely in your browser's local storage. Note: Local engines like Ollama require configuring proper CORS/Origins settings due to browser security policies.
- Multi-Provider & Diverse Sources: Connect and switch between multiple instances of Ollama, OpenAI, Groq, OpenRouter, or any other OpenAI-compatible API simultaneously.
-
Surgical Context Control: Real-time token counting with support for both
js-tiktokenand a native Gemini tokenizer (highly accurate, with a discrepancy of just a few dozen tokens). Easily slice the top$N$ messages to stop overpaying for carrying massive, useless chat history. - Code-Centric Monaco Editor: Code blocks are rendered using Microsoft's Monaco Editor (the engine behind VS Code) with auto-height and smart copying. By default, long code blocks are collapsed to a neat 50px height with a blur effect to keep the chat readable — expand them with a single click.
- Runtime: Bun (production build on Bun 1.3.14)
- UI: React + Tailwind CSS + shadcn/ui + Lucide Icons
- Local Storage: Dexie.js (IndexedDB wrapper)
- State Management: Zustand
- Tokenization:
js-tiktoken& Native Gemini Tokenizer - Code Editor:
@monaco-editor/react
bun installbun run devbun run buildThe output will be in the ./dist directory, ready to be deployed to Cloudflare Pages, Vercel, Netlify, or any static file server.
🧪lab is designed with a "local-first, performance-first" mindset:
- There is no server and no database. Everything is stored entirely in your browser's IndexedDB.
- Since there is no external database, your entire workspace is active and accessible offline (perfect for local engines like Ollama).
- Our token counters are tuned to be as close to the official APIs as possible. If you need absolute precision, you can adjust tokenization settings inside the panel.
-
Sliding Window (Auto-Prune): Set a token limit per chat. Once crossed,
🧪labautomatically manages the window to prevent API context overflows. -
Manual Pruning: Easily keep only the last
$N$ messages, trim the outdated start of the conversation, or automatically compress massive code blocks while keeping the semantic text intact.
- Inspired by Google AI Studio,
🧪labfeatures a clean three-panel layout: left sidebar for chat list and workspace settings, main chat area, and right sidebar for real-time context stats, sliding window configuration, and advanced tools.
- ToolHub is our next distributed AI skill orchestrator project, which will be open-sourced later. For now, if you don't use ToolHub, you can safely ignore the ToolHub configuration card in the settings.
Before you open an issue or look at the source code, please keep a few things in mind:
- Built for Self-Use: I created
🧪labbecause I was unsatisfied with existing bloated solutions. It is designed to fit my daily workflow as an alternative to Open WebUI and similar heavy tools. - No "Best Practices" Dogma: The code is written to be simple, readable, and highly pragmatic. You won't find over-engineered enterprise patterns or 100% unit test coverage here. It works, and it works well.
- Future Development: I maintain and update this project in my spare time. I will gladly develop
🧪labfurther if there is enough interest from the community, but my real-world production projects always take priority. - Respect to Google AI Studio: Google AI Studio is an incredible platform. While the authors didn't originally design it for daily production use, they accidentally made it almost perfect for developers who write code. However, it lacks certain essential features for continuous custom API integration—and
🧪labaims to implement them.
This project is a neutral, peaceful engineering space. I am completely offline from political games, wars, and regional disputes. Everyone is welcome here as long as we focus on writing good code, building useful tools, and respecting each other as engineers.
This project is licensed under the AGPL-3.0 License — free for personal use, self-hosting, and open-source contributions.
For Enterprise & Commercial Use:
If your company wants to use 🧪lab internally, modify it, or integrate it into proprietary products without the copyleft obligations of the AGPL-3.0 license (which would require you to open-source your entire internal stack), you must acquire a commercial license.
You can contact me by clicking the banner on the project's domain (which leads to the Telegram channel with contact info) or directly via email: collab@labstudio.tech.
Made with ☕, focus, and a strong preference for fast, lightweight software.
English | Русский
Минималистичная, ультрабыстрая и полностью serverless альтернатива перегруженным веб-интерфейсам для работы с ИИ вроде Open WebUI.
Никаких тяжелых Docker-контейнеров, локальных баз данных, питоновского ада зависимостей и бесконечных спиннеров. Чистый статический фронтенд, который работает прямо в браузере и хранит все данные локально.
Встроенная аналитика полностью прозрачна и безопасна — используется исключительно бесплатная статика Cloudflare Pages. Если вам важна абсолютная приватность, вы можете запустить 🧪lab локально через Bun — в этом случае аналитики не будет вообще. Ваши ключи API и история чатов никогда не покидают браузер.
- Zero Backend / Client-Full: Всё крутится исключительно на клиенте. Ключи API надежно хранятся в локальном хранилище вашего браузера. Примечание: Для работы с локальными движками (например, Ollama) потребуется настроить CORS/Origins из-за политик безопасности браузера.
- Поддержка множества провайдеров и источников: Подключайте и переключайтесь параллельно между Ollama, OpenAI, Groq, OpenRouter или любыми другими OpenAI-совместимыми API.
-
Контроль контекста: Подсчет токенов в реальном времени с поддержкой как
js-tiktoken, так и нативного токенайзера Gemini (точность ~99%, расхождение составляет буквально десятки токенов). Механизм срезки первых$N$ сообщений позволяет не переплачивать за отправку гигантской бесполезной истории чата при каждом запросе. - Кодоцентричный Monaco Editor: Блоки кода рендерятся на полноценном движке VS Code (Monaco) с автовысотой и умным копированием. По умолчанию длинные листинги сворачиваются до аккуратных 50px с эффектом размытия, чтобы не засорять чат, и разворачиваются в один клик.
- Среда выполнения: Bun (production build on Bun 1.3.14)
- UI: React + Tailwind CSS + shadcn/ui + Lucide Icons
- Локальное хранилище: Dexie.js (обертка над IndexedDB)
- Стейт-менеджер: Zustand
- Токенизация:
js-tiktokenи нативный токенайзер Gemini - Редактор кода:
@monaco-editor/react
bun installbun run devbun run buildРезультат сборки появится в директории ./dist. Всё готово к деплою на Cloudflare Pages, Vercel, Netlify или любой сервер раздачи статики.
🧪lab спроектирован с упором на локальность данных (local-first) и производительность:
- Здесь нет ни сервера, ни базы данных. Все ваши чаты, настройки и сообщения хранятся исключительно в браузере (IndexedDB).
- Благодаря отсутствию внешних зависимостей всё рабочее пространство доступно без интернета (актуально для локальных движков вроде Ollama).
- Наши счетчики токенов настроены максимально близко к официальным API. Если вас не устраивает стандартный подсчет, вы всегда можете скорректировать настройки токенизации в панели.
-
Скользящее окно (Auto-Prune): Задайте лимит токенов для чата. При его превышении
🧪labавтоматически срежет старый контекст, чтобы вы не уперлись в лимиты API. -
Ручная очистка: Оставляйте только последние
$N$ сообщений, срезайте устаревшее начало диалога или автоматически сжимайте массивные блоки кода, сохраняя при этом текстовый смысл.
- Вдохновленный Google AI Studio, интерфейс
🧪labразделен на три зоны: левый сайдбар для списка чатов и общих настроек, основная область чата и правый сайдбар для детальной статистики, лимитов скользящего окна и интеграций.
- ToolHub — это наш следующий проект распределенного оркестратора навыков ИИ, который будет выложен в open-source несколько позже. Пока вы можете просто игнорировать карточку настроек ToolHub в интерфейсе.
Перед тем как открыть issue или изучать исходный код, пожалуйста, примите во внимание:
- Создано для себя: Я написал
🧪lab, потому что меня не устраивали существующие тяжеловесные альтернативы. Проект заточен под мой ежедневный рабочий процесс как легковесная альтернатива Open WebUI и подобным инструментам. - Никаких догм «Best Practices»: Код написан просто, понятно и максимально прагматично. Вы не найдете здесь переусложненных enterprise-паттернов или 100% покрытия юнит-тестами. Он просто хорошо работает.
- Развитие проекта: Я поддерживаю этот проект в свободное время. Я буду крайне рад развивать
🧪labпри достаточном интересе со стороны публики, но мои реальные продакшн-проекты всегда остаются в приоритете. - Уважение к Google AI Studio: AI Studio — прекрасный инструмент. Его авторы не пытались сделать решение для ежедневного использования, но случайно создали почти идеальный продукт для разработчиков, пишущих код. Однако ему не хватает некоторых обязательных функций для постоянной работы с кастомными API — и
🧪labхочет их реализовать.
Этот проект — нейтральное, мирное инженерное пространство. Я полностью отключен от политических игр, войн и региональных распрей. Здесь рады всем, пока мы сфокусированы на написании хорошего кода, создании полезных инструментов и уважении друг к другу как к инженерам.
Этот проект распространяется под лицензией AGPL-3.0 — он полностью бесплатен для личного использования, self-hosting решений и open-source контрибьюторов.
Для Enterprise и коммерческого использования:
Если ваша компания хочет использовать 🧪lab внутри организации, модифицировать его или интегрировать в закрытые коммерческие продукты без обязательств копилефта лицензии AGPL-3.0 (которая обяжет вас открыть исходный код всей вашей внутренней системы), вам необходимо приобрести коммерческую лицензию.
Связаться со мной можно, перейдя по баннеру на домене проекта (он ведет на Telegram-канал с контактами), либо напрямую по почте: collab@labstudio.tech.
Made with ☕, focus, and a strong preference for fast, lightweight software.


