Analyzed 14 days ago · 2 anonymous rescans remaining · register free to re-analyze any time.
Public analysis · read only
Register free to re-analyze

Swetha-Arul/trip-planner

0 0 1 issues
JavaScript
MIT

Project Overview

anthropic / claude-opus-4-7

Trip Planner

A web-based trip planning app with Google Maps routing, weather info, and PHP/MariaDB user authentication.

AI Verdict
Clean— AI Trust Assessment

True Intent (AI Assessment)

A demo/portfolio web app that layers Google Maps and OpenWeather features on top of a small PHP/MariaDB auth backend.

README Accuracy

Accurate

Notes

No malicious code detected. Real caveats are typical beginner-project issues: auth doesn't actually gate the map page, browser-side API keys are exposed by design, and the default DB password in docker-compose.yml must be changed by the user.

What Is This?

Trip Planner is a student/portfolio-style web application that combines Google Maps APIs (Maps, Places, Directions, Geometry) with the OpenWeather API to provide interactive route planning, nearby point-of-interest discovery, live GPS tracking, and voice-guided navigation. The frontend is plain HTML/CSS/JavaScript, while a small PHP backend handles user signup and login against a MariaDB database.

The problem it addresses is a common one: giving users a single interface for planning road trips that goes beyond raw directions by layering in weather awareness, filterable nearby places (restaurants, hotels, fuel stations, attractions), turn-by-turn narration, and a dark mode. Rather than integrating with a paid trip-planning SaaS, it stitches together free/consumer APIs and wraps them in a custom UI.

The intended users appear to be end users planning trips through a browser, but in practice this looks like an educational/demo project rather than a production service. It is deployed via Docker Compose (Apache + PHP container plus a MariaDB container) and the README notes AWS EC2 deployment without HTTPS. It is best understood as a coursework or portfolio project.

Architecturally, the browser loads static HTML pages (Mainpage, signup/login, map). Client JS calls Google Maps and OpenWeather directly using API keys defined in a local config.js. Auth forms POST to Backend/login.php and Backend/signup.php, which use vlucas/phpdotenv to read DB credentials, connect via mysqli with prepared statements, and hash passwords with password_hash/password_verify. On successful auth the user is redirected to map/map.html.

Notable observations: passwords are hashed and queries are parameterized, which is good. However, sessions are started but not actually used for access control — map.html is a static file reachable by anyone, so the 'auth' is cosmetic. API keys live in a client-side config.js and are exposed to the browser (the README correctly recommends restricting them at the provider). The docker-compose.yml ships with a default MYSQL_ROOT_PASSWORD of 'rootpassword' that users must remember to change.

Your Report, Tab by Tab
At a Glance
0Stars
0Forks
1Open Issues
August 2026Last Active
Web AppJavaScriptMIT
Technology Stack
LanguagesJavaScript, CSS, HTML, PHP
RuntimePHP 8.2 (Apache) via Docker
FrameworkNone (vanilla frontend, plain PHP backend)
DatabaseMariaDB 10.11
Package ManagerComposer (PHP)
Key Dependenciesvlucas/phpdotenv, Google Maps JavaScript API, Google Places API, Google Directions API, OpenWeather API, Apache, mysqli
Build ToolDocker / Docker Compose
Test FrameworkNone detected