Wander Local is a modern local travel platform connecting travelers with native hosts for unique, authentic experiences. Built with pure PHP 8+, PDO, Bootstrap 5, and Alpine.js.
- Backend: PHP 8+ (Vanilla structure without frameworks)
- Database: MySQL (PDO used for secure interactions)
- Frontend: HTML5, CSS3, Bootstrap 5, Alpine.js (for interactivity)
- Rich Text: Quill.js integration for Blog CMS
- Complete Authentication with role-based redirection (Traveler/Host)
- Multi-step Onboarding flows via Alpine.js
- Host Dashboards and Experience management
- Public Blog CMS with Markdown/Rich Text support & Like system
- Robust Security: CSRF tokens, Prepared SQL Statements, Input Sanitization, XSS defense
- Custom Error Handling and Caching system
- Mobile-first approach with bottom navigation bars
- Clone the repository into your
htdocsorwwwdirectory. - In PHPMyAdmin, create a database named
wander_local. - Import the
database/schema.sqlfile into your empty database. - Rename
config/config.example.phptoconfig/config.php(if applicable) or verify settings inconfig/config.phpinside the actual repo. - Set
APP_ENVto'development'inconfig/config.php. - Go to
http://localhost/Wander_Localin your browser.
- Upload all files into
public_htmlvia FTP or File Manager. - Create a MySQL database and user in your hosting control panel. Import
schema.sql. - Update
config/db.phpwith your live database credentials. - Update
config/config.phpto setAPP_ENV = 'production'. - Ensure file directories
/uploads/and/cache/and/logs/have permissions set tochmod 755(folders) andchmod 644(files). - Verify
.htaccessis present in the root.
- Uses
includes/security.phpfor all CSRF and upload logic. - Cache engine uses simple JSON file writing in
/cache/to minimize heavy SQL queries in production.
(Screenshots to be added here)