This is a web-based Mess Management System designed to simplify and automate routine tasks for managing a shared mess. The system allows users to log in, manage market duty schedules, track expenses, and handle contributions transparently.
-
User Authentication:
- Users log in using their Google accounts.
-
Market Duty Routine:
- Users can select two days of the week for market duty.
- Email reminders are sent to the users on their selected days.
-
Expense Tracking:
- Users record daily market expenses, including the amount and groceries purchased.
- The system maintains a cumulative record of all expenses.
-
Contribution Management:
- Users can log their monetary contributions, specifying the amount, contributor’s name, and the date.
- The system deducts expenses from the available funds and provides an updated balance.
-
Dynamic Dashboard:
- Displays a summary of contributions, expenses, and remaining balance.
- Includes a detailed breakdown of purchases and contributions for transparency.
- Node.js (>=14.x)
- npm or yarn
- Firebase account for authentication and backend setup
-
Clone the repository:
git clone https://github.com/Sahnik0/Mess-Management.git cd project
-
Install dependencies:
npm install
-
Set up Firebase:
- Create a Firebase project.
- Enable Google Authentication.
- Obtain the Firebase configuration and replace placeholders in
src/lib/firebase.ts
.
-
Configure environment variables:
- Create a
.env
file in the root directory. - Add your Firebase API keys and other required configurations.
- Create a
-
Start the development server:
npm run dev
-
Open the app in your browser at
http://localhost:3000
.
- Login: Log in using a Google account.
- Dashboard: View a summary of contributions, expenses, and balances.
- Market Duty: Set market duty days and receive email reminders.
- Expenses: Add daily expenses and track purchases.
- Contributions: Record contributions and maintain transparency.
- Frontend: React, TypeScript, Tailwind CSS
- Backend: Firebase Authentication and Realtime Database
- Build Tool: Vite
- Add notifications for pending tasks.
- Support multiple mess groups with individual management.
- Generate detailed monthly reports.
Contributions are welcome! Please fork the repository and submit a pull request with your changes.
This project is licensed under the MIT License. See the LICENSE
file for details.
Feel free to ask for help or suggest new features!