postra / infrastructure

Two markets,
before launch.

A social media scheduling product being launched into the UK and Poland at once. Nothing here is the product yet — it is the ground it lands on: two static fronts, a waitlist that costs nothing to hold, and working email on both domains without a mail server anywhere.

Region eu-west-2 London State S3 + DynamoDB lock Domains .co.uk + .pl postra.co.uk checking…
Client

A visitor, in either market

Arrives on the British or the Polish front

Two domains, one deployment pattern

step 1
Edge · 400+ locations worldwide

Route 53

A hosted zone per market, each with its own certificate

Separate zones so one market cannot break the other

step 2

CloudFront

A distribution per front, plus one for product media

Pre-launch traffic is almost entirely cache hits

Origin · eu-west-2 London

S3

A pre-launch page per market, with pricing and structured data for search

Reached only on a cache miss — private, behind OAC

on cache miss
Measured from your browser, just now
ms round trip

Fetching a file from postra.co.uk to time the real path…

Decisions worth defending

State is remote and locked
Terraform keeps its state in S3 with a DynamoDB lock table, so two applies cannot run over each other and the state does not live on one laptop. This is the project where that mattered enough to set up first.
Two markets, separated at the root
Each domain has its own hosted zone, certificate, bucket and distribution. They share the waitlist API and nothing else, so work on one front cannot take the other down.
The email address is the key
Writing a signup keyed on the address makes a duplicate submission a no-op rather than a second row — the same idempotency any retried request needs.
Built on open source, in public
The product engine is built on Postiz, an open-source scheduler under AGPL-3.0, and the repository names that licence rather than quietly relying on it. Keeping the work public is what a copyleft licence asks for.