← Dashboard Verifly · Decision Record

Technology Stack

What the production site is built on. We evaluated the main contenders for every layer — frontend engine, CMS, animation, hosting — against the project requirements below, and locked the decision.

Locked on June 12, 2026

The chosen stack

Site engine
Astro

Builds the site into ready-made, fast HTML pages. The browser receives a finished page — not a blank screen that still needs to be assembled by scripts.

$0 — open source
CMS (admin)
Storyblok Free

A visual editor: the client clicks on the page and edits copy, images and SEO fields — no developer needed. One manager seat.

$0 — free tier
Animation
GSAP

The industry standard for web animation (the level Awwwards sites are built with). Fully free since 2025, including all premium modules.

$0 — free since 2025
Hosting
Cloudflare Pages

The site is replicated across 300+ cities worldwide — every visitor gets it from the nearest server, including Dubai, Riyadh and Jeddah.

$0 — free tier

The requirements we judged against

Contenders · Site engine (frontend)

ContenderWhat it isVerdict
Astro A static-site builder: the output is ready-made HTML pages with almost no excess code. Animation is loaded selectively, only where it is needed. Best speed out of the box, ideal for an animation-heavy landing. Our existing prototypes port into it almost one-to-one.
Next.js A React framework — the standard for web applications (user dashboards, complex services). Rejected: it ships the React "engine" on every page, which slows response on weaker phones. For a landing that is dead weight with no upside.
WordPress The classic all-in-one site system: admin, pages, blog. Rejected: to reach our animation and speed levels, WordPress would have to be stripped down to custom code — and then its main advantage ("any contractor can pick it up") is lost. Plus constant security updates.
Plain HTML The current prototypes — pages written by hand, with no builder. Rejected for production: no convenient way to manage SEO fields, images and a future blog. Great for prototypes (which is where it was used).

Astro won on every requirement that matters here. A sales landing is not a web application: the foundation must stay maximally light, with animation loaded only in the sections that need it.

Contenders · CMS (admin)

ContenderWhat it isVerdict
Storyblok Free A cloud admin with a visual editor: the client clicks directly on the page and edits copy/images/SEO fields. Free tier: 1 user. The most comfortable editor for a non-technical person of everything we tested — that "like Webflow" feeling the client wanted. Adopted with safeguards: all content is copied weekly into our repository, and a move to the fallback option takes 1–2 days and does not affect Google rankings.
Keystatic A free admin that stores content directly in the project repository (in files, not in someone else's cloud). The fallback plan. Guaranteed $0 forever — but editing is through forms (not visual), and changes appear on the site after a couple of minutes, not instantly.
WordPress admin The best-known admin in the world, the benchmark for SEO convenience (the Rank Math plugin). Rejected along with WordPress as a whole (see the engine table): taking the admin would mean taking all of heavy WordPress.
Sanity A cloud admin for developers, popular with startups. Rejected: editing is through technical forms, not visual — inconvenient for a content manager with no experience.
Custom-built admin Writing our own control panel for this project. Rejected: all support and security would hang on us forever, and a new contractor would say "this needs to be rewritten." It contradicts requirement #5.

Why a third-party CMS is safe here: in this architecture the admin is a detachable part. Astro generates the page URLs and the site itself, so Google never sees which admin is behind the scenes. If Storyblok ever degrades its free tier, we move to Keystatic in 1–2 days following a ready-made plan, with no loss of SEO rankings.

Contenders · Hosting

ContenderWhat it isVerdict
Cloudflare Pages The site is automatically copied to 300+ servers worldwide; the visitor gets it from the nearest one. The only free host with servers right in Riyadh, Jeddah, Dammam and Dubai + direct links to local carriers (STC, Etisalat, du). Response time in the region is under 30 milliseconds. From New York, London, Singapore it is just as fast, from their local servers.
Vercel A popular host for modern sites, opened a server in Dubai in 2025. Good, but for our type of site it has no advantage over Cloudflare, and its Saudi Arabia coverage is weaker.
Netlify A host of the same class, popular with studios. Rejected: no servers in the region — requests from Dubai route through Frankfurt, response 150–200 ms (5–6× slower than Cloudflare).
Conventional hosting + FTP The classic scheme: a single server in a single country, files uploaded by hand. Rejected: the server sits in one spot on the planet — for visitors on other continents the site opens noticeably slower. The "best result worldwide" requirement simply cannot be met.

The bottom line for the client: hosting $0/mo, admin $0/mo, animation $0, engine $0. The only recurring payment is the domain renewal. Everything is registered to the client's own accounts: they own it all, with no contractor lock-in.

Why not Webflow or WordPress

Webflow rejected
  • A permanent subscription: the site only stays online while the monthly plan is paid (~$14–23+/mo) — breaking the "zero monthly fees" requirement.
  • A closed platform: animations and CMS content don't export as workable code. Leaving Webflow means rebuilding the site from scratch — that is real contractor lock-in, just to a platform instead of a person.
  • Our heaviest scenes — the orbit video, masked panorama, pinned layers — run into the limits of a visual builder, and page weight grows faster than with hand-tuned code.
  • The builder gives the client full freedom to edit — which also means full freedom to accidentally break the layout.
WordPress rejected
  • To reach our speed and animation targets it would have to be stripped down to fully custom code — at which point its main advantage, "any contractor can pick it up", is gone.
  • It is the world's #1 hacking target and needs constant security and plugin updates — ongoing paid maintenance the client would carry for years.
  • It needs a paid PHP server in one location, while our static build is replicated to 300+ cities for free — the worldwide speed requirement can't be met from a single server.
  • Plugins and editor freedom quietly erode loading speed over time — the green Google scores would need permanent guarding.

Full decision record — including the contender analysis for every layer — is maintained in the project repository.