I build automation and full-stack tools for real operations, and I ship them tested, documented, and CI-green — not as demos.
IT Manager with an AS & BS in Computer Science (Full Sail). I blend hands-on engineering with leadership: pricing and vendor data, message and photo archives, video and market-data pipelines, Android apps, and the homelab they all run on.
- 💼 IT Manager passionate about technology, infrastructure, and people — and about removing the manual work in between.
- 🎓 AS & BS in Computer Science, with weight in Mobile Application Development.
- 🛠️ Builds automation and full-stack tools for real operations: pricing and vendor data, message and photo archives, video and market-data pipelines.
- 🧪 Ships tested, documented tools with CI. The numbers in Featured Projects below are from the repos themselves, not marketing copy.
- 🏠 Runs a homelab stack (Unraid, Docker) for media, backups, and automation, plus functional 3D printing on a Bambu Lab P1S.
- 📍 Fredericksburg / Spotsylvania, Virginia. See the work live at justinlyons.dev.
Leadership, in one line: Agile delivery, team building, project management, and mentorship — the work above is what that looks like in practice.
| Project | What it does | Proof |
|---|---|---|
| repo-sync | Dozens of repos on GitHub, dozens of folders on disk — tells you which is which, with metadata reports and Markdown export. | Python, GitHub API · 132 tests |
| sms-toolkit | Your backup app copies everything, every day. This keeps only what's new — deduplicated SMS/MMS archives in a chat-style viewer. | 1,146,266 items processed, 99.78% duplicates dropped · 184/184 tests |
| gas-auditor | Google hides some of your scripts from Drive. This finds them anyway — inventory and audit for Google Apps Script projects. | Python, Flask, Google APIs · CLI + dashboard + Apps Script app |
| google_maps_poi | Drop a marker, add a photo and category, search, edit, get directions. A POI is a real database row, not EXIF hidden in a JPEG. | Kotlin, Compose, Room, Maps SDK |
| video-optimizer-suite | HEVC video-library optimizer: scan, convert, verify, then replace — only if verified. DVD and camcorder ingest included. | Python, ffmpeg/x265, SQLite, Flask dashboard |
| voxel-portfolio | A portfolio you walk through: a voxel world in the browser, with real projects to open. | TypeScript, Svelte 5, Three.js |
More, in the same spirit: photo-stitcher (FastFoto scan wizard, with a real demo GIF in the repo), gsa-vendor-toolkit (GSA vendor price-list pipeline), and kalshi-recorder (Kalshi order-book recorder to Parquet). Full list on justinlyons.dev.
As of Oct 29, 2026: 61 public repos counted (the one fork, MagiskOnWSA, excluded) · 5,475,378 bytes of code · 150,017 lines across 16 languages. Shares below are share of code by bytes — not share of repos.
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▃▂█▄▁▁
Sep 30 - Oct 29, 2026 · 81 public events · busiest day Oct 26 (46)
Python ████████████ 61.9% 3,389,611 bytes · 34 repos
JavaScript ██ 9.6% 527,963 bytes · 10 repos
Kotlin ██ 7.9% 431,793 bytes · 11 repos
HTML █ 4.5% 249,015 bytes · 14 repos
Swift █ 3.4% 185,544 bytes · 6 repos
CSS █ 3.2% 176,483 bytes · 8 repos
PowerShell █ 3.0% 164,948 bytes · 3 repos
XML █ 2.9% 160,777 bytes · 12 repos
TypeScript █ 1.5% 81,877 bytes · 2 repos
Svelte █ 0.6% 34,583 bytes · 1 repo
Other █ 1.3% 72,784 bytes · 6 repos
Counted from shallow clones of all 61 public non-fork repos on Oct 29, 2026: code files only — docs, data/config, images, and lockfiles excluded; full per-repo totals in code-share.json. Cross-checked against GitHub's own language-bytes API for 5 repos: exact for 3, within 9% for jpl-dev (generated CSS) and 2% for voxel-portfolio. For contrast, by primary-language repo count: Python 30 repos, Kotlin 11, Swift 5, JavaScript 4 (of 60 repos with a detected primary language).
Beyond code, I maintain a home server environment running Unraid and Docker for media, backups, and automation. I'm also heavily involved in functional 3D printing using a Bambu Lab P1S to design parametric models and custom organizers — see openscad-toolkit for the calibration prints and the sliding-lid box that actually fits.
- 📦 Pushed 0 commits to
enonymous1/jpl-devonmain— Oct 28, 2026 - 🌱 Created branch
maininenonymous1/excel-report-maker— Oct 27, 2026 - 🌱 Created branch
maininenonymous1/remnant2-save-toolkit— Oct 27, 2026 - 🌱 Created branch
maininenonymous1/epic-free-games-tracker— Oct 27, 2026 - 📦 Pushed 0 commits to
enonymous1/gsa-vendor-toolkitonmain— Oct 27, 2026
"Code is like humor. When you have to explain it, it's bad."
— Cory House



