Oscar Johnson
Web software projects, tools, and experiments.
This is a portfolio and archive for projects I have built while learning frontend, backend, systems, and app development. Some are polished tools, some are older projects cleaned up enough to run here, and some show the path between the two.
Why this site exists
My older portfolio could show that projects existed, but it did not make them easy to try. This version is meant to host the apps, keep the source linked, and give each project enough context to show what I was trying to learn or solve.
Projects
Work that can be opened, tested, or inspected.
Each card links to a project page. The page may contain a working app, a demo, a technical writeup, a download, or a cleaned-up version of an older project.
TexVoice
A tool for turning long LaTeX or plain-text notes into audio, chapters, logs, and browser playback.
> terminal-fx --mode nebula . * . * ~~~\___/~~~~~\___/~~ .* ANSI FIELD *. [fps:45] [diff:on]
Terminal FX
A Rust terminal wallpaper engine with animated ASCII modes, ANSI rendering, and performance-focused terminal visuals.
Round
02
BPM
105
Draw
TAP · AIM · FIRE
Rhythm Sync
A real-time rhythm duel game with WebSocket match state, beat timing, nerves, accuracy, taunts, and d100 shootouts.
Finance Lab
$12,840
+28.4% simulated
Cash
$1.2k
AAPL
+12%
NVDA
+41%
VOO
+8%
Finance Lab
A stock-buying simulator for testing what an account would look like after buying specific stocks at specific prices and dates.
Toolbox
Small utilities, scripts, converters, and calculators collected into one place instead of scattered folders.
Arcade
Browser games built from scratch: Blackjack, Snake, and Flappy Bird. Replaced the original Wordle project page.
Target
21
Pull
2
Artifact
III
House Rules
A blackjack roguelite about pull choices, table targets, boss rules, artifacts, shops, and saved run history.
Notes
A portfolio, but also a place to keep projects alive.
Older work stays useful
Projects can stay visible without pretending the first version was perfect. The original source still matters, but the page can run in the current site.
Tools can grow into systems
Projects like TexVoice can start as one app and later connect to saved notes, generated audio, PDFs, logs, or a small backend library.