How markkyrollos/restaurant-finder-webapplication works
Restaurant Finder is a React application backed by a Node/Express REST API for browsing and managing restaurants and reviews. The main workflow is: a visitor opens the restaurant list, selects a restaurant to see its details and reviews, and can add a review; restaurant creation and editing are separate listing-management actions. The README also documents rating display, responsive UI, and validation. Sampled files show the detail and review flow and API/database behavior; some list and update wiring is inferred only from documented capabilities. The sampled client base URL and server default port differ, and the server's database import does not match the supplied tree path.
Main entry points: RestaurantDetailPage.js Restaurant detail · RestaurantFinder.js Restaurant API client · App.js App router · Home.js Home page
Components 16
React application
- App router
src/App.js - Restaurant context
src/context/RestaurantsContext - Restaurant API client
src/apis/RestaurantFinder.js
Restaurant workflows
- Home page
src/routes/Home.js - Restaurant list
src/components/RestaurantList.js - Add restaurant
src/components/AddRestaurant.js - Update page
src/routes/UpdatePage.js - Update restaurant
src/components/UpdateRestaurant.js
Review experience
- Restaurant detail
src/routes/RestaurantDetailPage.js - Review cards
src/components/Reviews.js - Add review
src/components/AddReview.js - Star rating
src/components/StarRating
REST and persistence
- REST API server
server/server.js - Query pool
server/database/index.js - Restaurant and review tables
Other components
- Visitor
Connections 20
- Visitor → App router: opens
- App router → Home page: routes
- App router → Restaurant detail: routes
- App router → Update page: routes
- Home page → Restaurant list: renders
- Home page → Add restaurant: renders
- Restaurant list → Restaurant API client: requests listings
- Add restaurant → Restaurant API client: creates listing
- Update page → Update restaurant: renders
- Update restaurant → Restaurant API client: updates listing
- Restaurant detail → Restaurant API client: fetches details
- Restaurant detail → Restaurant context: stores selection
- Restaurant detail → Review cards: renders reviews
- Restaurant detail → Add review: renders form
- Restaurant detail → Star rating: shows rating
- Review cards → Star rating: shows rating
- Add review → Restaurant API client: submits review
- Restaurant API client → REST API server: HTTP requests
- REST API server → Query pool: queries
- Query pool → Restaurant and review tables: reads and writes