{"id":14968890,"url":"https://github.com/ricardogesteves/booking-manager","last_synced_at":"2025-10-26T05:30:54.860Z","repository":{"id":207848081,"uuid":"720248848","full_name":"RicardoGEsteves/booking-manager","owner":"RicardoGEsteves","description":"Booking manager It's an application to manage bookings internally, with a nice dashboard and lots of functionality. React application optimized with composition, context, compound components pattern.","archived":false,"fork":false,"pushed_at":"2024-05-13T07:05:28.000Z","size":3422,"stargazers_count":5,"open_issues_count":1,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-05-16T01:13:08.966Z","etag":null,"topics":["date-fns","javascript","postgresql","react","react-error-boundary","react-hook-form","react-hot-toast","react-icons","react-router","recharts","styled-components","supabase","supabase-js","tanstack-react-query","vite"],"latest_commit_sha":null,"homepage":"https://booking-manager-alpha.vercel.app","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/RicardoGEsteves.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-11-17T23:17:08.000Z","updated_at":"2024-05-18T20:23:39.194Z","dependencies_parsed_at":"2023-12-25T02:22:38.078Z","dependency_job_id":"8498cf7e-4fff-4481-85fc-7637a80c1c4b","html_url":"https://github.com/RicardoGEsteves/booking-manager","commit_stats":null,"previous_names":["ricardogesteves/booking-manager"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RicardoGEsteves%2Fbooking-manager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RicardoGEsteves%2Fbooking-manager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RicardoGEsteves%2Fbooking-manager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/RicardoGEsteves%2Fbooking-manager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/RicardoGEsteves","download_url":"https://codeload.github.com/RicardoGEsteves/booking-manager/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219863860,"owners_count":16555943,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["date-fns","javascript","postgresql","react","react-error-boundary","react-hook-form","react-hot-toast","react-icons","react-router","recharts","styled-components","supabase","supabase-js","tanstack-react-query","vite"],"created_at":"2024-09-24T13:40:46.068Z","updated_at":"2025-10-26T05:30:54.350Z","avatar_url":"https://github.com/RicardoGEsteves.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bookings Manager\n\n\u003e **(UPDATE)** - with the latest dependencies updates, you will have to do some small config changes.\n\nBookings Manager is a comprehensive React application designed for internal booking management, featuring an intuitive dashboard and a plethora of functionalities. It's optimized using composition, context, and the compound components pattern to deliver an efficient and scalable solution.\n\n## Overview\n\nThe Booking Manager application streamlines the process of managing bookings internally, providing a user-friendly dashboard loaded with robust features. With an emphasis on React's best practices, it leverages composition, context, and compound components to ensure modularity, flexibility, and maintainability.\n\n## Key Features\n\n- **Dashboard:** Access a visually appealing and functional dashboard for managing bookings.\n- **Effortless Booking Creation and Management:** Seamlessly create, edit, and cancel bookings with granular control over booking details.\n\n- **Detailed Booking Dashboard:** View a centralized overview of all bookings, including status, attendees, and timestamps.\n\n- **Search and Filter Functionality:** Quickly locate specific bookings using powerful search and filter options.\n\n- **Customizable User Roles and Access Control:** Implement granular access control based on user roles for enhanced data security.\n\n- **Seamless Integration with External APIs:** Seamlessly integrate with external APIs to expand booking capabilities.\n- **Composition \u0026 Context:** Utilize React's composition and context for scalable and maintainable code.\n- **Compound Components Pattern:** Implement modular components for enhanced reusability and flexibility.\n\n## Technical Stack\n\n- **React:** The core JavaScript library for building user interfaces, providing a declarative and component-based approach.\n- **JavaScript:** The fundamental language of the application, enabling dynamic and interactive web experiences.\n- **React Router:** Handles routing between different application components, ensuring a smooth user experience.\n- **Styled Components:** A CSS-in-JS library for creating reusable and maintainable styling across components.\n- **PostgreSQL:** The relational database management system powering the application's data storage.\n- **Date-fns:** A powerful JavaScript library for manipulating and formatting dates.\n- **React Icons:** A collection of open-source React icons for enriching the application's visual design.\n- **Vite:** A modern JavaScript build tool that accelerates the development process.\n- **React Hook Form:** A library for handling form data and validation within React components.\n- **Supabase:** A cloud-based Firebase alternative offering a comprehensive suite of backend services, including authentication, databases, and storage.\n- **Tanstack React Query:** A powerful data fetching and caching library for React applications.\n- **React Error Boundary:** A tool for preventing errors from reaching the user and providing a graceful error handling mechanism.\n- **React Hot Toast:** A lightweight notification library for displaying user-friendly toast messages.\n- **Recharts:** A React charting library for creating interactive and data-driven charts.\n- **Context API:** A React feature for sharing data between components without the need for prop drilling.\n- **Composition:** A design pattern for creating reusable and composable React components.\n- **Compound Components:** A pattern for combining multiple components into a higher-order component for enhanced modularity and maintainability.\n\n## Installation\n\n1. Clone the repository.\n2. Navigate to the project directory.\n3. Install dependencies using `npm install`.\n4. Set up the PostgreSQL database and configure Supabase for data management.\n5. Start the application with `npm start`.\n\n## Usage\n\n1. Access the application via the provided URL.\n2. Explore the dashboard and its various functionalities.\n3. Manage bookings, utilize compound components, and leverage the power of context and composition for efficient workflow.\n\n### Important info:\n\nCreate a .env file in the root of the project with `VITE_SUPABASE_KEY=YOURKEY`\nsetup `supabase` database postgres, storage and Authentication, don't forget to add policies on your tables.\n\n## Contributions\n\nContributions are welcome! Please follow the contribution guidelines outlined in the CONTRIBUTING.md file.\n\n## Conclusion\n\nBookings Manager stands as a testament to the power of React, composition, context, and compound components in crafting a performant, maintainable, and feature-rich application. It serves as a valuable tool for businesses seeking to streamline their booking processes and enhance overall operational efficiency.\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fricardogesteves%2Fbooking-manager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fricardogesteves%2Fbooking-manager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fricardogesteves%2Fbooking-manager/lists"}