Skip to content
All projects
Web · Donations

Hasanat

We didn't start Hasanat — we picked it up, fixed what was broken, and shipped what was missing.

Visit live site
Client
Hasanat
Year
2025
Timeline
Multi-month retainer
Industry
Nonprofit & Charity
Live URL
Hasanat preview
Overview
The challenge

Hasanat is a DGR-registered, ACNC-listed Australian charity whose donation platform had already launched — and was already taking real money from real donors. What it didn't have was a team that could keep it stable and keep it moving. We came in mid-flight, to an unfamiliar Next.js frontend on a Laravel API, with two constraints that pulled against each other: nothing on the donation path could break, and the roadmap was tied to a religious calendar that doesn't move — Zakat in Ramadan, Qurban before Eid al-Adha. Miss the window and the feature is worthless for a year.

Our approach

We ran two tracks at once. The fix track went through the money path step by step — project data, frequency and amount selection, the donation cart, currency conversion, checkout and confirmation — and closed the bugs that were quietly costing completed donations. The feature track then built outward from a working core: a guided Zakat journey with the Sharia guide and calculator, a seasonal Qurban campaign with a live countdown and notify-me capture, gift donations that email a personalised PDF certificate, a filterable project catalogue by cause, region and urgency, unit-based giving that prices a donation as "1 water truck = A$30", monthly recurring alongside one-off, and a 7-currency switcher on live exchange rates for donors outside Australia. We held it on a retainer through the busy giving seasons, then documented the codebase and handed it back running.

Our work

Inside the product

Tap any screen to view it full size

07 screens

Key features

Codebase takeover

We inherited a live Next.js + Laravel platform mid-flight, mapped the frontend against the API, and got productive in someone else's code without a rewrite.

Donation path fixes

Every step between picking a cause and a confirmed receipt — project data, frequency, amounts, cart, currency, checkout — audited and fixed before anything new shipped.

Zakat guide & calculator

A guided Zakat journey: the Sharia guide, a prep checklist for bank statements, gold, silver, shares and debts, the Nisab calculation, then a direct path to pay what's owed.

Qurban seasonal campaign

A campaign that opens before Eid al-Adha with a live countdown and a notify-me capture, and falls back to last year's country-by-country impact when bookings are closed.

Gift donations

Donate in someone else's name and send them a personalised PDF gift certificate with a written message, delivered straight to their inbox.

Donation cart & currencies

Add-to-cart giving across several projects at once, one-off or monthly, with a 7-currency switcher on live exchange rates for donors outside Australia.

Project discovery

A filterable catalogue by cause, region and urgency, with funding progress bars and unit-based giving — 1 water truck = A$30 — so donors see exactly what their money buys.

Maintenance & handover

Bug fixes, content updates and performance passes on a retainer through the charity's busiest giving seasons, then a documented handover back to the team.

Our work

How we shipped it

01

Takeover & audit

We read someone else's codebase, mapped the Next.js frontend against the Laravel API, and listed every broken flow — then agreed the order: anything between a donor and a completed donation goes first.

02

Stabilise the money path

Project data, frequency and amount selection, the cart, currency conversion, checkout and confirmation — fixed end to end. No new features shipped until giving worked reliably.

03

Feature waves

Then we built outward against the charity's calendar: the Zakat guide and calculator, the Qurban campaign, gift donations with PDF certificates, cause/region/urgency filters, unit-based giving and monthly recurring.

04

Maintain, then hand over

We held the platform on a retainer through the seasonal peaks, then documented the codebase, walked the team through it, and handed it back running.

Tech stack

Next.jsReactTailwind CSSLaravelREST APICloudflare
The outcome

Hasanat went from a platform that needed rescuing to a giving product that carries the charity's whole calendar: donors browse causes by region and urgency, calculate and pay their Zakat, book Qurban in season, gift a donation with a certificate, and check out in their own currency. The engagement has since ended — we handed it back documented and running, and it's still live at hasanat.org.

By the numbers

A$631K+
Raised through the platform
7
Currencies at checkout
2
Seasonal campaigns supported
Live
Still running after handover

Want an outcome like this?

Tell us about the product or operational problem you want to solve, and we'll reply with a clear next step within 24 hours.

Request a project
Start your next project

Let's build it right

Tell us what you want to launch or improve. We'll review it, reply with a clear next step, and book a short call if the project is a fit — no commitment.