A unified financial platform for managing cooperative members, loans, dividends, and payroll. Features a modern Tailwind CSS dashboard, RESTful APIs for mobile apps, and automated accounting engines.
| Admin Dashboard | Loan Management | Member Ledger | Mobile Integration |
|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
This is a Hybrid Monorepo containing the core web platform and mobile application sources.
Built with Native PHP 8+ and Tailwind CSS.
- Member Management: CRUD operations for staff/members (
users.php,employee.php). - Accounting Engine: Double-entry ledger system (
coop_general_ledger.php,coop_trial_balance.php). - Loan Processor: Automated eligibility checks and amortization schedules (
loan/). - Financial Reporting: Comprehensive PDF reports and analytics (
masterReportModern.php,dividend/).
RESTful endpoints serving the mobile application.
- Authentication: Secure login and token management (
auth_api/api/auth/). - Transactional: Endpoints for loan requests, balance checks, and savings history (
api/). - Admin Operations: Member search, loan approval, and attendance tracking (
auth_api/api/admin/).
Contains the source code for the member-facing mobile app (Dart/Flutter).
- Allows members to track savings, request loans, and view dividends on the go.
- Full integration with the REST API backend.
- Cross-platform support (iOS, Android, Web).
| Module | Description | Key Files |
|---|---|---|
| π° Finance | General Ledger, Trial Balance, and Journal Entries. | coop_finance.php, coop_journal_entries.php, coop_general_ledger.php |
| πΈ Loans | Loan application workflow, guarantor approval, and repayment tracking. | loan-processor.php, loan/, auth_api/api/loans/ |
| π Reporting | PDF generation for monthly reports and dividend sharing. | masterReportModern.php, dividend/, exportMemberContributions.php |
| π Alerts | Automated SMS/Email notifications for transactions. | AlertSystem/, onesignal/, auth_api/api/auth/notifications.php |
| π Import | Bulk data processing from Excel/CSV files. | excel_import/, api_upload.php |
| π₯ Member Management | Complete member lifecycle management. | users.php, employee.php, auth_api/api/members/ |
| π Authentication | Secure authentication and authorization system. | auth_api/api/auth/, login.php, auth_api/admin/ |
- PHP 8.1 or higher
- MySQL 5.7+ or MariaDB 10.3+
- Composer (for PHP dependencies)
- Web server (Apache/Nginx)
-
Clone the Repository
git clone https://github.com/meowbanky/coop_admin.git cd coop_admin -
Database Setup
- Create a MySQL database named
coop_db(or your preferred name). - Import
database/setup_full_accounting_system.sqlto initialize tables. - Configure database credentials in
Connections/coop.phporconfig/.
- Create a MySQL database named
-
Install PHP Dependencies
composer install
This installs reporting tools (MPDF, PHPOffice) and other required packages.
-
Configure Environment
- Copy
config/env.exampletoconfig/.env(if available). - Update database credentials, API keys, and SMTP settings.
- Copy
-
Set Permissions
chmod 755 uploads/ chmod 644 *.php -
Running Locally
php -S localhost:8000
Then navigate to
http://localhost:8000in your browser.
If you want to run the mobile application:
cd oouth_coop_app
flutter pub get
flutter runSee oouth_coop_app/README.md for detailed mobile app setup instructions.
POST /auth_api/api/auth/login.php- User loginPOST /auth_api/api/auth/register.php- User registrationPOST /auth_api/api/auth/request_otp.php- OTP requestPOST /auth_api/api/auth/reset_password.php- Password reset
GET /auth_api/api/members/search.php- Search membersGET /auth_api/api/profile/get_profile.php- Get user profilePOST /auth_api/api/profile/submit_changes.php- Update profile
POST /auth_api/api/loans/request.php- Submit loan requestGET /auth_api/api/loans/tracking.php- Track loan statusPOST /auth_api/api/loans/guarantor-request.php- Request guarantor
GET /auth_api/api/transactions/get_periods.php- Get transaction periodsGET /auth_api/api/transactions/transaction-summary.php- Get transaction summary
For complete API documentation, see api/API_TESTING_GUIDE.md.
- Role-Based Access Control (RBAC): Distinct views for Admins, Accountants, and Regular Users.
- Input Sanitization: Protection against SQL injection in core classes (
classes/class.db.php). - Audit Logging: Tracks all financial modifications (
auth_api/admin/audit_trail.php). - Session Management: Secure session handling with timeout protection.
- Password Hashing: Bcrypt hashing for all user passwords.
- CORS Configuration: Proper CORS handling for API endpoints (
auth_api/config/cors.php).
- Modern Tailwind CSS Design: Clean, professional interface with consistent styling.
- Responsive Layout: Mobile-first approach that works on all devices.
- Interactive Components: Real-time updates, modals, progress bars, and data tables.
- User-Friendly Navigation: Intuitive menu structure and quick access dashboard.
The system uses a comprehensive MySQL database with tables for:
- Members/Users (
users,employees) - Financial transactions (
transactions,journal_entries) - Loans (
loans,loan_applications,loan_repayments) - Accounting (
chart_of_accounts,general_ledger,trial_balance) - Events and Attendance (
events,event_attendance)
See database/ folder for SQL schema files.
Use the provided API testing guide:
# See api/API_TESTING_GUIDE.md for detailed testing instructions- Test member registration and login
- Verify loan application workflow
- Check financial reporting accuracy
- Validate mobile app API integration
The repository includes the Flutter mobile application source code in oouth_coop_app/. This demonstrates:
- Full-Stack Capability: Complete ecosystem from backend to mobile
- API Integration: RESTful API consumption
- Cross-Platform Support: iOS, Android, and Web compatibility
Note: In production environments, mobile apps typically have separate repositories. This monorepo structure showcases the complete system architecture and is ideal for portfolio demonstration.
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Bankole Abiodun
- Developer & System Architect
- Portfolio: GitHub Profile
- Web Portal: https://www.emmaggi.com/coop_admin/
- API Base URL:
https://www.emmaggi.com/coop_admin/auth_api/api/
- Accounting Engine Usage Guide
- API Integration Guide
- Database Structure Fixes
- Loan Processor README
- Quick Start API Guide
- Event Attendance Implementation
Built with β€οΈ using PHP, MySQL, Tailwind CSS, and Flutter
Demonstrating Full-Stack Development Capabilities



