Loading repository data…
Loading repository data…
Mininglamp-OSS / repository
Web & desktop (Electron) client for the OCTO open workplace — one React + TypeScript codebase shipping browser and PC surfaces, with first-class AI agent UX.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
🌐 Read in: English · 简体中文
Web & PC (Electron) client for the OCTO messaging platform — one React codebase, two shipped surfaces.
octo-web is the TypeScript / React front-end that talks to
octo-server over REST +
WebSocket. The same codebase ships two ways: as a browser build (the canonical
OCTO chat surface), and as an Electron-packaged desktop PC client.
src/ — no parallel React trees, no diverging UX. Branch switches happen at platform-capability boundaries only.src/locales/ and are enforced in CI.git clone https://github.com/Mininglamp-OSS/octo-web.git
cd octo-web
pnpm install
pnpm dev
By default the web build expects an octo-server instance reachable at
http://localhost:8080. Point it at your own server by copying
.env.example to .env.local and editing the VITE_API_* values.
Top-level layout:
| Path | Purpose |
|---|---|
src/pages/ | Route-level React views (chat, channels, org, settings) |
src/components/ | Shared UI kit (message bubbles, inputs, agent chips, streaming renderers) |
src/store/ | Client state (auth, channels, draft, agent orchestration UI state) |
src/api/ | REST + WebSocket client talking to octo-server |
src/locales/ | i18n resources (English · 简体中文) |
electron/ | Electron main/renderer bootstrap for the PC build |
docs/ | Design docs, architecture notes, screenshots |
Key build targets:
pnpm build # build the browser bundle
pnpm pc:dev # launch the Electron shell against the dev build
pnpm pc:package # produce a distributable PC bundle (macOS / Windows / Linux)
pnpm test # run unit + component tests
The PC Electron shell is intentionally thin — it hosts the same React app and forwards IPC for native capabilities (tray, notifications, file drop, auto- update). The browser build runs without any Electron dependency.
graph TD
subgraph Clients[Clients]
Web[octo-web<br/>Web / PC]
Android[octo-android<br/>Android]
iOS[octo-ios<br/>iOS]
end
subgraph Core[Core Services]
Server[octo-server<br/>Backend API]
Matter[octo-matter<br/>Task / Todo]
Summary[octo-smart-summary<br/>AI Summary]
Admin[octo-admin<br/>Admin Console]
end
subgraph Shared[Shared Libraries & Integrations]
Lib[octo-lib<br/>Core Go Library]
Adapters[octo-adapters<br/>Third-party Adapters]
end
Web --> Server
Android --> Server
iOS --> Server
Admin --> Server
Server --> Matter
Server --> Summary
Server --> Adapters
Server -.uses.-> Lib
Matter -.uses.-> Lib
Adapters -.uses.-> Lib
| Repository | Language | Role |
|---|---|---|
octo-server | Go | Backend API · business orchestration · Lobster agent scheduling |
octo-matter | Go | Task / Todo / Matter micro-service |
octo-smart-summary | Go | LLM-powered conversation summarisation |
octo-web | TypeScript / React | Web & PC (Electron) client |
octo-android | Kotlin / Java | Native Android client |
octo-ios | Swift / Objective-C | Native iOS client |
octo-admin | TypeScript / React | Admin console (tenant / org / user / channel management) |
octo-lib | Go | Shared core library (protocol, crypto, storage, HTTP) |
octo-adapters | TypeScript / Python | Third-party integrations (IM bridges, AI channels) |
OCTO ships under three shared principles that apply to every repository in this matrix:
We love pull requests! Before you open one, please read:
For security issues please follow SECURITY.md instead of the public tracker.
Apache License 2.0 — see LICENSE for the full text and NOTICE for third-party attributions.
octo-web owes its original scaffolding to:
octo-server drives behind this client.See NOTICE for the full attribution list and third-party component licenses.