Develop a Mess Meal Management System (Laravel-style MVC)
Build a Mess Meal Management Web Application using a Laravel-like MVC architecture (Models, Controllers, Views). The system should manage meal tracking, deposits, expenses, bazar assignments, and member communication.
Use email and password authentication.
Preferred stack (optional but recommended):
-
Backend: PHP (Laravel-like MVC)
-
Database: MySQL
-
Frontend: Blade / Bootstrap / Tailwind
-
API structure allowed
-
Authentication system required
User Roles
There should be 3 types of users:
1. Super Admin
-
Manage all messes
-
View all mess data
-
Suspend or delete mess
-
Manage managers
2. Mess Manager
Manager creates and manages a mess.
Permissions:
-
Create mess
-
Generate unique secret mess code
-
Add/remove members
-
Assign bazar duty
-
Add deposits
-
Add meals
-
Add meal costs
-
Add other costs
-
Change manager
-
Start new month
-
View reports
-
Export data to PDF
3. Member
Members join a mess using a secret mess code.
Members can:
-
View mess statistics
-
Add their own meal entries
-
View personal deposit
-
View personal meal cost
-
Chat with members
-
Post in mess feed
-
Update profile
Mess Creation
Manager creates mess by entering:
-
Mess name
-
Mess location (optional)
System generates:
-
Unique Mess Secret Code
Members join using this code.
Mess Dashboard (Manager & Members)
Dashboard must show:
Mess Statistics
-
Mess Balance (BDT)
-
Total Deposit
-
Total Meal Cost
-
Total Meals
-
Meal Rate
-
Other Cost Per Person
Personal Statistics
Each member can see:
-
My Meals
-
My Deposit
-
My Cost
-
My Balance
Meal System
Daily meal system:
| Time | Meal Value |
|---|---|
| Morning | 0.5 or 1.0 |
| Lunch | 1.0 |
| Dinner | 1.0 |
Manager or member can record meals.
Features:
-
Mark meal per person per day
-
Add guest meal
-
Guest meal counts as extra meal
Example:
Date: 12 JuneMorning: 0.5
Lunch: 1
Dinner: 1
Guest meal: 2
Bazar Management
Manager can assign bazar duty.
Fields:
-
Date
-
Assigned Member
-
Bazar Amount
-
Notes
Members can also assign themselves if needed.
Expense System
Manager can add:
Meal Cost
Example:
DateDescription
Amount
Other Cost
Example:
GasElectricity
Internet
Cleaning
System calculates:
Other cost per personDeposit System
Manager can add deposit:
MemberAmount
Date
Note
Members should be able to see:
-
Total deposit
-
Remaining balance
Member Management (CRUD)
Manager can:
-
Add member
-
Remove member
-
Update member
-
Change manager
Member information:
NamePhone
Institute (School/College)
Gender
Location
Members can update their own profile.
Monthly System
Mess data should be monthly based.
Features:
-
Active month dashboard
-
Start new month
-
Archive previous months
-
View previous month data
Manager can:
Start New MonthReset meals
Reset deposits
Carry balance if needed
Notifications
Notification section required.
Examples:
-
New bazar assigned
-
Deposit added
-
Meal updated
-
Post created
-
Manager changed
Chat System
Inside each mess there should be real-time chat.
Features:
-
Group chat
-
Message history
-
Timestamp
-
Sender name
Mess Feed (Post System)
Similar to Facebook group posts.
Members can:
-
Create post
-
Edit post
-
Delete post
-
Comment (optional)
-
Everyone in mess can see posts
Example posts:
Tomorrow bazar korbo amiMeal rate bereche
Friday special dinner
Notes Section
Each member can keep personal notes.
Example:
Remember to deposit moneyNeed to buy vegetables tomorrow
Manager can also add mess notes.
Reports
System must generate reports:
Member Report
Total mealTotal cost
Total deposit
Balance
Mess Report
Total mealTotal deposit
Total cost
Meal rate
Export
Manager can export:
-
Monthly report
-
Member report
Format:
PDF DownloadRequired CRUD Modules
Must include CRUD operations for:
MessMembers
Meals
Deposits
Meal Costs
Other Costs
Bazar Assignments
Posts
Notes
Notifications
Suggested Database Tables
Example tables:
usersmesses
mess_members
meals
meal_costs
other_costs
deposits
bazar_assignments
posts
messages
notifications
months
notes
Additional Requirements
-
Role-based middleware
-
Mess isolation (members only see their mess)
-
Secure authentication
-
Clean MVC structure
-
Responsive UI
-
Pagination for large data
-
Validation on all inputs
Expected Output
Produce:
-
Full MVC project structure
-
Database schema/migrations
-
Controllers
-
Models
-
Routes
-
Blade views
-
Authentication system
-
Dashboard UI
-
API endpoints if necessary