A Publishing Platform for Four Data-Driven Websites by Niko MinadzeA Publishing Platform for Four Data-Driven Websites by Niko Minadze

A Publishing Platform for Four Data-Driven Websites

Niko Minadze

Niko Minadze

I built a publishing platform to run several websites from structured source data. Each site has its own subject, sources, templates and publishing rules, while one shared Laravel application handles imports, page generation, scheduled updates and administration.
Four domains are live on this application. They cover vehicle recalls, software pricing and alternatives, public procurement, and crypto risk information. Each subject needs different checks, but all four sites need a dependable way to keep their published pages connected to the source records.

Different subjects, one recurring workflow

The shared problem is keeping published information connected to its evidence. A software price needs a supporting source and a recent check. A vehicle recall page needs the correct vehicle and campaign records. Both start with data, but they require different rules before that data becomes a useful page.
I built the application around that distinction. Each website can use its own sources and publishing requirements without needing a separate application for the recurring work. The common workflow takes source records through imports, structured storage, page preparation and publication, with review and checks along the way.

Keeping a trail back to the source

The platform imports records and retains their original snapshots. It then turns that material into entities and facts that the public pages can use. Keeping both matters: a page needs usable information, and I need a way to inspect the record behind that information when something changes or looks wrong.
Generated summaries use the collected facts. Before publication, their sources, numbers and claims are checked. The publishing process needs to account for the evidence behind each summary.
A Python embedding service also groups related keywords into batches for review. That supports the planning work around the pages while keeping review as an explicit step.
Workflow illustration — source imports retain original snapshots, produce entities and facts, and feed pages through checks and review before publication.
Workflow illustration — source imports retain original snapshots, produce entities and facts, and feed pages through checks and review before publication.

Publication is a set of decisions

Producing a page does not automatically make it ready to publish or index. I added controls so pages can wait for review, fail completeness or freshness checks, or remain excluded from indexing. These controls make the publishing decision part of the application rather than something I have to manage separately after a page exists.
Daily limits allow new pages to be introduced gradually. Scheduled updates support the ongoing work across the different sites. Existing pages need attention too: their sources can disappear, their information can expire, or they can reach a point where they should be retired.
I built those cases into the publishing workflow because operating these sites involves more than adding pages. It also means deciding whether existing information is still suitable to keep available and discoverable.
Workflow illustration — review, completeness, freshness, indexing decisions and daily limits control publication; source changes can prompt updates or retirement.
Workflow illustration — review, completeness, freshness, indexing decisions and daily limits control publication; source changes can prompt updates or retirement.

One place to operate the sites

The application uses Laravel and PHP, with Filament and Livewire for administration, MySQL for storage, and Redis for queued work. The dashboard brings together sources, import runs, pages, failures and publishing controls so I can follow the recurring work across the sites from one place.
Google Search Console, Bing Webmaster Tools and Umami integrations bring search and usage data into that workflow. IndexNow notifications and sitemap updates follow changes to published content. I can check what has been published and follow the search and usage data from the same application.
The result is a working platform serving four live domains, with shared administration and separate publishing rules. The sites have not picked up traffic yet. That is the next challenge; the imports, review controls and recurring publishing work are already running on the Laravel application.
Like this project

Posted Sep 20, 2026

I built a Laravel platform that turns structured sources into reviewed, scheduled pages across four live domains, with search monitoring built in.