I launched Zion Travel first, and I built it the way you build anything the first time: by hand, one decision at a time, with no idea which of those decisions I'd regret. The admin panel, the blog engine, the SEO tooling, the media library — all of it got written specifically for one travel directory covering one national park. It worked. It also meant that if I wanted a second travel site, my plan was apparently to do all of that again.
I didn't do that again. Instead I went back into Zion Travel and pulled out everything that wasn't actually about Zion. The admin dashboard. The CMS and page builder. The blog and news engine. The media library, with its Cloudflare R2 storage and stock-photo import. The Jexii SEO engine, with its rank tracking and keyword monitoring and internal-linking machinery. All of that got stripped out into its own standalone thing, a platform with zero opinions about what kind of site sits on top of it. I called it Tungsten Core, and I made sure it shipped with nothing park-specific left in it, no leftover copy, no hardcoded assumptions, not even the color scheme.
What Ten Sites Actually Share
Zion Travel, Bryce Canyon, Capitol Reef, Grand Canyon, Yosemite, Joshua Tree, Moab, Lake Powell, Smoky Mountains, and Outer Banks all run on that same Core today. None of them share content. Each one has its own real content model bolted on top through a site-specific migration and what I ended up calling a content-source adapter, the seam where the SEO engine, the internal-linking system, and the sitemap generator all plug into whatever that particular site's directory listings actually are. But underneath the content, they're running identical code. Same admin login flow. Same blog editor. Same way of tracking a keyword's rank over time. Same way of pulling a stock photo into the media library.
The payoff shows up in two places. The first is obvious: launching site number ten took a fraction of the time launching site number one did, because ninety percent of what a travel directory needs already existed and was already tested against nine other real, live sites. The second payoff is quieter and honestly more valuable — when I fix a real bug in Core, or make the SEO engine smarter, all ten sites get better at the same time. I'm not patching the same problem ten separate times in ten separate codebases. I fix it once, and Bryce Canyon and Moab and Outer Banks all wake up slightly improved without me touching them individually.
The Part Nobody Warns You About
Here's the tradeoff I didn't fully appreciate until I was already living inside it: when your foundation is shared, your blast radius is shared too. A mistake in a single-site codebase breaks that one site. A mistake in Core, if I'm not careful about how I test and roll it out, can touch ten live sites people are actually using at the same moment. Running a platform instead of a single site doesn't mean I get to be looser about changes. It means I have to be more disciplined about them, because the cost of getting sloppy multiplied by ten the day I stopped building one site and started building a foundation.
That's the actual deal with a shared template, and it's a fair one. You give up the illusion that each site is its own isolated little world, and in exchange you get to stop rebuilding the same admin panel every time you want to try a new market. I'd take that trade again. I just don't pretend it's free.
Why I'd Still Recommend It
I get asked sometimes whether ten sites off one codebase means they all feel the same to visitors, like walking into ten branches of the same chain restaurant. They don't, because the platform only handles the plumbing — the login screen, the blog editor, the way a keyword's rank gets tracked over time. What a visitor actually sees on Bryce Canyon versus Moab versus Outer Banks comes from that site's own content model, its own listings, its own voice. Nobody browsing a lodging guide for the Smoky Mountains is thinking about the admin dashboard underneath it, and they shouldn't have to.
What they do get, without ever knowing it, is a site built on code that's already been proven live on nine other real properties before it ever touched theirs. That's not a small thing. A brand-new site built entirely from scratch is making its first mistakes in public. A tenth site on a mature platform is inheriting nine sites' worth of already-fixed mistakes for free. If I ever build an eleventh, that one starts even further ahead than this one did.
