This project is a PHP-based Barangay Management System designed to support Local Government Unit (LGU) operations. It streamlines administrative workflows such as managing residents, officials, blotters, crimes, events, announcements, certifications, logs, projects, and system settings.
The system implements role-based authentication to ensure proper access control across administrative levels.
- Resident information management\
- Barangay officials and staff management\
- Blotter and crime record tracking\
- Event and announcement publishing\
- Certification requests and issuance\
- Activity logs and audit trails\
- Role-based access control (Admin, Staff, Resident)\
- Centralized dashboard for oversight
- Backend: PHP\
- Database: MySQL\
- Frontend: HTML, CSS\
- Authentication: Session-based
- Create a MySQL database named
barangay - Import the database schema\
- Update database credentials in
config/dbcon.php - Run via
public/index.php?action=dashboard
MIT License
Copyright (c) 2025 Ban
Permission is hereby granted, free of charge, to any person obtaining a
copy
of this software and associated documentation files (the "Software"), to
deal
in the Software without restriction, including without limitation the
rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included
in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND.
- app/: Contains controllers, middleware, and views.
- controllers/: Logic for handling requests.
- middleware/: Authentication checks.
- views/: HTML/PHP templates.
- config/: Database configuration.
- public/: Entry point (index.php).
- style/: CSS files.
- Create a MySQL database named
barangay. - Import the schema (assumed tables: users, residents, officials, announcements, blotters, certifications, crimes, events, logs, projects, settings).
- Update
config/dbcon.phpwith your database credentials. - Access via
public/index.php?action=dashboard(after login).
- users: id, username, password, role, email
- residents: id, name, address, birthdate, gender, user_id
- officials: id, name, position
- announcements: id, title, content, date
- blotters: id, complainant, respondent, description, date
- certifications: id, resident_id, type, date, status
- crimes: id, type, description, date
- events: id, title, description, date
- logs: id, user_id, action, date
- projects: id, name, description, budget
- settings: key, value
- Admin: Full access.
- Staff: Manage most features.
- Resident: View profile, request certifications.
Barangay_Management/
├── .git/
├── .gitignore
├── .htaccess
├── README.md
├── db_management.sql
├── app/
│ ├── controllers/
│ │ ├── AnnouncementContoller.php
│ │ ├── Auth/
│ │ │ ├── ForgotController.php
│ │ │ ├── LoginController.php
│ │ │ ├── LogoutController.php
│ │ │ └── RegisterController.php
│ │ ├── BaseController.php
│ │ ├── BlotterController.php
│ │ ├── CertificationController.php
│ │ ├── Controller.php
│ │ ├── CrimeController.php
│ │ ├── DashboardController.php
│ │ ├── EventController.php
│ │ ├── LogController.php
│ │ ├── OfficialController.php
│ │ ├── ProfileController.php
│ │ ├── ProjectController.php
│ │ ├── ResidentsController.php
│ │ └── SettingsController.php
│ ├── middleware/
│ │ └── auth.php
│ └── views/
│ ├── announcements.php
│ ├── auth/
│ │ ├── error.php
│ │ ├── forgot-password.php
│ │ ├── login.php
│ │ ├── logout.php
│ │ └── register.php
│ ├── blotters/
│ │ ├── add_blotter.php
│ │ ├── blotters.php
│ │ ├── edit_blotter.php
│ │ └── settle_blotter.php
│ ├── certifications/
│ │ ├── certifications.php
│ │ ├── request.php
│ │ └── view.php
│ ├── crime/
│ │ ├── add_crime.php
│ │ ├── crimes.php
│ │ └── edit_crime.php
│ ├── dashboard.php
│ ├── events/
│ │ ├── add_events.php
│ │ └── events.php
│ ├── layout/
│ │ ├── footer.php
│ │ └── header.php
│ ├── logs/
│ │ ├── clear_logs.php
│ │ └── logs.php
│ ├── official/
│ │ ├── add_official.php
│ │ └── officials.php
│ ├── profile/
│ │ ├── change_password.php
│ │ ├── edit_profile.php
│ │ └── my_profile.php
│ ├── projects.php
│ ├── request_certification.php
│ ├── residents/
│ │ ├── add_residents.php
│ │ ├── edit_residents.php
│ │ └── residents.php
│ └── settings.php
├── config/
│ └── dbcon.php
├── public/
│ └── index.php
Main dashboard displaying key statistics and quick access to all system modules including resident count, active blotters, recent announcements, and system overview cards.
Interface for managing barangay residents - view, add, edit, and search resident information including personal details, addresses, and contact information.
Management interface for barangay officials and staff members - add, edit, and view official positions, names, and administrative roles.
Blotter management system for recording complaints, disputes, and incidents between residents - includes complainant, respondent, description, and settlement status.
Crime incident tracking interface - record, view, and manage crime reports with details like crime type, description, date, and location.
Barangay events calendar and management - create, edit, and display community events, meetings, and activities with scheduling and description.
Public announcements and news posting interface - create and manage community announcements, news, and important notices for residents.
Certificate request and issuance system - residents can request various certificates (clearance, residency, etc.) and administrators can approve/issue them.
Audit trail interface showing all system activities - user actions, login attempts, data modifications, and system events for security monitoring.
Barangay development projects tracking - manage community projects with budgets, descriptions, progress tracking, and status updates.
System configuration interface - manage global settings, user roles, permissions, and system-wide configurations.
Personal profile management for users - view and edit personal information, change passwords, and manage account settings.