← Back

Web · NGO

Balanced Life Family

Status

Live

Stack

Next.js 16Tailwind CSSVercel

[ THE THESIS ]

Volunteer-built digital infrastructure for a Ugandan charity NGO has to honor donors, staff, and bandwidth at the same time.

Balanced Life Family Organization needed one site that could feel trustworthy to donors in London and still load respectfully for staff and communities in Uganda. As a volunteer board member and technology lead, I built the architecture to stay static, edge-served, and maintainable, so the NGO gets professional digital infrastructure without operational weight.

Live · volunteer board member + technology lead

Technical proof
17
years operating
across Uganda + 12 countries
100+
students supported
toward university access
50+
widows uplifted
empowerment programs
70+
families reached
direct community support

SECTION 01THE TWO-AUDIENCE PROBLEM

One site. Donors in London. Staff in Kampala. Both need to love it.

A heavy site fails staff and communities in Uganda. A plain site fails institutional donors. The volunteer-built architecture has to serve both audiences from the same URL.

01

Static everything

Every page is pre-rendered at build time. No SSR round-trip, no database query, no cold start. The server-of-record is Vercel's edge cache.

02

Serve from the closest edge

A request from Kampala hits an African edge node. A request from London hits a European one. TTFB is low for every visitor, regardless of bandwidth.

03

Small assets, sharp design

Hero imagery is optimized, fonts are self-hosted and subset, Tailwind purges unused classes. The site looks editorial without the weight.

04

Maintained through volunteer service

Git-push deploys. Content lives next to the code. A volunteer board member can fix a typo through a PR without calling anyone.

SECTION 02ARCHITECTURE

Next.js SSG → Vercel edge cache → every continent, fast

SOURCE

Next.js 16

Tailwind CSS

MDX content

git push

BUILD

Vercel CI

next build · SSG

static HTML + assets

EDGE

Vercel edge nodes

Kampala · London · …

cached HTML served

SECTION 03DESIGNED FOR BOTH AUDIENCES

Same URL, same content — very different network realities

TTFB

Donor · London · fibre

edge-cache hit, ~50ms

Staff · Kampala · 3G/4G mobile

edge-cache hit, ~150ms

LCP

Donor · London · fibre

editorial hero image

Staff · Kampala · 3G/4G mobile

same image — compressed + lazy

JS shipped

Donor · London · fibre

minimal · pre-rendered

Staff · Kampala · 3G/4G mobile

minimal · pre-rendered

Data round-trips

Donor · London · fibre

none — static

Staff · Kampala · 3G/4G mobile

none — static

Perception

Donor · London · fibre

professional, trustworthy

Staff · Kampala · 3G/4G mobile

fast, respectful of bandwidth

SECTION 04ENGINEERING HIGHLIGHTS

Three decisions that match the mission

SSG

Pre-render once, serve forever

No server. No database. No cold start. Every page is HTML produced at build time and cached at the edge. The site survives traffic spikes during appeal campaigns with zero operational work.

0 servers to babysit

EDGE

Geographically closest node

Vercel's global edge network means a visitor in Kampala hits a nearby PoP. TTFB stays low on 3G/4G, which is most of the traffic.

low TTFB worldwide

MAINTAINABILITY

A volunteer board member can fix a typo

Content lives in MDX alongside the code. Git-push deploys. No CMS contract, no monthly SaaS fee, and no dependency on a paid vendor for small updates.

volunteer-operated · 17 years of institution