Projects

Seven public projects, each with a tagged release, tests, and invented sample data. The data-center and facilities work comes first, then the energy and financial models.

dc-twin web explorer showing the timeline, alarms, and metrics of the composite reference scenario

dc-twin

Released · v0.2.0

A deterministic, capacity-constrained simulator for synthetic data-center electrical architectures.

Result: The same inputs and model version always reproduce the same SHA-256 result hash, and the reference scenarios match hand calculations committed independently of the engine.

Limitation: Models lossless active power against capacity constraints only — no voltage, frequency, protection, thermal behavior, or economics.

Python · FastAPI · PostgreSQL · plain JavaScript · Docker Compose

Validation results dashboard with quality score, issue metrics, filters, and row-level findings

Electrical Asset Validator

Released · v0.2.0

A self-hosted web app that validates CSV and XLSX electrical asset registers and diffs two revisions by stable asset tag.

Result: Both file formats go through exactly the same nine-column rule set, and every finding names the row and field it refers to.

Limitation: Optional shared-secret tokens rather than user accounts; processing is synchronous and bounded, and rules check data quality, not electrical-code compliance.

FastAPI · React + TypeScript · PostgreSQL · Docker Compose

Critical Facilities Manager

Released · v0.2.0

An operations and commissioning platform for critical facilities: a role-guarded REST API with a plain web interface over it.

Result: Mutual-exclusion constraints stop simultaneous maintenance on redundant equipment — the second order is rejected with a 409 naming the constraint and the conflicting order.

Limitation: Tokens are shared secrets rather than user accounts, and reads are installation-wide even though write authority is scoped per site.

Python · FastAPI · SQLAlchemy with Alembic · PostgreSQL or SQLite · plain JavaScript

Results page with hand-drawn SVG charts of PV production, prices, battery flows, and state of charge

PV-BESS dispatch model

Released · v0.1.0

A dispatch and investment model for solar-plus-battery plants, solved as a mixed-integer program with HiGHS.

Result: Solver benchmarks per horizon are published including the full-year run that did not finish, together with the script that reproduces the attempt.

Limitation: Dispatch plus unlevered, pre-tax investment math only — no electrical design, no price forecasting, and no taxes, debt, or grants.

Python · SciPy MILP (HiGHS) · optional FastAPI API · dependency-free results page

Energy Investment Lab

Released · v0.1.0

A cash-flow and financing model for energy assets, in plain Python with no runtime dependencies.

Result: The seeded Monte Carlo is reproducible number for number, and every worked example in the docs is hand-calculated and pinned by tests.

Limitation: Sensitivities are one-at-a-time single-parameter variants, and nothing it produces is investment advice.

plain Python, zero runtime dependencies · CLI

Quant Risk Engine

Released · v0.2.0

A reproducible portfolio-analytics and market-risk engine for public securities — deliberately not a prediction tool.

Result: The backtest interface exposes only observations strictly preceding the decision date, and a deliberately cheating policy in the tests prices what peeking would be worth.

Limitation: Measures what a supplied price history did, under stated conventions — it forecasts nothing and recommends nothing.

Python · NumPy and SciPy as the only runtime dependencies · CLI

Sudoku Instant gameplay on a mobile viewport with the grid, timer, and number pad

Sudoku Instant

Released · v1.1.0

A sudoku game as an installable progressive web app with six difficulty levels, offline play, and full keyboard support.

Result: All 24 puzzles are confirmed by a bounded solver to have exactly one solution, and Playwright plays the app through on desktop and mobile viewports.

Limitation: Difficulty is approximated by clue count rather than rated solving techniques, and progress lives in one browser profile with no sync.

plain JavaScript, no framework · service worker · Playwright tests