explaingit

abboskhonov/hermium

Analysis updated 2026-05-18

0TypeScriptAudience · developerComplexity · 4/5Setup · moderate

TLDR

A self hosted AI chat dashboard rebuilt in React, Hono, and Bun as a TypeScript port of the Hermes Web UI project.

Mindmap

mindmap
  root((Hermium))
    Architecture
      Browser
      TanStack Start Frontend
      Hono BFF
      Hermes Gateway
    Packages
      web
      api
      shared
    Ported From
      Vue to React
      Koa to Hono
      Pinia to Zustand
    Planned Features
      Chat Streaming
      File Browser
      Terminal Access

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Run a self hosted AI chat interface locally instead of using a third party hosted chat service.

USE CASE 2

Use as a reference for porting a Vue and Koa application to a React and Hono stack.

USE CASE 3

Extend the monorepo to add planned features like real time chat streaming or a file browser.

USE CASE 4

Study the API to Hono BFF to Gateway architecture as a pattern for building your own AI chat backend.

What is it built with?

TypeScriptReactTanStack StartHonoBunSQLiteZustand

How does it compare?

abboskhonov/hermium0xradioac7iv/tempfsabhilashreddychitiki/memory-concierge
Stars000
LanguageTypeScriptTypeScriptTypeScript
Setup difficultymoderatemoderatemoderate
Complexity4/53/53/5
Audiencedeveloperdeveloperpm founder

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires Bun and a running Hermes Gateway instance for the full three layer architecture to function.

In plain English

Hermium is a self hosted AI chat dashboard written in TypeScript. It is a port of an existing project called Hermes Web UI, rebuilt with a different set of tools: TanStack Start for the frontend, Hono as the backend server layer, and Bun as the JavaScript runtime. The code lives in a monorepo, a single repository holding multiple packages that work together. The architecture has three layers. Your browser connects to the frontend on port 3000, which talks to a Hono API server on port 8648, which in turn connects to a separate Hermes Gateway on port 8642. Frontend state is managed with Zustand, a lightweight state library. The backend stores data in SQLite using Bun's built in SQLite support, so no separate database library is needed. The interface components come from shadcn/ui. The monorepo has three packages: web, the React frontend using file based routing, api, the Hono server, and shared, common types used by both sides. Running one command starts both servers together for local development. Compared to the original Hermes Web UI, Hermium replaces Vue with React, Koa with Hono, Pinia with Zustand, and Vue Router with a file based TanStack router. The authentication approach stays the same, a token stored in a local file, and the server sent events interception logic used for tracking AI usage carries over and is ready to be wired up. This project is aimed at developers who want to run their own AI chat interface locally instead of depending on a third party hosted service. The README lists a number of features that are planned but not yet built: real time chat streaming over WebSocket, a file browser with local, Docker, and SSH backends, group chat, a terminal endpoint, settings pages for models and providers, and usage analytics charts drawn from a SQLite table.

Copy-paste prompts

Prompt 1
I'm porting a Vue and Koa app to React and Hono. What are the key architectural differences I need to plan for, especially around routing and state management?
Prompt 2
Explain how a BFF, or backend for frontend, pattern works and why you might put a Hono server between a React app and a separate gateway service.
Prompt 3
Show me how to use Bun's built in SQLite support instead of a separate database driver in a TypeScript backend.
Prompt 4
How would I add real time chat streaming over WebSocket to an existing Hono API server?
Prompt 5
I need to replace Pinia state management with Zustand in a ported React application. Walk me through the equivalent store patterns.

Frequently asked questions

What is hermium?

A self hosted AI chat dashboard rebuilt in React, Hono, and Bun as a TypeScript port of the Hermes Web UI project.

What language is hermium written in?

Mainly TypeScript. The stack also includes TypeScript, React, TanStack Start.

How hard is hermium to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is hermium for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.