Skip to content
View obileonardo's full-sized avatar
💭
Building products for critical industries.
💭
Building products for critical industries.

Sponsoring

@chemelli74

Block or report obileonardo

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
obileonardo/README.md
Pixel animation: one riverside street from 1450 to 2026. Timber workshops and a printing press give way to windmills, a steam engine, mills, railways, electric light, cars and planes, office towers and finally glass towers, wind turbines and delivery drones. A drone flies into a doorway of light and the story begins again.

Hail, traveller. I'm Elvis

I'm a Design Engineer and I've been designing products since 2019. I co-founded FiveBlooded, the studio building Mazerance, its psychological co-op strategy game. I also founded Halfwings, the software and hardware development partner for technology businesses. Figma featured my work at Config 2022, and I've mentored 500+ design students across multiple platforms.

I now reside in Nairobi, Kenya, where I play chess with locals, hike on weekends and sometimes go on safari to experience nature.

The Ledger

Contribution chart: a year of contributions, one square per day, brighter for busier days.This year's numbers: contributions, commits, pull requests, releases and stars.

The Arsenal

Hearth: A native macOS menu-bar companion for Home Assistant.Clepso: A native macOS menu-bar monitor for your AI coding agents' usage limits (Claude Code and Codex). Local-first, private by design.Capsa: A local-first library for what you learn about working with AI, with the evidence each item came from. App, MCP server and command line.
Builders World: A living, browser-based world set in real African cities, where your GitHub commits are your currency.Mazerance: A psychological co-op strategy game, built at FiveBlooded.Halfwings: The software and hardware development partner for technology businesses.

Hold the Keep

The state of the castle: its age, the keep, the walls, recent deeds, the ranking of players, and the chronicle of fallen castles. A1: open ground.B1: open ground.C1: open ground.D1: open ground.E1: open ground.F1: open ground.G1: open ground.
A2: open ground.B2: open ground beside the castle. Build here.C2: open ground beside the castle. Build here.D2: open ground beside the castle. Build here.E2: open ground beside the castle. Build here.F2: open ground.G2: open ground.
A3: open ground beside the castle. Build here.B3: a stone. Faces open ground: fire here.C3: a tower. Faces open ground: fire here.D3: a stone. Faces open ground: fire here.E3: a tower. Faces open ground: fire here.F3: open ground beside the castle. Build here.G3: open ground.
A4: open ground.B4: open ground beside the castle. Build here.C4: a stone. Faces open ground: fire here.D4: the keep, 5 of 5 strength. Walled in.E4: a stone. Faces open ground: fire here.F4: open ground beside the castle. Build here.G4: open ground.
A5: open ground.B5: open ground beside the castle. Build here.C5: a tower. Faces open ground: fire here.D5: a stone. Faces open ground: fire here.E5: a tower. Faces open ground: fire here.F5: open ground beside the castle. Build here.G5: open ground.
A6: open ground.B6: open ground.C6: open ground beside the castle. Build here.D6: open ground beside the castle. Build here.E6: open ground beside the castle. Build here.F6: open ground.G6: open ground.
A7: open ground.B7: open ground.C7: open ground.D7: open ground.E7: open ground.F7: open ground.G7: open ground.
The forge. The bellows are cold.Forge: add iron.Forge: add ember.Forge: add rune.

The Armoury

The Armoury, 29 tools: Figma, Illustrator, Photoshop, Framer, Unreal Engine, Blender, Three.js, Swift, SwiftUI, TypeScript, Rust, Next.js, Python, JavaScript, React, Ruby, Shell, Model Context Protocol, Vite, Playwright, Vercel, Supabase, Docker, GitHub Actions, Home Assistant, Homebrew, PostgreSQL, SQLite, Redis. The full list, with how each is used, is at obileonardo/armoury.

The Chronicle

The Chronicle: 2026, Founder, Halfwings; 2025, Co-founder, FiveBlooded; 2022, Top Creator & Designer, Figma Config; 2022, Mentor, ADPList and other platforms; 2019, Product Designer, Independent and studios.

Latest Dispatches

Capsa v0.2.0, 31 October 2026 Capsa v0.1.0, 30 October 2026 Clepso v0.4.0-alpha.2, 23 October 2026 Clepso v0.4.0-alpha.1, 22 October 2026 Clepso v0.3.0-alpha.3, 22 October 2026

Elsewhere

Portfolio: elvisobi.comX: @TheObiLeonardLinkedIn: in/elvisobiContra: elvisobi
Email: contact@elvisobi.com

Pinned Loading

  1. hearth-macos hearth-macos Public

    A native macOS menu-bar companion for Home Assistant.

    Swift 12 1

  2. clepso clepso Public

    Clepso: a native macOS menu-bar monitor for your AI coding agents' usage limits (Claude Code and Codex). Local-first, private by design.

    Swift 5

  3. builders-world/builders-world builders-world/builders-world Public

    A living, browser-based world set in real African cities, where your GitHub commits are your currency.

    JavaScript

  4. Home Assistant recipes: all-in elect... Home Assistant recipes: all-in electricity prices for Omnibattery, energy sums that don't spike the Energy dashboard, and daily 3D-printer time
    1
    # Home Assistant recipes
    2
    
                  
    3
    Three small Home Assistant configs that came out of answers I posted on GitHub Discussions recently. Each one fixes a problem someone ran into, so I've cleaned them up into a form you can copy. Each one was worked out from the project's source code.
    4
    
                  
    5
    Each file goes in `configuration.yaml`. If you already have a `template:` or `sensor:` section, add the new entries under it rather than adding a second one, then restart Home Assistant.