Start a Project

Country Guides

Our Product · AI Content Platform

croatian-guide.com after the redesign - an Explore Croatia hero over aerial Dubrovnik, with regions and their place counts below

Fourteen branded travel guides – from Croatia and Italy to Morocco, Canada and the US states of Colorado and Oregon – running on one codebase, with an AI pipeline that researches and writes every destination, attraction and article. A new market is a config file, not a fork.

Live guide sites on one codebase
14
Attractions researched and written
6,000+
Destinations across the network
1,200+
Stages from research to published page
38

Build It Once, Ship Every Country

A travel guide has the same shape everywhere, so the site is built once – country, branding, currency and content become data.

The Same Shape Everywhere

  • Country → region → destination → attraction, the same hierarchy for every market
  • Interest categories – castles, beaches, heritage – cut across destinations
  • Articles, blog posts and multi-day itineraries layered on top
  • Every entity carries its own quality and workflow state

Why Most Multi-Site Setups Rot

The usual way to launch a second country is to copy the first and change some text. Then the two drift. A fix lands in one and not the other, and within a year you're maintaining four codebases that used to be one.

Here there is exactly one application. What makes Croatia look like Croatia and Switzerland look like Switzerland lives in configuration and data, so a fix ships to every site at once and a new market adds nothing to maintain.

Researched, Then Written

Nothing is typed by hand or invented. The pipeline finds real places on the open web, then writes them up against a fixed schema.

  1. Discover

    Web search finds the real destinations and attractions for a country. A duplicate check compares each candidate against what's already stored, so the pipeline never re-adds a place it already knows.

  2. Write to Schema

    A schema-bound model turns each place into a structured record, not free text. Every field is validated against the same Pydantic schema the database is shaped by – a malformed answer is retried, not published.

  3. Enrich With Facts

    Opening hours, admission fees, how to get there. A separate research pass fills in the practical detail a traveller actually plans around, instead of leaving it to generic prose.

  4. Sort by Interest

    Each attraction is tagged into interest categories – castles, beaches, history and heritage – so the same place surfaces in every way a visitor might go looking for it.

  5. Link and Answer

    Articles, destinations and attractions are cross-linked automatically, and common questions get their own FAQ section – useful for a reader skimming, and legible to a search engine.

  6. Readiness Gate

    Before a country goes live, an automated check audits content counts, SEO metadata, images and internal links. A site launches when it's actually complete, not when someone hopes it is.

Fast Models, Guarded Output

Generation runs on a fast, low-cost model with an automatic fallback chain – if the primary provider stumbles, the next one picks up the same request rather than dropping the job. Because every response has to satisfy a strict schema before it's accepted, speed never comes at the cost of a broken record reaching the database. The schema definitions are treated as the contract between the AI and the app, and are deliberately hard to change by accident.

Fourteen Domains, One Deploy Pipeline

Each site looks like it was built for one country. Underneath, they share everything that matters and differ only in data.

Identity Is a Config File

Domain, branding, SEO metadata, currency, timezone, analytics and the homepage and legal copy all live in one per-country config, next to that country's content tree. Launching a new market means adding a config and generating its content – not touching the application.

canadian-guide.com, colorado-guide.com, croatian-guide.com, discover-austria.com, dutch-guide.com, french-guides.com, greece-guides.com, italian-guides.com, moroccan-guides.com, oregon-guide.com, portugal-guides.com, slovenia-guide.com, spanish-guides.com, switzerland-explorer.com Same components, different data – no per-site forks to keep in sync More markets already built and staged – Bosnia and Serbia are next, waiting on go-live

A Database Per Site

Each live site is seeded one country at a time and runs its own database and its own application process. Sites stay isolated, and any one of them is simple to reason about on its own.

Deploy Only What Changed

Continuous deployment hashes the shared code and each country's data separately, then ships only the countries that actually changed. Editing Croatia's content never redeploys Switzerland, and a docs-only commit deploys nothing at all – the pipeline does the least work that's correct.

SSL That Survives Deploys

The web server keeps its version-controlled base config separate from the live certificates, so an automated deploy can never overwrite an SSL renewal and knock a site offline.

Thousands of Pages, Each One Findable

Programmatic pages at volume are where SEO usually falls apart – duplicate URLs, thin structured data, blank pages without JavaScript.

  1. Structured Data on Every Page

    Destinations, attractions, articles and FAQs each ship the right schema.org type – TouristAttraction, Place, FAQPage, BreadcrumbList – so a search engine reads them as places and answers, not just paragraphs of text.

  2. One Canonical URL

    HTTPS, www and trailing slashes are normalized to a single canonical address, and filtered or paginated views are told not to index. No page ends up competing with itself for the same search.

  3. Rendered on the Server

    React pages are server-rendered, so a crawler – or a visitor on a slow phone – gets full HTML immediately. Per-site sitemaps are generated and kept current as content grows.

Every Page Type, Rebuilt

Redesigned so a guide reads like a well-travelled friend who has been there – calm, factual, photography first, on all fourteen domains.

  1. You Always Know Where You Are

    Every page carries the path above it – country, region, destination – visible and clickable. Readers stop guessing how deep they have wandered, and a crawler gets the same hierarchy as real links instead of having to infer it.

  2. Photography Carries the Feeling

    A warm off-white page, flat surfaces, hairline borders, and depth only where something answers to the cursor. What travel sites usually reach for – fake urgency, star-rating noise, ad walls – is deliberately absent.

  3. Accessibility, Measured

    Contrast, focus order, link text, pagination and map markers were taken to WCAG 2.1 AA and checked with axe – 156 automated runs across three of the sites, rather than a claim on a slide.

Fourteen Guides, Live Right Now

Every number here is a page you can open. Each site runs the same platform on its own domain, with its own content.

Want a Content Platform That Scales?

Country Guides is a platform play: build the engine once, launch a new market from a config file. If you publish content at volume – locations, listings, catalogues – that's the pattern we build.

Open for new projects

See starting prices for this kind of work, or tell us what you're building and we'll reply within 24 hours. Rather use one of our products, like Tvrtko.ai, Moj Kolega or Titlomat? Those are open too.