ReadyTable is a clone of OpenTable, a leading online restaurant reservation platform that allows users to discover, explore, and instantly book tables at a vast array of restaurants across the globe. With its intuitive user interface, diners can effortlessly filter restaurants based on location, cuisine, restaurant name, and available reservation times, making the dining-out experience more accessible and enjoyable.
- User Authentication: Users can sign up, log in, and maintain sessions to secure their reservations and personal settings.
- Restaurant Browsing: Users can scroll through a list of restaurants, view detailed information, and select a restaurant based on their preferences.
- Dynamic Search: Our dynamic search functionality allows users to find restaurants based on a keyword, be it the name of the restaurant, location, or type of cuisine.
- Restaurant Carousel: A visually appealing carousel component that displays different cuisines, enabling users to quickly view and select from multiple options.
- Reservation System: Users can pick their desired date, time, and party size to make a reservation at their chosen restaurant.
Frontend: JavaScript, React, Redux, CSS, HTML
Backend: Ruby on Rails, Node.js
Database: PostgreSQL
Hosting: Render
Feature 1: Restaurant pages
Each restaurant page provides users with comprehensive details about the establishment. This includes a description, address, operating hours, cuisine type, and more. Users can get a feel for what the dining experience would be like even before making a reservation. Additionally, directly integrated into the restaurant page is the reservation system. Users can quickly see available time slots and table options, allowing them to seamlessly book a reservation without navigating away from the page.
Feature 2: Reservations CRUD
This feature was essential for allowing users to modify the details of existing reservations. One notable challenge was persisting the correct information through multiple components involved in modifying a reservation.
- Implement a user review system where users can rate and review restaurants from past reservations.
- Add a "Favorites" feature, allowing users to save and quickly access their preferred dining spots.