greg@odd-doczsh120×40
● onlineCDT
greg.tsx
README.md
deploy.yaml
// /usr/local/people/greg-phillips

Greg Phillips

aka "Odd Doc"full-stack application developer
~ $ whoami
greg.phillips — full-stack application developer
·
~ $ cat ./tagline
A proud father and relentless tinkerer.
·
~ $ uptime
8 years coding · 3 active projects · 1 one-person studio
greg@odd-doc:~ $ cat about.md

# I'm a builder. Whether it's a physical project or a creative idea, I thrive on turning concepts into reality and finding clever ways through hard problems. I started in industrial trades, taught myself to ship software, and now I build full-stack apps, on-device tooling, and SEO sites for local businesses — sometimes all in the same week.

> I came up in industrial work, then moved into public-sector infrastructure — and that shop-floor instinct still shapes how I write code: build the thing, prove it works, ship it, repeat.

> These days I run a one-person studio out of the DFW area. I take projects from sketch to production: data model, API, UI, deploy, and the boring middle bits that make the whole thing actually hold together.

> When I'm not at the keyboard I'm with my family, working on small electronics projects, building autonomous roving ai robots (Hi Juno!) or chipping away at side projects in the evenings.

greg@odd-doc:~ $ git log --oneline --decorate --all
commit 64a8b4amain· 2025

Flo

Compliance SaaS platform

Flo is the SaaS platform I lead development on at Hardin and Associates Consulting. Built for a regulated industry — mobile-first for field work, with a full web dashboard for office staff.

  • + Web dashboard for office staff
  • + Mobile app for field work
  • + Designed, built, and shipped end-to-end as lead developer
Next.js 15Express.jsTypeScriptSupabaseReact NativeExpo
$ open hacflo.com
commit a44607cmain· 2025

Juno

Autonomous home assistant robot

Juno is a home assistant robot built on a mecanum-wheel chassis with a Raspberry Pi 5 brain. Four ToF distance sensors and a 9-DOF IMU ride on an I2C multiplexer, a hardware-PWM pan-tilt servo head carries the camera, and voice chat runs through either the OpenAI Realtime API or the Claude Code CLI — so Juno can actually read and edit her own source when I ask her to. She follows people with YOLOv8, talks back through a Bluetooth speaker, and runs entirely off a 3S Li-ion pack.

  • + Mecanum-wheel chassis with omnidirectional drive (strafe, rotate, pivot)
  • + Voice chat via OpenAI Realtime + Claude Code CLI (she edits her own code)
  • + 4× VL53L1X ToF distance sensors + BNO055 IMU via PCA9548A multiplexer
  • + YOLO-based person following with hardware-PWM pan-tilt head
PythonRaspberry Pi 5Adafruit Motor HATOpenAI Realtime APIClaude Code CLIYOLOv8I2C / ALSA
commit f467e26live· 2026

Slayed N Style Luxe

Boutique e-commerce + multi-version design system

Five fully-distinct storefronts (Sleek + Sexy / Violet Hour / Soft Glow / Boutique Storefront / Y2K Slay) wired to a single product catalog, theme provider, and persistent cart. Built to replace a Wix site with something that actually moves — motion-driven editorial heroes, real catalog photography matched to each product, swappable brand palettes per version, and a Convex-backed CMS so the owner can edit products and orders from a single console.

  • + Five distinct production designs sharing one product catalog and theme system
  • + Reusable @side-sites/shop package — cards, cart, sheet, theme surface — used across the monorepo
  • + Per-version palette swatches via a unified bottom-right FAB (single source of truth)
  • + Mobile-first product picker sheet with size/color/scent variant selection
  • + Headless CMS schema (products + orders) for owner-managed catalog editing
Next.js 16TypeScriptTailwind v4MotionConvexNetlify
$ open slayed-n-style-luxe.netlify.app
commit b6a7ffclive· 2024

Backflow Buddy

Interactive backflow device & test gauge simulator

Backflow Buddy simulates an actual backflow prevention device and a working test gauge, letting technicians walk through the same hose hookups, valve sequences, and pressure readings they'd run in the field. Built mobile-first from years of hands-on field experience, not theory. A small quiz feature is included for state-exam prep, but the core of the app is the device + gauge simulation.

  • + Simulated backflow prevention assembly with real valve and hose flow
  • + Working test gauge UI mirroring real field instruments
  • + Built from 6+ years of field experience, not textbook theory
BlenderUnity3DC#
$ open apps.apple.com/us/app/backflow-buddy/id6475203858
commit 75feba6live· 2024

Frank's Relocation

Local moving company website

Built mobile-first with structured data, fast loads, and a contact funnel that actually fits how people shop for movers — see prices, see trucks, call.

  • + Local SEO schema for Google Business surfacing
  • + Sub-1s LCP on mobile
  • + Form-to-SMS lead routing for the owner
ReactVitestyled-componentsNetlify
$ open franksrelocation.com
greg@odd-doc:~ $ tree -L 2 ./skills
./skills
├── languages/
├── TypeScript[core]
├── JavaScript[core]
├── Python[strong]
├── C#[comfortable]
├── HTML5 / CSS3[core]
└── SQL[strong]
├── frontend/
├── React[core]
├── Next.js[core]
├── React Native / Expo[strong]
├── Tailwind CSS[core]
├── Motion (Framer)[strong]
└── styled-components[comfortable]
├── backend & data/
├── Node.js[core]
├── Express[core]
├── Convex[strong]
├── MongoDB / Mongoose[strong]
├── FastAPI[comfortable]
└── REST + JSON-LD[strong]
├── infra & tooling/
├── Netlify[core]
├── Railway[strong]
├── Vercel[strong]
├── Clerk auth[strong]
├── Stripe[comfortable]
└── Linux / tmux[strong]
└── other toys/
    ├── Unity3D[comfortable]
    ├── Blender[comfortable]
    ├── Raspberry Pi / X11[strong]
    └── Claude Agent SDK[strong]
greg@odd-doc:~ $ cat CHANGELOG.md
[2025]
Lead dev at Hardin and Associates
Leading development on Flo for Hardin and Associates Consulting. Running the Odd Doc studio on the side.
[2024]
Shipped Backflow Buddy & Frank's Relocation
Two production sites, real customers, real revenue. The first paying users for the studio.
[2022]
Self-taught into full-stack
Pivoted from industrial trades into software. Started shipping side projects nightly until I could do this full-time.
[Before]
Industrial / cross-connection control
Years in the field doing backflow testing and compliance work. Where the domain knowledge for Backflow Buddy comes from.
greg@odd-doc:~ $ man odd-doc
principle.01
Ship the thing

Done is a feature. I'd rather have an ugly v1 in production than a beautiful PR rotting on a branch.

principle.02
Locality of behavior

Code that works together lives together. I'd rather repeat a bit than spelunk across six abstractions to read one user story.

principle.03
Solve today's problem

I optimize for the next six months, not the imaginary scale-out three years away. The future will pick its own fights.

principle.04
Bring the domain

I write better software because I lived inside the messy industrial workflows it replaces. Specifics beat patterns.

greg@odd-doc:~ $ mail -s 'lets-build' greg
From: you@somewhere.com
To:   gsphillipsjr@gmail.com
Subj: let's build something

I take on a few small-batch builds a quarter — local-business sites, internal tools, mobile apps, and weird AI tinkering. If you've got something messy and real, I'm interested.