My new custom WordPress theme is finally up and running! You’re looking at it. I started building this website with the 2025 WordPress theme as a foundation on the 17th—it’s great as a starter, which is why I kept it while I was tooling around and adding features. Now, 13 days since uploading my first copy, we have something that feels like its own theme. It’s sparse, but it’s coming along.
New Features
HLS Live Stream
The HLS stream integration is there and working… sort of. I love the idea of the stream looking back at me—it makes me feel more efficient and on task. There’s something compelling about the possibility of someone watching and connecting in real-time.
The downside? I’m still new to Cloudflare, so I wasn’t aware that every new stream gets its own ID. That means I have to manually update the ID each time. I think I should add an admin page to the plugin that the stream function lives on. Then maybe i can just copy and paste the id in and it wouldn’t be such a hassle. I also can’t download the videos since they’re eight hours long, so I think I should split them in to shifts, separated by lunch probably. There has to be a way to automate that process.
Additionally, when I’m not live, it’s just replaying old live footage and for now that’s fine, but I think a placeholder video hosted on vimeo that just replays would be better. Not sure what that video would be, maybe just wood letter blocks being stacked to say that it’s no longer office hours and visions of cute forest animals coming out from behind the blocks.
Email Copy Button
I added a simple email button that solves a problem I see everywhere. People still put mailto:
links on websites, but those don’t work reliably anymore. The era of default mail clients opening automatically is gone.
My solution: a button that copies my email directly to your clipboard—whether you’re on your phone or desktop. It provides confirmation that it’s been copied, and then you can paste it wherever you need to. Simple, but effective.
Technical Stack
Barba.js Integration
The site is running Barba.js. I’m trying to do more animation and transition work in my upcoming projects, so it’s important for me to use that system within this theme. Right now, there aren’t many animations—mostly just fade-in/fade-out transitions. But even that requires quite a bit of JavaScript on the backend to identify which page we’re on and apply the active stylings.
Design Philosophy
I wanted the layout to feel like those side panel/main panel designs you see in generative chat applications. There’s an expandable sidebar that feels a bit like Claude’s interface. I’m planning more changes to that sidebar, but that’s the general direction.
I need to create a state manager for different viewport widths. For example, at 900px wide, maybe the bar should be open by default unless otherwise specified. I’m also planning to add icons for the homepage, about page, and notes section so that when the sidebar is collapsed, the icons remain visible.
I’m drawing inspiration from Gmail’s interface—Google has mastered the art of hideable UI. Everything is tucked inside a button. On desktop Gmail, you can close the sidebar, but if you hover over the remaining buttons, huge tooltips appear with all the functions you need. That’s the level of thoughtfulness I’m aiming for.
UI Elements
I built custom cards and buttons that follow my color scheme—that dark blue, light blue, Celtic blue palette I mentioned in a previous post.
The button design is particularly fun: it’s actually two SVGs stacked on top of each other, tilted at a 45-degree angle. When you click it, they move forward slightly, creating the illusion that the arrow is coming back in. I’m a fan.
What’s Working
The basics are sorted out. The notes page displays all my notes, and categories are handled. But there’s still work to do:
- Add dates to notes
- Decide on featured image thumbnails (maybe at certain widths, removed at others)
- Add a title above the post section
- A ton of styling refinements
- Font work and overall style development
Future Plans
I didn’t copy the chat interface aesthetic for nothing. I want to add an actual chatbot feature, flagged somewhere above the services section on the homepage. The vision is a mix of a Slack channel and a chatbot—when I’m not available, the bot responds, but I’ll always see what it’s saying. Even when I am available, the bot can act as a helper.
There will be ongoing threads created each time someone engages with it. I’m a bit concerned about bots abusing the system, so I’ll need to develop some protection strategies. But that’s the goal: figuring out how to integrate an LLM.
Beyond that, I need to tackle the animation portion. Right now there are essentially no animations. I’m thinking:
- Animation on scroll
- Menu animations
- A cooler swipe transition between pages
Moving Forward
It’s exciting to see this come together. From scratch to a functional theme in less than two weeks feels like real progress. There’s still plenty to build—the style needs development, animations need to be implemented, and the chatbot integration is a whole project on its own. But for now, I’m happy with where things are headed.