All projects

non-profit

Welfare Management System for Non-Profit Organisation

A custom content management system built for State Welfare and Educational Society Kalah, managing welfare applications, donor records, financial transactions, and monthly balance sheets. Built with Laravel and FilamentPHP.
Welfare Management System for Non-Profit Organisation
Welfare Management System for Non-Profit Organisation preview

The brief

State Welfare and Educational Society (SWAES) Kalah is a non-profit organisation managing multiple welfare assistance programmes, covering education fees, medical aid, marriage support, goods distribution, and more. Before this system, all of this was managed manually: paper records, spreadsheets, and no reliable way to track donor contributions against actual disbursements or produce an accurate balance sheet at the end of each month.

The organisation needed a web-based management system their administrators could operate without technical knowledge, a single place to handle incoming welfare applications, record donations, log financial transactions, and generate the reports their leadership needed to make decisions and maintain accountability to their donors.

What was built

A web-based CMS that centralises every operational function the organisation manages, welfare applications, donor tracking, financial records, and monthly reporting in a single admin interface built for non-technical staff.

  • Welfare application management

    • Separate application modules for each assistance type: fee, medical, marriage, goods, expenses, uniform, and books
    • Applicant records with full history of previous applications and disbursements
    • Filterable and searchable application tables across all assistance types
  • Donor management

    • Donor profiles with contact information and contribution history
    • Individual donation records linked to each donor
    • Running total of contributions per donor
    • Donor list exportable for reporting and acknowledgement
  • Financial transactions

    • Income and expense transaction log with category, date, and amount
    • Transactions linked to specific welfare disbursements where applicable
    • Running balance calculated automatically from transaction history
    • Export to PDF and Excel for internal reporting and audits
  • Monthly balance sheets

    • Auto-generated monthly balance sheet from transaction records
    • Opening balance, total income, total expenses, and closing balance per month
    • Printable and exportable format for board review
  • Reports and settings

    • Summary reports across applications, donations, and financial activity
    • Organisational settings panel for managing categories, assistance types, and system configuration

Technical notes

  1. Filament as the application framework

    The entire CMS is built on Filament, not just the admin panel. Each welfare application type is a dedicated Filament resource with its own form, table, and infolist. This keeps the code for each module isolated and independently maintainable, and means adding a new assistance type in the future is a matter of adding one resource class rather than modifying shared code.

  2. Balance sheet generation

    Monthly balance sheets are derived entirely from the transaction table rather than stored as separate records. A query groups transactions by month, computes the opening balance by summing all prior transactions, then calculates income, expenses, and closing balance for the requested period. This means historical balance sheets are always consistent with the underlying transaction data — there is no separate record to fall out of sync.

  3. Modular application types

    Each of the seven assistance types (fee, medical, marriage, goods, expenses, uniform, books) has different fields relevant to that type of application. Rather than a single generic application form with many optional fields, each type has its own form schema and database table. This keeps data clean and makes each module straightforward for non-technical administrators to use.

Screenshots

More projects

Let's talk

Tell me about your project. I reply to all messages within 24 hours.

let's make something together

What does it do, who is it for, what does success look like?

What happens next

  1. 1 I read your message and understand what you need
  2. 2 I reply within 24 hours with questions or an initial proposal
  3. 3 We have a short call to align on scope and timeline
  4. 4 We start building