A comprehensive, full-stack coworking space management application built with the MERN stack (MongoDB, Express, React, Node.js). This platform allows users to seamlessly browse, book, and manage workspaces and meeting rooms, while providing administrators with a powerful dashboard to manage operations, track revenue, and communicate with members.
- Authentication: Secure user registration and login.
- Desk Booking: Browse available desks and book them for specific dates.
- Meeting Rooms: View amenities, check availability, and reserve meeting rooms.
- User Dashboard: Track active bookings, booking history, and manage your profile.
- Billing & Payments: View invoices and keep track of payment history.
- Community Announcements: Stay updated with the latest news from the coworking space.
- Admin Dashboard: Get a real-time overview of statistics, active bookings, and revenue.
- Resource Management: Full CRUD capabilities for Desks and Meeting Rooms (create, edit, delete, toggle availability).
- Booking Oversight: View and manage all user bookings across the platform.
- Revenue Tracking: Monitor financial performance and billing records.
Frontend:
- React.js
- Redux Toolkit (State Management)
- React Router DOM (Navigation)
- Axios (API Client)
Backend:
- Node.js & Express.js
- MongoDB & Mongoose (Database & ORM)
- JSON Web Token (JWT) for secure authentication
- Bcryptjs for password hashing
- Node.js (v14 or higher)
- MongoDB (Local instance or MongoDB Atlas)
-
Clone the repository:
git clone https://github.com/yourusername/coworking-management.git cd coworking-management -
Setup the Backend:
cd backend npm installCreate a
.envfile in thebackenddirectory with the following variables:PORT=5001 MONGODB_URI=your_mongodb_connection_string JWT_SECRET=your_secret_key
(Optional) Seed the database with sample data:
npm run seed
-
Setup the Frontend:
cd ../frontend npm install
Run the Backend Server:
Open a terminal in the backend folder and run:
npm run devRun the Frontend Development Server:
Open another terminal in the frontend folder and run:
npm startThe frontend will be available at http://localhost:3000 and the backend strictly connects at http://localhost:5001.
To create an admin user and access the dashboard:
- Navigate to the
backendfolder. - Run the admin creation script:
npm run create-admin
- Log in through the frontend with the generated admin credentials (default:
admin@coworkspace.com/admin123).
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
This project is licensed under the MIT License.