How trannam1304/finder works
Food Finder is a PHP/MySQL location-based place finder. Its principal workflow is that a visitor searches nearby places using location and filters, then explores results and place details; the README also documents random suggestions, saved favorites, reviews, and itinerary generation. Admins manage places, categories, reviews, and suggestions. The tree lacks frontend assets and some endpoint excerpts, so those capability links are documented or left unverified rather than inferred from filenames alone.
Main entry points: bootstrap.php Application Bootstrap · itinerary.php Itinerary Generator · restaurant_query.php Nearby Place Query · jwt_auth.php Token Authentication
Components 25
Place Discovery
- Place Search API
public/api/restaurants.php - Nearby Place Query
app/services/restaurant_query.php - Geospatial Helpers
app/services/geo.php - Place Details API
public/api/restaurant.php - Categories API
public/api/categories.php - Geocoding API
public/api/geocode.php - Random Place API
public/api/random.php
Planning and Engagement
- Place Suggestions API
public/api/suggest.php - Itinerary API
public/api/itinerary.php - Reroll API
public/api/itinerary_reroll.php - Itinerary Generator
app/services/itinerary.php - Saved Itineraries API
public/api/user_itineraries.php - Favorites API
public/api/favorites.php - Reviews API
public/api/reviews.php
Identity and Security
- Member Auth API
public/api/auth/login.php - Token Authentication
app/core/jwt_auth.php - JWT and Cookies
app/core/jwt.php
Administration
- Admin Management
public/admin/dashboard.php - Admin Bootstrap
public/admin/_bootstrap.php - Admin Login
public/admin/login.php
Backend Foundation
- Application Bootstrap
app/bootstrap.php - Request Validation
app/helpers/validate.php - PDO Connection
app/core/db.php
Other components
- Visitor
- MySQL Database
Connections 31
- Visitor → Place Search API: searches places
README.md - Place Search API → Nearby Place Query: queries nearby
- Nearby Place Query → Geospatial Helpers: uses geo helpers
app/services/restaurant_query.php - Visitor → Place Details API: views details
README.md - Visitor → Categories API: browses categories
README.md - Visitor → Geocoding API: requests geocoding
- Visitor → Random Place API: requests random pick
README.md - Visitor → Place Suggestions API: suggests a place
- Visitor → Itinerary API: plans a route
- Visitor → Reroll API: rerolls a stop
- Reroll API → Itinerary Generator: generates options
public/api/itinerary_reroll.php - Itinerary Generator → Geospatial Helpers: uses geo helpers
app/services/itinerary.php - Itinerary Generator → Nearby Place Query: queries places
app/services/itinerary.php - Visitor → Saved Itineraries API: manages itineraries
- Visitor → Favorites API: saves favorites
README.md - Visitor → Reviews API: submits reviews
- Visitor → Member Auth API: creates account
- Member Auth API → Token Authentication: authenticates
public/api/auth/login.php - Token Authentication → JWT and Cookies: signs and verifies
app/core/jwt_auth.php - Admin Login → Admin Bootstrap: loads admin context
public/admin/_bootstrap.php - Admin Management → Admin Bootstrap: loads admin context
public/admin/dashboard.php - Admin Bootstrap → Application Bootstrap: loads application
public/admin/_bootstrap.php - Application Bootstrap → Request Validation: loads helpers
app/bootstrap.php - Application Bootstrap → PDO Connection: loads database layer
app/bootstrap.php - Application Bootstrap → Token Authentication: loads authentication
app/bootstrap.php - PDO Connection → MySQL Database: connects to
app/core/db.php - Reviews API → Application Bootstrap: loads application
public/api/reviews.php - Place Details API → Application Bootstrap: loads application
public/api/restaurant.php - Favorites API → Application Bootstrap: loads application
public/api/favorites.php - Place Suggestions API → Application Bootstrap: loads application
public/api/suggest.php - Saved Itineraries API → Application Bootstrap: loads application
public/api/user_itineraries.php