Skip to content
< ovo7portfolio

โ–ˆ

St. Louis, MO - CST/EST

Hi! I've been building web applications for over 10 years.

01 // Front End02 // Back End03 // Database & Ops04 // AI Lab05 // Timeline06 // Client Work07 // Projects

01Client side

Front End_

Staff consoles, storefronts, and marketing sites that people use every day.

ovo7.space/portfolio<header><main>marginpadding.cards {display: grid;grid-template-columns: repeat(3, 1fr);gap: 14px;}ComponentsAppLayoutHeaderPageCard key="1"Card key="2"Card key="3"Footer
  1. Foundations

    • HTML
    • CSS
    • JavaScript

    Semantic markup, responsive layouts, keyboard & screen-reader support.

  2. Frameworks

    • React
    • Next.js
    • Astro

    React dashboards, Redux, Next.js, SEO friendly ISR, and this site, on Astro.

02Server side

Back End_

APIs backing real services.

Bookings.php<?phpfunction update($id, $data) {$b = $this->em->find(Booking::class, $id);$b->setStatus($data['status']);$this->em->flush();}router.jsconst app = express()app.post('/v1/quotes',requireUser,validate(quoteSchema),createQuote)app.listen(PORT)quote.tstype Quote = {listingId: stringnights: numbertotalCents: numberstatus: 'open' | 'booked'}$ tail -f access.logGET/v1/listings/popular20014msPOST/v1/quotes20138msGET/v1/listings/map20019msPOST/v1/quotes/q8f3/book20061msPOST/webhooks/stripe2009msGET/v1/reservations/r2c920022msPOST/api/v1/leads/uploadNew20287msGET/api/v1/leads/roundrobin20031msPATCH/v1/listings/l41/disable20027msPOST/v1/bookings/update20044msGET/v1/conversations/unread20012msPOST/v1/reservations/r2c9/payment20053msGET/v1/listings/popular20014msPOST/v1/quotes20138msGET/v1/listings/map20019msPOST/v1/quotes/q8f3/book20061msPOST/webhooks/stripe2009msGET/v1/reservations/r2c920022msPOST/api/v1/leads/uploadNew20287msGET/api/v1/leads/roundrobin20031msPATCH/v1/listings/l41/disable20027msPOST/v1/bookings/update20044msGET/v1/conversations/unread20012msPOST/v1/reservations/r2c9/payment20053ms
  1. PHP

    • PHP
    • CodeIgniter
    • Doctrine
    • Drupal
    • WordPress

    Operational APIs built for staff, clients, and other businesses.

  2. Node

    • Node.js
    • Express
    • Stripe

    Lightweight Node servers powering real business.

  3. TypeScript

    • TypeScript
    • Joi
    • Jest

    My preference over JavaScript.

resortsidint pkcompany_idintnamevarcharmin_staysmallintunitsidint pkresort_idintnamevarcharbedroomsdecimaldefault_ratedecimallistingsidint pkunit_idintexternal_idvarcharupdated_ondatetimemembershipsidint pkmember_idintaccount_novarcharlevelvarcharguestsidint pkfirstnamevarcharlastnamevarcharemailvarcharbookingsidint pkunit_idintguest_idintcheck_indatetimecheck_outdatetimestatussmallintpoint_usagesidint pkbooking_idintpoint_set_idintamountintpoint_setsidint pkmembership_idintyearvarcharearnedintusedintfinancesidint pkbooking_idintkindvarcharamountdecimalchecksidint pkmember_idintamountdecimalissued_ondatetimemembersidint pkemailvarcharlastnamevarchar

03Storage + infra

Database & Ops_

Schemas, pipelines, and the servers they all run on.

developmentproductiontestnpm testbuilddocker builddeploycloud runweb-01nginxapp-01php-fpmapi-01nodedb-01mariadbci-01runner
  1. Databases

    • MySQL
    • Firestore
    • ArangoDB
    • MongoDB
    • SQLite

    No hard preference - often the work dictates the requirement.

  2. CI/CD

    • GitHub
    • Buddy
    • Docker

    Branch-per-environment pipelines and automated test suites.

  3. DevOps & Servers

    • Cloud Run
    • DigitalOcean
    • Acquia
    • Pantheon
    • WP Engine
    • Sentry

    Containers on Google Cloud, droplets on DigitalOcean, managed Drupal and WordPress hosts, and plain SSH when that is what the client has.

04Orchestration

AI Lab_

