Pro Bono

The work that doesn't bill. Charities, community sites, a developer tool, a quiz that teaches, a game we built because we wanted to. Tap any one to read on.

  1. Developer Tool Live

    Razor Formatter

    A free formatter that knows what HTML, C#, and Razor are doing in the same file.

    • Razor
    • Blazor
    • C#
    • JavaScript
    • Client-side
    • Open Use
    Objective

    Build a browser-based formatter for the three-language tangle of .razor files, where every other tool falls over.

    Razor files are awkward. They mix HTML markup, C# logic, and Blazor component syntax in one file. Prettier crashes on @if blocks. Visual Studio's built-in formatter struggles with multi-line tags that contain @() expressions. dotnet format does the C#, but leaves the markup alone.

    We hit this often enough to do something about it. Razor Formatter runs on a small state machine that tracks quoted attributes, parenthesis depth inside @() expressions, and component nesting across multi-line tags. Drop a file in, get a properly indented one out. It runs entirely in the browser, which means no upload and no telemetry. Live at razorformatter.com.

    Outcomes
    • Free, browser-based Razor and Blazor formatter at razorformatter.com
    • Handles HTML, C#, and Razor in a single pass
    • 100% client-side, no upload, no sign-up
    • Open for any .razor or .cshtml file
    Duration Ongoing
  2. Community Live

    Coleman Community Association

    A thousand monthly visitors and a website that gets out of the way.

    • Blazor WASM
    • ASP.NET Core
    • MariaDB
    • Tailwind
    • Caddy
    • Linux
    Objective

    Replace a community centre's tired site with something fast, accessible, and easy for staff to update.

    Coleman is a local community centre with about a thousand people moving through it every month, classes, events, room bookings, the usual. The old site was held together with hope. We rebuilt it on Blazor WASM with an ASP.NET Core API behind it, deployed on Linux with Caddy, and made the bits staff actually touch as boring and predictable as possible.

    It runs itself, which is the goal. We pop in when something needs a nudge.

    Outcomes
    • Website live, serving 1,000+ monthly visitors
    • Self-hosted, no ongoing platform fees
    • Simple admin flows for non-technical staff
    • Maintained at no cost since launch
    Duration Ongoing
  3. Education Live

    The Useful Quiz

    A quiz where even the wrong answers leave you smarter.

    • Quiz
    • Education
    • Blazor WASM
    • ASP.NET Core
    • Keyboard-first
    • Open Use
    Objective

    Build a quiz where every answer is a small lesson, and the wrong ones teach you as much as the right ones.

    3,260 questions, 33 subjects, three game modes (Endless, Sprint, Random). Each round is ten multiple-choice questions, every answer ships with a one-sentence fact, and the wrong ones teach you as much as the right ones.

    The subjects are organised the way life actually divides up: street smarts and first aid and cooking sit alongside the harder sciences; psychology and rhetoric next to economics and politics. Keyboard-driven if you want it (1-4 or A-D, Enter to advance), with an end-of-round breakdown and a result you can copy and share. Live at theusefulquiz.com.

    Outcomes
    • Free educational quiz live at theusefulquiz.com
    • 3,260 questions across 33 subjects
    • Three game modes: Endless, Sprint, Random
    • One-sentence fact attached to every answer, right or wrong
    • Keyboard-first navigation and shareable round results
    Duration Ongoing
  4. Education Live

    Madrasah Rahimiyah

    Student applications without the spreadsheet shuffle.

    • Blazor WASM
    • ASP.NET Core
    • MariaDB
    • Tailwind
    • Linux
    Objective

    Replace a paper-and-spreadsheet student application process with a small, sturdy web application.

    A local madrasah needed a way to take student applications online without rebuilding their whole admin operation. We built a small Blazor WASM site with an ASP.NET Core API behind it, hooked into a MariaDB database, and gave the staff a clean form to send applicants to.

    They run it themselves now. We hear about it when something breaks, which isn't often.

    Outcomes
    • Online student application website delivered
    • Self-managed by the school's staff
    • Replaced the manual paper and spreadsheet flow
    Duration 2 months
  5. Charity In development

    The Daily Charity

    Donations without the fingerprint trail.

    • Blazor WASM
    • ASP.NET Core
    • SignalR
    • MariaDB
    • Tailwind
    • Linux
    • Privacy
    Objective

    Build a donation platform that doesn't quietly hand donor data to a dozen third parties along the way.

    Most donation platforms read like marketing dashboards. We wanted one that didn't. The Daily Charity runs on Blazor WASM with a small ASP.NET Core API behind it, real-time messaging via SignalR for the live feed, and absolutely no tracking pixels.

    Currently being rebuilt and refined. The plan: one privacy-focused donation platform, hosted free for charities who'd rather their donors stay donors than become leads.

    Outcomes
    • Privacy-focused donation platform in active development
    • Real-time donation feed via SignalR
    • No tracking, no third-party calls, no cookies
    • Hosted free for the charities that use it
    Duration Ongoing
  6. Game In development

    Mithliha

    Wordle for classical Arabic memorisation.

    • Blazor WASM
    • ASP.NET Core
    • MariaDB
    • Tailwind
    • Linux
    Objective

    Turn the classical Arabic tradition of memorising poetry into a small, daily, sticky web game.

    This one is a passion project. There's a long tradition of memorising classical Arabic poetry and prose line by line, and we wondered if a daily web puzzle could turn that practice into something playful.

    Built on the same Blazor WASM and ASP.NET Core stack the rest of the work runs on. Quietly in development, no announcement yet, no marketing budget. The idea is to ship it when it earns being shipped.

    Outcomes
    • Daily Arabic memory game in active development
    • Runs on shared Blazor stack
    • Designed for a small, returning audience
    Duration Ongoing
  7. International Charity In development

    Amal Quaryaty

    A donation site in three languages, built across two countries.

    • Blazor WASM
    • ASP.NET Core
    • MariaDB
    • Tailwind
    • Linux
    • Multilingual
    Objective

    Build a fundraising and outreach site for a Moroccan charity that worked across the languages their community actually speaks.

    Amal Quaryaty is a charity based in Morocco. They needed a way to take donations and tell people what they were doing, in Arabic, French, and English.

    Built on the same Blazor and ASP.NET stack we use everywhere, kept light enough to load over patchy mobile connections. Currently in development, with the multilingual layer being shaped before launch.

    Outcomes
    • Multilingual donation site in development (Arabic, French, English)
    • Tuned for low-bandwidth mobile
    • Targeted at increasing outreach and donation flow
    Duration Ongoing

Tell us what you're working on.

A paragraph is plenty. We usually reply within two working days, with our take on whether we're the right people, where we'd start, and roughly what it'd cost. If it's not a fit, we'll say so, and point you somewhere better.

Write to zak@tahleelconsultancy.com