Tech stack
Technology explorer
41 technologies in ten categories. Used in projects (34) means the technology appears in the work behind one of the case studies. Familiar means I know it, but this site does not claim it as project evidence.
41 of 41 technologies
- Used in projects
Claude Code
AI Models and Coding Assistants
An AI coding agent that runs in the terminal and in editors.
- How it is used
- Driven as a local runtime by the BRO assistant under strict read-only controls, and used with a project-scoped skill in the video pipeline.
- Role in my workflow
- Day-to-day AI-assisted engineering, and the agent runtime that BRO wraps with approvals.
- Familiar
ChatGPT
AI Models and Coding Assistants
A general-purpose AI assistant.
- How it is used
- No direct project evidence in the material behind this site. Listed as familiarity only.
- Role in my workflow
- Familiar as a second opinion and drafting tool.
- Projects
- None claimed
- Used in projects
Whisper (faster-whisper)
AI Models and Coding Assistants
A fast GPU implementation of the Whisper speech recognition model.
- How it is used
- Transcribes footage with word timings, and re-transcribes narration and final videos so quality checks can compare them with the script.
- Role in my workflow
- The transcript that edit decisions, captions and QC are built on.
- Projects
- Used in projects
Chatterbox (local voice model)
AI Models and Coding Assistants
A text-to-speech model that runs entirely on the local machine.
- How it is used
- Generates narration offline, line by line, with scoring against the script and a bounded regeneration loop.
- Role in my workflow
- Local narration, with nothing leaving the machine.
- Projects
- Used in projects
TypeScript
Programming Languages
JavaScript with static types.
- How it is used
- The financial engine and app runtime of the Android app, the video overlay project, and this website.
- Role in my workflow
- Primary language for typed application code.
- Used in projects
JavaScript
Programming Languages
The language of the web and of Node.js services.
- How it is used
- The outage alert service is written in plain JavaScript on Node.js.
- Role in my workflow
- Service code where a small, dependency-light runtime is enough.
- Projects
- Used in projects
Python
Programming Languages
A general-purpose scripting language.
- How it is used
- Command-line pipeline stages, test harnesses, operational helper scripts and the assistant backend.
- Role in my workflow
- Glue, tooling, tests and local services.
- Used in projects
Java
Programming Languages
A statically typed language and the long-standing language of Android native code.
- How it is used
- A small native Capacitor plugin that wraps and unwraps the encryption key with the Android Keystore.
- Role in my workflow
- Native Android code where the web layer cannot reach.
- Projects
- Familiar
Kotlin
Programming Languages
A modern language for Android and the JVM.
- How it is used
- No direct project evidence in the material behind this site. Listed as familiarity only.
- Role in my workflow
- Familiar from the Android ecosystem.
- Projects
- None claimed
- Used in projects
Bash
Programming Languages
The standard Unix shell and scripting language.
- How it is used
- Install, rollback and backup scripts for a Linux service.
- Role in my workflow
- Operational scripts that need to be short and auditable.
- Projects
- Used in projects
PowerShell
Programming Languages
Microsoft’s shell and scripting language.
- How it is used
- Manifest-driven deployment and rollback scripts for the assistant on Windows, with restarts kept as a separate step.
- Role in my workflow
- Windows administration and scripted releases.
- Projects
- Used in projects
React
Frameworks
A library for building user interfaces from components.
- How it is used
- The Android app’s interface, the animated video overlays, and the interactive islands on this site.
- Role in my workflow
- Interactive interfaces and rendered video graphics.
- Used in projects
Node.js
Frameworks
A JavaScript runtime.
- How it is used
- Runs the alert service, the test suites of the Android app, and the build tooling for the video overlays.
- Role in my workflow
- Runtime for services, tests and builds.
- Used in projects
Express
Frameworks
A minimal web framework for Node.js.
- How it is used
- Serves the admin dashboard and its API in the outage alert service.
- Role in my workflow
- Small HTTP surface bound to loopback.
- Projects
- Used in projects
Vite
Frameworks
A fast front-end build tool.
- How it is used
- Builds the web bundle that is synced into the Android project.
- Role in my workflow
- Release and test bundles.
- Projects
- Used in projects
Capacitor
Mobile Development
A runtime that packages a web app as a native mobile app.
- How it is used
- Hosts the React interface in an Android WebView and bridges to a native plugin.
- Role in my workflow
- Web UI plus native capabilities in one Android app.
- Projects
- Used in projects
Android SDK
Mobile Development
The platform tools and libraries for building Android apps.
- How it is used
- Builds the app against a current platform level, with an explicit release configuration check.
- Role in my workflow
- Native build, packaging and device testing.
- Projects
- Used in projects
Gradle
Mobile Development
The build system used by Android projects.
- How it is used
- Builds debug and release variants, with release signing read from outside the repository.
- Role in my workflow
- Android builds locally and in CI.
- Projects
- Used in projects
Android Keystore
Mobile Development
Hardware-backed or system-protected key storage on Android.
- How it is used
- Wraps the data key that encrypts every stored file, so the key never sits next to the data.
- Role in my workflow
- Key protection for encrypted local storage.
- Projects
- Used in projects
Telegram Bot API
Automation and Integration
The HTTP interface for building Telegram bots.
- How it is used
- Subscriber and admin commands by long polling, and alert delivery, behind a dry-run switch and an allowlist.
- Role in my workflow
- Delivery channel for alerts.
- Projects
- Used in projects
Windows Task Scheduler
Automation and Integration
The built-in scheduler and service launcher on Windows.
- How it is used
- Starts the assistant backend at sign-in with a restart policy.
- Role in my workflow
- Supervision and scheduled start on a Windows host.
- Projects
- Familiar
n8n
Automation and Integration
A workflow automation platform.
- How it is used
- No direct project evidence in the material behind this site. Listed as familiarity only.
- Role in my workflow
- Familiar as a way to connect systems with visual workflows.
- Projects
- None claimed
- Used in projects
SQLite
Databases
A self-contained SQL database engine.
- How it is used
- Compiled to WebAssembly and run inside the Android app as its only database, with migrations.
- Role in my workflow
- Local, offline structured storage.
- Projects
- Used in projects
Redis (hosted, REST client)
Databases
An in-memory key-value store.
- How it is used
- An optional hosted store for the alert service, with local JSON files as the fallback.
- Role in my workflow
- Optional remote state, kept behind a small interface.
- Projects
- Used in projects
Linux (Ubuntu)
Cloud and Infrastructure
The open-source operating system most servers run.
- How it is used
- Target for the alert service: an unprivileged service user, a data directory and scripted installs.
- Role in my workflow
- Server operating system for small services.
- Projects
- Used in projects
systemd
Cloud and Infrastructure
The Linux service manager.
- How it is used
- A hardened unit: restart on failure, no new privileges, strict file system protection and writes limited to one directory.
- Role in my workflow
- Process supervision and sandboxing.
- Projects
- Used in projects
Windows
Cloud and Infrastructure
Microsoft’s desktop and server operating system.
- How it is used
- Host for the assistant: scheduled tasks, Job Objects that clean up worker process trees, and PowerShell releases.
- Role in my workflow
- Primary desktop environment for local automation.
- Projects
- Familiar
Cloudflare
Cloud and Infrastructure
A network, DNS and edge platform with Workers and access controls.
- How it is used
- No direct project evidence in the material behind this site. Listed as familiarity only.
- Role in my workflow
- Familiar. Specific products such as Workers, Access and DNS are not claimed here.
- Projects
- None claimed
- Familiar
Docker
Cloud and Infrastructure
Containers for packaging and running software.
- How it is used
- No direct project evidence in the material behind this site. Listed as familiarity only.
- Role in my workflow
- Familiar from the wider ecosystem.
- Projects
- None claimed
- Familiar
Tailscale
Cloud and Infrastructure
A mesh VPN for private access between devices.
- How it is used
- No direct project evidence in the material behind this site. Listed as familiarity only.
- Role in my workflow
- Familiar for private access to services.
- Projects
- None claimed
- Familiar
Caddy
Cloud and Infrastructure
A web server with automatic HTTPS.
- How it is used
- Deployment files for this site are written for Caddy, but have not been used on a server yet.
- Role in my workflow
- Familiar. Planned host for this site.
- Projects
- None claimed
- Used in projects
Git
DevOps and Version Control
Distributed version control.
- How it is used
- Release builds from tagged commits, rollback records and branch-based workflows.
- Role in my workflow
- History, releases and reviewable change.
- Projects
- Used in projects
GitHub
DevOps and Version Control
Hosting for Git repositories and collaboration.
- How it is used
- Pull request workflow with continuous integration on the Android app’s repository.
- Role in my workflow
- Reviewed changes and automated checks.
- Projects
- Used in projects
GitHub Actions
DevOps and Version Control
Continuous integration and automation on GitHub.
- How it is used
- Runs tests, translation checks and an unsigned release build with a read-only token and no secrets.
- Role in my workflow
- Automated verification on every pull request.
- Projects
- Used in projects
VS Code
DevOps and Version Control
A widely used code editor with an extension API.
- How it is used
- A small read-only extension that shows live agent session activity inside the editor.
- Role in my workflow
- Editor, and a host for a custom monitoring panel.
- Projects
- Used in projects
AES-256-GCM encryption
Security and Testing
Authenticated encryption that detects tampering as well as hiding content.
- How it is used
- Encrypts every stored file in the Android app, with a random IV per file and a key held by the Keystore.
- Role in my workflow
- Protection of data at rest.
- Projects
- Used in projects
Playwright
Security and Testing
Browser automation for end-to-end tests.
- How it is used
- A headless browser suite for the Android app’s interface, and the end-to-end tests of this site.
- Role in my workflow
- Repeatable end-to-end and visual checks.
- Projects
- Used in projects
pytest
Security and Testing
A testing framework for Python.
- How it is used
- Test suites for the assistant runtime and its security properties.
- Role in my workflow
- Regression and guard tests.
- Projects
- Used in projects
Node.js test runner
Security and Testing
The test runner built into Node.js.
- How it is used
- Unit and scenario tests for currency, translations, storage fail-safe behaviour and the financial engine.
- Role in my workflow
- Fast tests with no extra framework.
- Projects
- Used in projects
FFmpeg
Creative and Video Tools
The standard toolkit for processing audio and video.
- How it is used
- Scene detection, rendering with NVENC hardware encoding, loudness normalisation and QC checks.
- Role in my workflow
- The rendering and measurement engine.
- Projects
- Used in projects
Remotion
Creative and Video Tools
A framework for creating videos with React.
- How it is used
- An isolated project renders titles, lower thirds and end cards, with an audit mode used by visual QA. Evaluation use only.
- Role in my workflow
- Programmatic motion graphics.
- Projects