Welcome to TasteLibmanan, a comprehensive web-based platform designed to map, explore, and analyze local food establishments in Libmanan.
This system serves as a bridge between local food enthusiasts, food business owners, and the Business Permits and Licensing Office (BPLO) of Libmanan, streamlining both the discovery of local flavors and the administrative processing of business permits.
Developed as a Bachelor of Science in Information Technology capstone project, TasteLibmanan goes beyond a simple directory. It is an interactive mapping system equipped with detailed analytics, an online permit application portal, and a secure communication system between vendors and municipal admins.
- 👨🍳 For Food Enthusiasts: Interactive map, reviews & ratings, and favorites bookmarking.
- 🏪 For Food Business Owners: Online permit applications (New/Renewal), menu management, gallery uploads, and real-time application status tracking.
- 🛡️ For Administrators (BPLO): Analytics dashboard, vendor management (approve/reject permits), and direct messaging with business owners.
The system operates on a seamless flow connecting three main user types: BPLO Admins, Business Owners, and Public Users.
Business Owner signs up ➔ Submits Digital BPLO Application (Uploads clearances/docs) ➔ Application marked as "Pending". BPLO Admin logs in ➔ Reviews application & downloads requirements ➔ Clicks "Approve" (Sends automated email to Owner). System automatically plots the approved business on the live interactive map.
Approved Business Owner accesses portal ➔ Uploads Menu images & prices ➔ Uploads promotional Gallery photos ➔ Updates business status (Open/Closed).
Public User visits website ➔ Uses the Interactive Map or Category filters to find food ➔ Clicks a business to view menus and location. Logged-in User visits a profile ➔ Leaves a Review & Star Rating ➔ Clicks the ❤️ icon to save to their personal "Favorites" list.
System records user visits, category preferences, and application statuses. BPLO Admin views the real-time Dashboard to monitor local economic trends and system engagement.
If you want to download, modify, or run this code on your local machine, you will need the following tools and accounts:
- Local Server Environment: * XAMPP, WAMP, or MAMP installed on your machine.
- PHP & MySQL: * PHP version 7.4 or higher.
- MySQL (comes pre-packaged with XAMPP).
- Web Browser: * Google Chrome, Microsoft Edge, or Mozilla Firefox.
- Google Account (For Email Features):
- The system uses PHPMailer to send OTPs, email verifications, and permit approval notifications.
- You will need a standard Gmail account and you MUST generate a Google App Password (Found in your Google Account Security settings under 2-Step Verification) to use as your SMTP password.
Follow these step-by-step instructions to get the system running locally:
- Clone the repository or download the ZIP file.
- Move the
TasteLibmananfolder into your local server's web directory (e.g.,C:\xampp\htdocs\).
- Open your XAMPP Control Panel and start Apache and MySQL.
- Open your browser and go to
http://localhost/phpmyadmin. - Click New to create a database and name it exactly:
tastelibmanan. - Click on the
Importtab, selectdatabase/TASTELIBMANAN.sql(or the legacy root copyTASTELIBMANAN.sql), and click Go.
The project now keeps setup and utility scripts in dedicated folders for easier navigation:
users/- user-facing pages and APIsfbusinessowner/- business owner pages and APIsadmin_folder/- admin pages and APIstools/- diagnostics, setup, cron, and utility scriptsdatabase/- SQL schema and migration filesuploads/- user and business uploaded assets
Compatibility note:
- Legacy root utility paths such as
diagnostics.php,setup_database.php, andtest_connection.phpstill work through lightweight wrappers.
To keep the system secure, credentials are not hardcoded. You must create an environment file.
- In the root folder of the project, find the file named
.env.example. - Duplicate this file and rename the copy to
.env(just.env, nothing before the dot). - Open the
.envfile in a text editor (like VS Code or Notepad) and update the credentials:
# Database Credentials
DB_HOST=localhost
DB_NAME=tastelibmanan
DB_USER=root
DB_PASS= # Leave blank if your local XAMPP root user has no password
# App Security
APP_URL=http://localhost/TasteLibmanan
APP_SECRET=generate_a_random_secret_string_here
# Email Setup (PHPMailer)
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USERNAME=your_actual_email@gmail.com
SMTP_PASSWORD=your_google_app_password # Use the 16-character App Password, NOT your real password!
SMTP_ENCRYPTION=tls
SMTP_FROM_EMAIL=your_actual_email@gmail.com
SMTP_FROM_NAME=Tastelibmanan Admin