I believe natural language and design documents are the future of programming, but you still need somebody who knows the ins and outs.

  1. Agentic SDLC

    • Claude
    • Codex
    • Muse
    • Grok
    • Ollama
    • T3

    No vendor lock here.

  2. Zero Trust

    Agents are smart, but they don't think like humans - and it's important to have an engineer who knows that.

  3. Vibe Coding

    It's fun, but doesn't scale for enterprise. As models get smarter, I regularly test their limits to ensure delivered quality doesn't suffer.

Timeline

  1. 2016 - 2018

    VMG Resorts

    Junior Developer

    Custom CMS workflows and operational tools

    • Tech - PHP, MySQL, React, JQuery
    • Env - Github, DigitalOcean
  2. 2018 - 2020

    We The Family Resorts

    Full Stack Developer

    Resort listings and customer facing booking tools

    • Tech - NodeJS, NextJS
    • Env - Github, Google Cloud Platform
  3. 2020 - 2022

    Luxorts LLC

    Full Stack Developer

    Business systems, lead distribution, and legacy modernization

    • Tech - NodeJS, NextJS
    • Env - Github, Google Cloud Platform
  4. 2024 - 2026

    Spry Digital

    Full Stack Developer

    Enterprise web platforms and live sales funnels

    • Tech - PHP, Drupal, Wordpress, React
    • Env - Acquia, Pantheon, WPEngine, private servers

Client Work

Spry Digital

the80scruise.com_
The 80s Cruise homepage with a gold sailing plaque over a drummer on a dark stage

01 / 07

Entertainment Cruise Productions

The 80s Cruise

WP Theming & maintenance

Visit site >
the90scruise.com_
The 90s Cruise homepage with a neon concert photo and the words The Freshest 90s Party

02 / 07

Entertainment Cruise Productions

The 90s Cruise

WP Theming & maintenance

Visit site >
comicconthecruise.com_
Comic-Con The Cruise homepage with fans in captain hats under a banner reading The Ultimate Fan Adventure

03 / 07

Entertainment Cruise Productions

Comic-Con The Cruise

WP Theming & maintenance

Visit site >
startrekthecruise.com_
Star Trek The Cruise homepage with a neon plaque for the February 2027 voyage

04 / 07

Entertainment Cruise Productions

Star Trek The Cruise

WP Theming & maintenance

Visit site >
greaterstlinc.com_
Greater St. Louis Inc homepage with the logo over a river and forest video

05 / 07

Greater St. Louis Inc

PHP Features & Ops

Visit site >
naeyc.org_
NAEYC homepage with the association name, educator photos, and a conference banner

06 / 07

NAEYC

PHP Features & Ops

Visit site >
optimum.com_
Optimum homepage with an address availability checker and a 500 Mbps offer

07 / 07

Optimum

PHP + React Funnels

Visit site >

Projects

codebreaker.ovo7.space_
Codebreaker: a dark terminal with a hex code matrix, a 60 second breach timer, and injection vectors

01 / 04

Codebreaker

Cyberpunk 2077 inspired hacking minigame

Randomly generated hex sequences in a code matrix; load them in the correct order before time runs out. Built with NextJS and React.

View project >
ovo7.space/artillery_
Artillery: a dark solar system inside a blue ring, with projectile trails and alien ships closing in

02 / 04

Artillery

Browser based orbital artillery

Defend your planet from aliens in a procedural 2D solar system.

View project >
atlas.ovo7.space_
Arch Atlas alluvial view of file imports and exports weighted by lines of code

03 / 04

Arch Atlas

Software architecture visualizer

Maps imported lines of code to weighted alluvial bands, with various lenses to identify problems. Runs in the web, locally via CLI, or as a VSCode extension.

View project >
Coming soon_
Glyphcast scene of blocky buildings and a field drawn as ASCII characters under a dark sky

04 / 04

Untitled ASCII Game

Agent maintained WebGL2 graphics lib

Allows rendering various interactive environments as text. Fully portable - works as an ambient background for websites.

Soon

Contact

You can message the email below and it will probably be forwarded to me. You know how gmail is.

contact@ovo7.space

Or have a look around! I have a blog that I don't use, some games, and a couple of personal tools.

copyright (c) nobody

last modified 10 / 31 / 2026

built with astro (opens in a new tab) & tailwind (opens in a new tab)

everything here is meant to be for entertainment or educational purposes. if i have used your content and you feel it does not fall under "fair use" contact me and i will remove it

Click to look ยท WASD to move ยท Scroll up to return