# professorlowkey/localrepo architecture

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

- Interactive diagram: https://gitdiagram.com/professorlowkey/localrepo
- Repository: https://github.com/professorlowkey/localrepo

## Overview

This repository is a small collection of browser-based pages: a world-clock/stopwatch interface and a physics-based character playground. The clock workflow updates local and city time displays on a timer, with format and tab controls; the stopwatch supports start, pause, laps, and reset. In the playground, keyboard or on-screen input feeds character control and a fixed-step physics simulation. The excerpts show simulation control probing terrain, but do not show the full rendering or page wiring, so those links are omitted.

Main entry points: [`playground.js`](https://github.com/professorlowkey/localrepo/blob/main/playground.js) (Character control), [`script.js`](https://github.com/professorlowkey/localrepo/blob/main/script.js) (Clock updates)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_clocks["Clock Tools"]
  node_clock_updates["Clock updates<br/>[script.js]"]
  node_clock_display["Clock display<br/>[script.js]"]
  node_clock_controls["Clock controls<br/>[script.js]"]
  node_stopwatch["Stopwatch<br/>[script.js]"]
end

subgraph group_playground["Physics Playground"]
  node_play_input["Input handling<br/>[playground.js]"]
  node_character_control["Character control<br/>[playground.js]"]
  node_terrain["Terrain probing<br/>[playground.js]"]
  node_physics["Physics step<br/>[playground.js]"]
end

node_clock_user(("Clock user"))
node_play_user(("Playground user"))

node_clock_user -->|"changes format"| node_clock_controls
node_clock_updates -->|"updates displays"| node_clock_display
node_clock_user -->|"controls"| node_stopwatch
node_play_user -->|"provides input"| node_play_input
node_physics -->|"calls control"| node_character_control
node_character_control -->|"probes ground"| node_terrain

click node_clock_updates "https://github.com/professorlowkey/localrepo/blob/main/script.js"
click node_clock_display "https://github.com/professorlowkey/localrepo/blob/main/script.js"
click node_clock_controls "https://github.com/professorlowkey/localrepo/blob/main/script.js"
click node_stopwatch "https://github.com/professorlowkey/localrepo/blob/main/script.js"
click node_play_input "https://github.com/professorlowkey/localrepo/blob/main/playground.js"
click node_character_control "https://github.com/professorlowkey/localrepo/blob/main/playground.js"
click node_terrain "https://github.com/professorlowkey/localrepo/blob/main/playground.js"
click node_physics "https://github.com/professorlowkey/localrepo/blob/main/playground.js"

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_clock_updates,node_clock_display,node_clock_controls,node_stopwatch,node_clock_user,node_play_user toneBlue
class node_play_input,node_character_control,node_terrain,node_physics toneAmber
```

## Components

### Clock Tools

- [Clock updates](https://github.com/professorlowkey/localrepo/blob/main/script.js): `script.js`
- [Clock display](https://github.com/professorlowkey/localrepo/blob/main/script.js): `script.js`
- [Clock controls](https://github.com/professorlowkey/localrepo/blob/main/script.js): `script.js`
- [Stopwatch](https://github.com/professorlowkey/localrepo/blob/main/script.js): `script.js`

### Physics Playground

- [Input handling](https://github.com/professorlowkey/localrepo/blob/main/playground.js): `playground.js`
- [Character control](https://github.com/professorlowkey/localrepo/blob/main/playground.js): `playground.js`
- [Terrain probing](https://github.com/professorlowkey/localrepo/blob/main/playground.js): `playground.js`
- [Physics step](https://github.com/professorlowkey/localrepo/blob/main/playground.js): `playground.js`

### Other components

- **Clock user**
- **Playground user**

## Connections

- Clock user → Clock controls: changes format (evidence: `script.js`)
- Clock updates → Clock display: updates displays (evidence: `script.js`)
- Clock user → Stopwatch: controls (evidence: `script.js`)
- Playground user → Input handling: provides input (evidence: `playground.js`)
- Physics step → Character control: calls control (evidence: `playground.js`)
- Character control → Terrain probing: probes ground (evidence: `playground.js`)
