The blog
Notes from building web software: Next.js and PostgreSQL, performance, technical SEO, and products for the UAE.
What actually makes a school website fast
Lessons from rebuilding school websites in Next.js: static pages, almost no JavaScript, lighter images and technical SEO for parents searching locally.
Building Sandglass: prayer times without a server
How Sandglass calculates prayer times on the device, keeps its timer honest in background tabs, and works properly in Arabic.
Locking down a CRM with Postgres row-level security
How Postgres row-level security keeps each school's leads private in a Supabase admissions CRM, and lets an agency import leads without reading any.