VIKUNDI is a VICOBA (Village Community Bank) management platform — a web app designed for East African community savings groups, cooperative organizations, and informal microfinance institutions (primarily Tanzania, with English/Swahili bilingual support).
# Vikundi — VICOBA Group Management System
A comprehensive web-based platform for managing VICOBA (Village Community Bank) savings groups, cooperatives, and informal microfinance institutions in East Africa. Supports English and Swahili (Kiswahili).
## Features
- **Member Management** — Register, approve, and organize members into groups
- **Contributions** — Track member savings and generate statements
- **Loan Management** — Applications, approvals, disbursement, repayment schedules (Flat Rate, Reducing Balance, EMI)
- **Accounting** — Full double-entry bookkeeping: chart of accounts, journals, expenses, budgets, bank reconciliation
- **Documents** — Upload, manage, and digitally sign compliance and loan documents
- **Communications** — Email/SMS templates, notification center, campaigns
- **Reports** — Financial reports, member statements, audit logs, expense analysis
- **Bilingual** — Full English and Swahili (Kiswahili) support
## Tech Stack
| Layer | Technology |
|---|---|
| Backend | PHP 8.2 |
| Database | MySQL 8.2 |
| Web Server | Apache + mod_rewrite (WAMP) |
| Frontend | Bootstrap 5.3, jQuery 3.7.1, DataTables, SweetAlert2 |
| PDF Export | TCPDF |
| Testing | PHPUnit 11 via Composer |
## Requirements
- PHP 8.2+
- MySQL 8.0+
- Apache with `mod_rewrite` enabled
- Composer
## Installation
1. **Clone the repository**
```bash
git clone
github.com
cd Vikundi
```
2. **Install dependencies**
```bash
composer install
```
3. **Configure the database**
```bash
cp includes/config.example.php includes/config.php
# Edit includes/config.php with your database credentials
```
4. **Import the database schema**
```bash
mysql -u root -p vikundi < database/vikundi.sql
```
5. **Configure Apache**
- Point your virtual host root to the project directory
- Ensure `mod_rewrite` is enabled
- Access at `
localhost`
## Running Tests
```bash
# Run all tests
composer test
# Run unit tests only
composer test-unit
# Ru …