Concept · 2026
Recycling, answered in plain Malay.
BumiKita is a concept civic campaign for Malaysian households: the three Rs in plain Malay, a what-goes-where guide, and 12 community drop-off points you can filter by state.
Visit the page (opens in a new tab)- Client
- BumiKita — concept
- Sector
- Civic & environment
- Market
- Malaysia
- Scope
- Single page, no backend
Learn the habit, then find the bin.
The page has one job: turn good intentions into a sorted bag and a short trip. Guidance sits above the directory, so the answer is already in view when the filter is used.
12
Community drop-off points
5
States and territories
~900 B
Inline JavaScript, no framework
The idea
Most people want to recycle. They stall on the sorting.
A household is not short of advice; it is short of a straight answer at the moment the bag is full. BumiKita answers three questions in order: what are the three habits, which bin does this belong in, and where do I take it? The whole page is written in plain Malay, with no acronyms and no login.
One page, in reading order.
Kerangka 3R explains the habits, Bahan sorts everyday waste, and Cari pusat lists the places. Nothing important hides behind a menu.
The filter is the whole tool.
State chips narrow 12 locations, a live count announces the result, and every card links straight to Google Maps.
No account, no cookie, no analytics.
The page is three static files and one small script. There is no database to query, no consent banner to dismiss, and nothing to sign up for.
Works without JavaScript.
All 12 locations stay in the document. The filter only hides and shows; it never fetches data, so the directory survives a failed script.
Nothing to sign up for. Nothing to track.
A civic tool should not ask for a profile before it answers a question. BumiKita is deliberately the smallest version that is still useful.
- Storage
- No cookies, no localStorage
- Requests
- Static files only, no API
- Keyboard
- Real buttons, visible focus
- Screen readers
- aria-pressed and aria-live count
99/100
Reported performance
100/100
Accessibility, SEO, best practices
0 CLS
Explicit image dimensions
A little page with a lot of care.
No framework, no build step and no server-side anything. The constraints are the point.
$ 214 KiB total
Reported transfer for the whole page
Markup
Semantic HTML5 and hand-written CSS.
Sections, lists and definition-style blocks carry the structure. There is no CSS framework and no utility build to keep in sync.
Script
Under a kilobyte, inline.
The filter toggles
aria-pressed, hides
non-matching cards and rewrites one live count. That is the entire
behaviour layer.
Media
AVIF first, WebP behind it.
Every photograph has explicit dimensions and lazy loading below the fold. The layout does not move when the images arrive.
Type
Three subset variable fonts, self-hosted.
Plus Jakarta Sans, Inter and JetBrains Mono ship from the same origin, so the CSP stays strict and no third-party request leaves the page.
Design
Canopy Green, Sprout and Kraft.
A small, fixed palette does the identity work: deep green for text and actions, a bright green for live states, and warm paper behind both.
Deploy
Files on any static host.
Cloudflare Pages, GitHub Pages or a plain bucket. A small
_headers file adds the CSP
and cache rules.
Note — All names, addresses, postcodes and opening hours in the directory are made-up demo data. BumiKita is an independent portfolio concept and is not affiliated with any Malaysian agency.
Next concept
Al-Hadi & Partners
Need a small tool your audience will actually use?
A focused page, a clear answer and no sign-up can be the whole product. If that sounds like your organisation or community, this is the conversation.