Technology
The platform itself
What the site is built with, and what serves it.
- Drupal Content platform and editorial workflow
- PHP The application language
- Symfony HTTP, routing and the service container
- TypeScript Typed services at the edge
- PostgreSQL The record of everything the platform holds
- Redis Caching, so a page is assembled once
- Twig Templates, kept apart from the logic
- Composer Dependencies pinned and reproducible
- Node.js The build toolchain
- Python Checks, imagery and the operational scripts
Operating system, containers and delivery
Where it runs, and how it reaches a reader.
- Linux The operating system underneath all of it
- Docker Every service in its own container
- Container networking Services that reach each other and nothing else
- Caddy The web server, and its certificates
- API gateway One front door, with the rules applied at it
- Cloudflare Edge network, DNS and delivery
- Load balancing Traffic spread across healthy instances Planned
- Container orchestration Scheduling and scaling as the platform grows Planned
- CDN and object storage Media served from close to the reader Planned
Security and operations
How it is kept standing, and kept honest.
- Web application firewall Hostile traffic filtered before it arrives
- TLS everywhere Encrypted end to end, renewed automatically
- Infrastructure as code The server described in a repository, not in somebody’s memory
- Audit trail Every administrative action recorded
- Control plane The server operated through one door, with every action logged
- Monitoring and health checks Machine, containers and services, watched continuously
- Automated provisioning A machine brought up from a description, not by hand Planned
- Secret management Credentials held outside the code, and rotatable
- Off-site backup Dated, pulled, and restorable
- Continuous integration Conventions checked on every change
Build and release
How a change gets from written to live.
- Git Every change with its reason attached
- Code review Nothing reaches the island unread
- Automated tests The failures worth catching, pinned
- Static analysis Mistakes found before they run
- Build pipeline One command from source to a deployable payload
- Staged deployment Backed up, applied, and checked in that order
- Rollback Every deploy reversible to the one before it
- Artifact registry Builds kept and addressable by version Planned
- Zero-downtime releases A new version proven before the old one stops Planned
Artificial intelligence
Where the platform reasons rather than retrieves.
- Large language models Translation, summaries and the assistant
- Visitor assistant Answers about the island, on the site and in chat
- Machine translation Three languages from one piece of writing
- Image understanding Describing and checking contributed photographs Planned
- Ranking and extraction Turning free text into structured facts Planned
Data and science
Where the island’s figures come from.
- NASA Daily satellite imagery of Kish and the Gulf
- Meteorological archives Weather back to 1940, and today’s forecast
- Astronomical almanac Sun, moon and the visible planets
- OpenStreetMap Places, matched and confirmed by people
- Analytics and reporting Measured on our own servers, not sold on
- Free Zone open data Published figures and notices about the island
- RSS and web feeds News read from its source, as it is published
- Structured web reading Public pages turned into checkable records
- X (Twitter) signals What is being said about Kish, watched and summarised Planned
- Search and trend signals What the island is being asked about Planned
Channels and integrations
How the island’s information travels.
- Instagram Daily cards, and replies to readers
- Telegram A channel and a bot
- Bale The same, for readers inside Iran
- SMS gateway Verification and notices
- Mail delivery Transactional mail from our own domain
- X (Twitter) Posting and listening, designed Planned
- WhatsApp Designed, not yet built Planned