# elder-plinius/g0dm0d3 architecture

> Architecture diagram of the GitHub repository elder-plinius/g0dm0d3, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-10-07). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/elder-plinius/g0dm0d3
- Repository: https://github.com/elder-plinius/g0dm0d3

## Overview

G0DM0D3 is a multi-model chat and red-teaming product, with a React interface, a self-hostable REST API, and research-data services. The main user path is configuring a provider, submitting a chat request, and receiving a generated or multi-model-ranked response; AutoTune and Parseltongue can adapt that request. The README also describes Classic racing, local models, privacy controls, and research capabilities. Some route and UI wiring is inferred only from imports or documentation; unsampled relationships are omitted rather than assumed.

Main entry points: [`src/components/ChatInput.tsx`](https://github.com/elder-plinius/g0dm0d3/blob/main/src/components/ChatInput.tsx) (Chat Interface), [`api/routes/chat.ts`](https://github.com/elder-plinius/g0dm0d3/blob/main/api/routes/chat.ts) (Chat API), [`src/app/page.tsx`](https://github.com/elder-plinius/g0dm0d3/blob/main/src/app/page.tsx) (Web App), [`api/routes/research.ts`](https://github.com/elder-plinius/g0dm0d3/blob/main/api/routes/research.ts) (Research API)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_client["Chat Client"]
  node_web["Web App<br/>[page.tsx]"]
  node_chatui["Chat Interface<br/>[ChatInput.tsx]"]
  node_settings["Settings<br/>[SettingsModal.tsx]"]
  node_state[("Browser State<br/>[index.ts]")]
  node_telemetry["App Telemetry<br/>[telemetry.ts]"]
end

subgraph group_engines["Generation Engines"]
  node_provider["Model Providers<br/>[openrouter.ts]"]
  node_classify["Query Classification<br/>[classify.ts]"]
  node_autotune["AutoTune<br/>[autotune.ts]"]
  node_feedback["Tuning Feedback"]
  node_parseltongue["Parseltongue<br/>[parseltongue.ts]"]
  node_stm["STM Modules<br/>[modules.ts]"]
  node_ultra["ULTRAPLINIAN<br/>[ultraplinian.ts]"]
  node_consortium["Consortium Mode<br/>[consortium.ts]"]
end

subgraph group_service["API Services"]
  node_api["API Server<br/>[server.ts]"]
  node_chatroute["Chat API<br/>[chat.ts]"]
end

subgraph group_research["Research Data"]
  node_dataset[("Dataset Buffer<br/>[dataset.ts]")]
  node_metadata[("Metadata Buffer<br/>[metadata.ts]")]
  node_publisher["HF Publisher<br/>[hf-publisher.ts]"]
  node_researchapi["Research API<br/>[research.ts]"]
  node_reader["Corpus Reader<br/>[hf-reader.ts]"]
  node_telemetryfn["Telemetry Endpoint<br/>[telemetry.ts]"]
end

node_user(("User"))
node_hf[("Hugging Face")]
node_local["Local Model Server"]

node_user -->|"opens"| node_web
node_web -->|"renders"| node_chatui
node_web -->|"renders"| node_settings
node_web -->|"reads state"| node_state
node_chatui -->|"uses"| node_state
node_settings -->|"configures"| node_state
node_chatui -->|"classifies"| node_classify
node_chatui -->|"tunes parameters"| node_autotune
node_chatui -->|"transforms input"| node_parseltongue
node_chatui -->|"sends requests"| node_provider
node_provider -.->|"calls optionally"| node_local
node_provider -.->|"calls optionally"| node_api
node_autotune -->|"applies learning"| node_feedback
node_chatui -->|"records events"| node_telemetry
node_web -.->|"detects optionally"| node_api
node_api -->|"routes requests"| node_chatroute
node_chatroute -->|"uses"| node_autotune
node_chatroute -->|"uses"| node_parseltongue
node_chatroute -->|"uses"| node_stm
node_chatroute -->|"uses"| node_provider
node_chatroute -->|"uses"| node_ultra
node_chatroute -->|"uses"| node_consortium
node_api -->|"routes research"| node_researchapi
node_researchapi -->|"queries corpus"| node_reader
node_researchapi -->|"reads stats"| node_dataset
node_researchapi -->|"reads stats"| node_metadata
node_researchapi -->|"flushes buffers"| node_publisher
node_dataset -->|"registers store"| node_publisher
node_metadata -->|"registers store"| node_publisher
node_publisher -.->|"publishes"| node_hf
node_reader -.->|"reads corpus"| node_hf
node_telemetry -.->|"posts events"| node_telemetryfn
node_telemetryfn -.->|"publishes metadata"| node_hf

click node_web "https://github.com/elder-plinius/g0dm0d3/blob/main/src/app/page.tsx"
click node_chatui "https://github.com/elder-plinius/g0dm0d3/blob/main/src/components/ChatInput.tsx"
click node_settings "https://github.com/elder-plinius/g0dm0d3/blob/main/src/components/SettingsModal.tsx"
click node_state "https://github.com/elder-plinius/g0dm0d3/blob/main/src/store/index.ts"
click node_telemetry "https://github.com/elder-plinius/g0dm0d3/blob/main/src/lib/telemetry.ts"
click node_provider "https://github.com/elder-plinius/g0dm0d3/blob/main/src/lib/openrouter.ts"
click node_classify "https://github.com/elder-plinius/g0dm0d3/blob/main/src/lib/classify.ts"
click node_autotune "https://github.com/elder-plinius/g0dm0d3/blob/main/src/lib/autotune.ts"
click node_feedback "https://github.com/elder-plinius/g0dm0d3/blob/main/src/lib/autotune-feedback.ts"
click node_parseltongue "https://github.com/elder-plinius/g0dm0d3/blob/main/src/lib/parseltongue.ts"
click node_stm "https://github.com/elder-plinius/g0dm0d3/blob/main/src/stm/modules.ts"
click node_api "https://github.com/elder-plinius/g0dm0d3/blob/main/api/server.ts"
click node_chatroute "https://github.com/elder-plinius/g0dm0d3/blob/main/api/routes/chat.ts"
click node_ultra "https://github.com/elder-plinius/g0dm0d3/blob/main/api/lib/ultraplinian.ts"
click node_consortium "https://github.com/elder-plinius/g0dm0d3/blob/main/api/lib/consortium.ts"
click node_dataset "https://github.com/elder-plinius/g0dm0d3/blob/main/api/lib/dataset.ts"
click node_metadata "https://github.com/elder-plinius/g0dm0d3/blob/main/api/lib/metadata.ts"
click node_publisher "https://github.com/elder-plinius/g0dm0d3/blob/main/api/lib/hf-publisher.ts"
click node_researchapi "https://github.com/elder-plinius/g0dm0d3/blob/main/api/routes/research.ts"
click node_reader "https://github.com/elder-plinius/g0dm0d3/blob/main/api/lib/hf-reader.ts"
click node_telemetryfn "https://github.com/elder-plinius/g0dm0d3/blob/main/functions/api/telemetry.ts"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_web,node_chatui,node_settings,node_state,node_telemetry,node_user toneBlue
class node_provider,node_classify,node_autotune,node_feedback,node_parseltongue,node_stm,node_ultra,node_consortium,node_hf toneAmber
class node_api,node_chatroute,node_local toneMint
class node_dataset,node_metadata,node_publisher,node_researchapi,node_reader,node_telemetryfn toneRose
```

## Components

### Chat Client

- [Web App](https://github.com/elder-plinius/g0dm0d3/blob/main/src/app/page.tsx): `src/app/page.tsx`
- [Chat Interface](https://github.com/elder-plinius/g0dm0d3/blob/main/src/components/ChatInput.tsx): `src/components/ChatInput.tsx`
- [Settings](https://github.com/elder-plinius/g0dm0d3/blob/main/src/components/SettingsModal.tsx): `src/components/SettingsModal.tsx`
- [Browser State](https://github.com/elder-plinius/g0dm0d3/blob/main/src/store/index.ts): `src/store/index.ts`
- [App Telemetry](https://github.com/elder-plinius/g0dm0d3/blob/main/src/lib/telemetry.ts): `src/lib/telemetry.ts`

### Generation Engines

- [Model Providers](https://github.com/elder-plinius/g0dm0d3/blob/main/src/lib/openrouter.ts): `src/lib/openrouter.ts`
- [Query Classification](https://github.com/elder-plinius/g0dm0d3/blob/main/src/lib/classify.ts): `src/lib/classify.ts`
- [AutoTune](https://github.com/elder-plinius/g0dm0d3/blob/main/src/lib/autotune.ts): `src/lib/autotune.ts`
- [Tuning Feedback](https://github.com/elder-plinius/g0dm0d3/blob/main/src/lib/autotune-feedback.ts): `src/lib/autotune-feedback.ts`
- [Parseltongue](https://github.com/elder-plinius/g0dm0d3/blob/main/src/lib/parseltongue.ts): `src/lib/parseltongue.ts`
- [STM Modules](https://github.com/elder-plinius/g0dm0d3/blob/main/src/stm/modules.ts): `src/stm/modules.ts`
- [ULTRAPLINIAN](https://github.com/elder-plinius/g0dm0d3/blob/main/api/lib/ultraplinian.ts): `api/lib/ultraplinian.ts`
- [Consortium Mode](https://github.com/elder-plinius/g0dm0d3/blob/main/api/lib/consortium.ts): `api/lib/consortium.ts`

### API Services

- [API Server](https://github.com/elder-plinius/g0dm0d3/blob/main/api/server.ts): `api/server.ts`
- [Chat API](https://github.com/elder-plinius/g0dm0d3/blob/main/api/routes/chat.ts): `api/routes/chat.ts`

### Research Data

- [Dataset Buffer](https://github.com/elder-plinius/g0dm0d3/blob/main/api/lib/dataset.ts): `api/lib/dataset.ts`
- [Metadata Buffer](https://github.com/elder-plinius/g0dm0d3/blob/main/api/lib/metadata.ts): `api/lib/metadata.ts`
- [HF Publisher](https://github.com/elder-plinius/g0dm0d3/blob/main/api/lib/hf-publisher.ts): `api/lib/hf-publisher.ts`
- [Research API](https://github.com/elder-plinius/g0dm0d3/blob/main/api/routes/research.ts): `api/routes/research.ts`
- [Corpus Reader](https://github.com/elder-plinius/g0dm0d3/blob/main/api/lib/hf-reader.ts): `api/lib/hf-reader.ts`
- [Telemetry Endpoint](https://github.com/elder-plinius/g0dm0d3/blob/main/functions/api/telemetry.ts): `functions/api/telemetry.ts`

### Other components

- **User**
- **Hugging Face**
- **Local Model Server**

## Connections

- User → Web App: opens (evidence: `src/app/page.tsx`)
- Web App → Chat Interface: renders (evidence: `src/app/page.tsx`)
- Web App → Settings: renders (evidence: `src/app/page.tsx`)
- Web App → Browser State: reads state (evidence: `src/app/page.tsx`)
- Chat Interface → Browser State: uses (evidence: `src/components/ChatInput.tsx`)
- Settings → Browser State: configures (evidence: `src/components/SettingsModal.tsx`)
- Chat Interface → Query Classification: classifies (evidence: `src/components/ChatInput.tsx`)
- Chat Interface → AutoTune: tunes parameters (evidence: `src/components/ChatInput.tsx`)
- Chat Interface → Parseltongue: transforms input (evidence: `src/components/ChatInput.tsx`)
- Chat Interface → Model Providers: sends requests (evidence: `src/components/ChatInput.tsx`)
- Model Providers → Local Model Server: calls optionally (evidence: `src/lib/openrouter.ts`)
- Model Providers → API Server: calls optionally (evidence: `src/lib/openrouter.ts`)
- AutoTune → Tuning Feedback: applies learning (evidence: `src/lib/autotune.ts`)
- Chat Interface → App Telemetry: records events (evidence: `src/components/ChatInput.tsx`)
- Web App → API Server: detects optionally (evidence: `src/app/page.tsx`)
- API Server → Chat API: routes requests (evidence: `api/server.ts`)
- Chat API → AutoTune: uses (evidence: `api/routes/chat.ts`)
- Chat API → Parseltongue: uses (evidence: `api/routes/chat.ts`)
- Chat API → STM Modules: uses (evidence: `api/routes/chat.ts`)
- Chat API → Model Providers: uses (evidence: `api/routes/chat.ts`)
- Chat API → ULTRAPLINIAN: uses (evidence: `api/routes/chat.ts`)
- Chat API → Consortium Mode: uses (evidence: `api/routes/chat.ts`)
- API Server → Research API: routes research (evidence: `api/server.ts`)
- Research API → Corpus Reader: queries corpus (evidence: `api/routes/research.ts`)
- Research API → Dataset Buffer: reads stats (evidence: `api/routes/research.ts`)
- Research API → Metadata Buffer: reads stats (evidence: `api/routes/research.ts`)
- Research API → HF Publisher: flushes buffers (evidence: `api/routes/research.ts`)
- Dataset Buffer → HF Publisher: registers store (evidence: `api/lib/dataset.ts`)
- Metadata Buffer → HF Publisher: registers store (evidence: `api/lib/metadata.ts`)
- HF Publisher → Hugging Face: publishes
- Corpus Reader → Hugging Face: reads corpus
- App Telemetry → Telemetry Endpoint: posts events (evidence: `README.md`)
- Telemetry Endpoint → Hugging Face: publishes metadata (evidence: `README.md`)
