WordPress developer · full-stack PHP · Gettysburg, PA
I ship Sage 11 themes, small plugins, and the APIs around them — then hand the keys to the shop. Remote anywhere. Open for freelance, contract, or full-time.
GitHub READMEs cannot run JavaScript, so the cabinet lives on matthummel.com. Click the player — pieces are commits, branches, hotfixes, and reviews. Clear a line, ship the backlog.
← → move · ↑ rotate · space hard drop · C hold · high score stays in your browser
Portfolio samples I built in public — not client sites. Project write-ups live on matthummel.com. Live concept demos are on matthummel.com subdomains.
|
Acreline Sage 11 theme · Real estate · GPL Listings, map, agents, showing requests, 21 Gutenberg blocks, setup wizard. Story · Live demo · GitHub |
WalkRidge Sage 11 theme · Tour shops · WooCommerce Tours, guides, and checkout. Concept demo uses 555 numbers and @walkridge.test. Story · Live demo · GitHub |
|
TOCGuide WordPress plugin · Table of contents · Free / GPLv2+ Server-rendered TOC block. Zero config, accessible, SEO-friendly. Story · Live demo · GitHub |
matthummel-theme Sage 11 · This site · Blade + Tailwind v4 + Vite The theme behind matthummel.com, including the live GitHub activity board. Code page · GitHub · Keepary (React + Supabase) |
Freelance · contract · full-time · agency overflow. WordPress themes and plugins, custom Sage builds, and Power Platform from federal agency work (walkthrough under NDA — no public demo). Based in Gettysburg, PA. Remote anywhere. I usually reply within one business day (ET).
Hire me · Write a note · LinkedIn
Seventeen years of in-house web work (higher-ed marketing, then SharePoint / Power Platform for federal teams). Public GitHub is the trail I started in 2025 — most production code still lives behind employer walls.
| The useful version | |
|---|---|
| Day job shape | I write PHP, Blade, and just enough JS/TS. I am not a designer — I will refer one. |
| Happy path | Sage 11, Acorn, Blade, Tailwind v4, Vite 8, PHP 8.3, WordPress 6.6+, Core Gutenberg (no page builder). |
| Plugins | One job each. PHPDoc, standard hooks, uninstall that actually uninstalls. |
| AI | Cursor + Claude scaffold. I still read, click, and test every line that ships. |
| PRs I like | Small, named after the change, conventional commits (feat, fix, docs). Tell me how you tried it. |
| PRs I bounce | Drive-by refactors, page-builder add-ons, and “while I was here” diffs. |
| Handoff | Domain, hosting, repo, and database in the client’s name. Short admin notes in plain English. |
| Agency mode | Silent sub is fine. You keep the client. I stay off their Slack unless you ask. |
| Hours | America/New_York. Async first. Overlap afternoons ET for pairing. |
| A11y | Keyboard paths, contrast, semantic HTML. If a shop owner cannot tab it, it is not done. |
How to drop me into a repo
1. Node + Composer + Local WP (Herd, Local, or wp-env). PHP 8.3.
2. Theme: composer install && npm install && npm run build
3. Do not install Elementor / ACF “because the last theme had it”.
4. Open a draft PR early. I review staged URLs, not zip files in Drive.
5. If it is agency overflow: send brand, IA, and who owns hosting first.
package.json vibes
{
"name": "matt-hummel",
"version": "17.0.0",
"private": false,
"description": "WordPress developer · full-stack PHP · open for work",
"homepage": "https://matthummel.com",
"main": "WordPress + Sage 11",
"scripts": {
"dev": "cursor . && coffee --watch",
"build": "ship accessible WordPress platforms",
"test": "a11y + Core Web Vitals + 'can the shop edit it?'",
"play": "open https://matthummel.com/git-blocks/",
"deploy": "you own the keys"
},
"dependencies": {
"wordpress": "specialty",
"roots/sage": "^11",
"php": "8.3",
"react": "^19",
"curiosity": "*",
"patience": "^∞"
},
"devDependencies": {
"claude": "coworker",
"cursor": "pair-programmer",
"bad-pun-generator": "optional"
},
"engines": {
"node": ">=human",
"coffee": "required",
"timezone": "America/New_York"
},
"keywords": ["wordpress", "sage", "php", "gettysburg", "a11y", "open-for-work"],
"license": "MIT-and-kindness"
}Same idea as the live board on matthummel.com/code: a custom 90-day heat map (newest week first, navy cells) plus the latest public pushes. Refreshed hourly from this repo’s Actions — not a third-party stats card.
Custom calendar (not the GitHub default card). Newest week on the left, navy scale from matthummel.com/code. 1,198 contributions in 90 days · 1,237 in the last year.
Pushes, pull requests, and the rest of the public trail. Open a row to jump into the repo.
| Shipped | Repo | When | |
|---|---|---|---|
| ✅ Merged PR #21 — feat(git-blocks): cascade squash puzzle with FX and sound | matthummel-pa |
just now | |
| ✅ Merged PR #215 — Projects listing: even grid, catalog shots, single blue checks | matthummel-theme |
2m | |
| ✅ Merged PR #20 — Git Blocks: harder levels, free music, floating dev clouds | matthummel-pa |
34m | |
| ✅ Merged PR #19 — Git Blocks viewport layout and reliable rotation | matthummel-pa |
51m | |
| ✅ Merged PR #214 — Project pages: TOCguide data, like/star, notes, contact | matthummel-theme |
1h | |
| ✅ Merged PR #18 — Point Git Blocks play links to matthummel.com/git-blocks | matthummel-pa |
1h | |
| 🚀 Commit — Update links and CI badge in README.md | tocguide |
11h | |
| ⭐ Starred — matthummel-pa/wp-walkridge | wp-walkridge |
3d | |
| 🚀 Commit — Merge pull request #4 from matthummel-pa/cursor/theme-release-z… | wp-walkridge |
3d | |
| 🚀 Commit — fix(cloud): declare WordPress ports for Simple Browser forwardi… | matthummel-theme |
4d | |
| 🚀 Commit — fix paragraph and heading spacing sitewide (#191) | matthummel-theme |
5d | |
| 🚀 Commit — Update theme purchase and demo links | wp-acreline |
9d |
| Repo | Stack | Last push |
|---|---|---|
| matthummel-theme — Sage 11 WordPress theme for matthummel.com — Blade, Tailwind v4, Vite. Portfolio and se… | PHP · ★1 | 3m |
| wp-acreline — Acreline is a WordPress theme for farms, land, and historic homes — searchable listings… | PHP · ★0 | 2h |
| wp-walkridge — WalkRidge is a custom WordPress theme for walking and historical home tours. Clean perf… | PHP · ★1 | 5h |
| tocguide — Lightweight, server-rendered Table of Contents block for Gutenberg. TOCguide builds an … | PHP · ★1 | 10h |
Full calendar, badges, and repo cards: matthummel.com/code
Latest from matthummel.com/blog:
- What’s on my GitHub (and on this site)
- WordPress Abilities API integration — A Practical First Integration
- Why I'm Moving Away from Power Platform and Back to Modern WordPress
- 5 Ways my new AI WordPress Workflow Actually speeds up development
- WordPress 7.1 Features for Developers
|
|
|
- 🌐 Website: matthummel.com
- 🧪 Live demos: acreline.matthummel.com · walkridge.matthummel.com
- 📬 Hire / contact: matthummel.com/hire · matthummel.com/contact
- 🧩 Projects + code: matthummel.com/projects · matthummel.com/code
- 💼 LinkedIn: linkedin.com/in/matt-hummel-pa
- ✍️ Dev.to: dev.to/matthummeldev
- 🦋 Bluesky: @matthummel
- 👽 Reddit: u/matt-hummel
- 📡 RSS: matthummel.com/feed
- 🎮 Git Blocks: Play the cabinet
WordPress developer · full-stack PHP — open for work. PRs welcome; puns tolerated.