CABN-COVE is a full-stack web application designed to streamline the management of bookings for luxurious wood cabins nestled in nature. This application is intended for employee use, offering a comprehensive suite of tools to manage bookings, cabins, and employee accounts. Built with React for the frontend and Supabase for the backend, the project delivers a modern, efficient, and intuitive user experience.
- Features
- Pages
- Technologies Used
- Project Link
- Getting Started
- Contributing
- License
- Contact
- Demo Video
- Login/Logout: Secure access to the application.
- Signup: Employee accounts can only be created by existing employees.
- Update Employee Data: Employees can update their profile information, including full name, profile image, and password.
- Booking Table: Displays booking details with fields:
- Cabin Name
- Guest Name and Email
- Dates (Start Date → End Date)
- Status (Unconfirmed, Checked In, Checked Out)
- Booking Actions:
- View detailed booking information.
- Check in guests for unconfirmed bookings.
- Check out guests and remove bookings.
- Filtering:
- By Status: Checked Out, Checked In, Unconfirmed.
- Sorting:
- By Date (Recent First, Earlier First)
- By Amount (High First, Low First)
- Pagination: Easily navigate through a large number of bookings.
- Cabins Table: Displays cabin details with fields:
- Name
- Image
- Capacity
- Price
- Discount
- Cabin Actions:
- Edit, Duplicate, or Delete cabin entries.
- Add new cabins.
- Filtering:
- By Discount (No Discount, With Discount).
- Sorting:
- By Name (A-Z, Z-A)
- By Price (Low First, High First)
- By Capacity (Low First, High First)
- Update application-wide settings, including:
- Minimum and maximum nights per booking.
- Minimum guests per booking.
- Breakfast price.
- Employee Cards: Displays employee details, including:
- Profile Image
- Full Name
- Verification Status (Email Verified/Not Verified).
- Add new employees using a dedicated modal.
- Filters: View data for the last 7, 30, or 90 days.
- Stats:
- Total Bookings
- Total Sales
- Check-Ins Count
- Occupancy Rate
- Today’s Activities: Highlights current activities based on filters.
- Charts:
- Stay Duration Summary (Pie Chart).
- Sales Overview (Double Line Chart for total sales and extras sales).
- Toggle between light and dark modes for a personalized user experience.
- Home (Dashboard): Displays key metrics, charts, and recent activities.
- Bookings: Manage and view all bookings.
- Booking: Detailed view and actions for individual bookings.
- Cabins: Manage and view cabin details.
- Users (Employees): Manage employee accounts.
- Login: Employee authentication.
- Accounts: Update employee account settings.
- Checkin: Streamline guest check-in process.
- Settings: Manage application settings.
- PageNotFound: Custom 404 error page.
- React: Core library for building the UI.
- React Router: For managing navigation and routes.
- React Hook Form: For form management.
- tanstack/react-query: For data fetching, caching, and state management.
- styled-components: For styling components.
- react-error-boundary: Error handling for React components.
- react-hot-toast: For displaying notifications.
- React Icons: For iconography.
- Recharts: For data visualization (charts).
- date-fns: For date manipulation.
- uuid: For generating unique identifiers.
- Supabase: For authentication and database management.
- Vite: Fast development environment.
- Context API: For managing state (e.g., dark mode).
- Vercel: Hosting for the frontend application.
Access the live application here: CABN-COVE
Ensure you have the following installed:
- Node.js (v16 or higher)
- npm or yarn
- Clone the repository:
git clone https://github.com/your-repo/cabn-cove.git
- Navigate to the project directory:
cd cabn-cove
- Install dependencies:
npm install
- Start the development server:
npm run dev
- Open your browser and navigate to:
http://localhost:5173
The application is deployed on Vercel. Push changes to the main branch to trigger a new deployment.
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new branch:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add your message here"
- Push to your branch:
git push origin feature-name
- Open a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
For inquiries, please contact [harkouss.omar@gmail.com].
###Demo Video