A mobile-first web application for real-time GPS tracking, trip logging, and route management. Track your location, record trips with speed data, replay routes, and manage your travel history - all with complete privacy protection.
- Real-time GPS Tracking - Live location monitoring with high accuracy
- Interactive Maps - Leaflet-based mapping with OpenStreetMap tiles
- Mobile-First Design - Responsive UI optimized for mobile devices
- Privacy Protection - All location data processed locally
- Modern UI - Built with shadcn/ui components and Tailwind CSS
- Speed Tracking - Current, average, and maximum speed monitoring
- Trip Management - Create, name, and organize trips
- Route Recording - Automatic waypoint logging and route tracking
- Data Persistence - Local storage with IndexedDB/localStorage
- Trip History - View and manage past trips
- Route Replay - Playback trips with speed controls
- Data Export - Export trip data as JSON
- Trip Analytics - Distance, duration, and speed statistics
gps-tracking-app/
βββ .claude/ # Claude Code configuration
β βββ GPS Trip Tracker - PRD.md
βββ index.html # Main application (React component)
βββ package.json # Dependencies
βββ .mcp.json # MCP server configuration
βββ docs/ # Documentation (this folder)
β βββ ARCHITECTURE.md
β βββ DEVELOPMENT.md
β βββ FEATURES.md
β βββ API.md
βββ augments-mcp-server/ # MCP server for framework docs
- Frontend: React 18+ with TypeScript
- UI Components: shadcn/ui with Tailwind CSS
- Maps: Leaflet with OpenStreetMap
- Storage: IndexedDB/localStorage (planned)
- Build: Vite (recommended)
- Deployment: Static hosting (Vercel, Netlify)
- Mobile: iOS Safari, Android Chrome
- Desktop: Chrome, Firefox, Safari, Edge
- Requirements: GPS/Location services enabled
- Node.js 16+ and npm
- Modern browser with geolocation support
- Internet connection for map tiles
-
Clone the repository
git clone https://github.com/c0de128/GPS-API-CLAUDE.git cd GPS-API-CLAUDE -
Install dependencies
npm install
-
Configure environment variables
# Copy the environment template cp .env.example .env # Edit .env and add your API keys # Get OpenRouteService API key from: https://openrouteservice.org/dev/#/signup
-
Start development server
npm run dev
-
Open in browser
http://localhost:3000
Create a .env file in the root directory with the following variables:
# OpenRouteService API Configuration
VITE_OPENROUTESERVICE_TOKEN=your_openrouteservice_api_key_here
# Admin API Key for managing the GPS API server
VITE_ADMIN_API_KEY=your_secure_admin_key_here
# API Server Configuration
VITE_API_BASE_URL=http://localhost:3003-
OpenRouteService API Key (Required for route planning and geocoding)
- Visit: https://openrouteservice.org/dev/#/signup
- Sign up for a free developer account
- Copy your API key to
VITE_OPENROUTESERVICE_TOKEN
-
Admin API Key (Required for API server management)
- Generate a secure random string
- Use a password generator or run:
openssl rand -base64 32 - Add to
VITE_ADMIN_API_KEY
- β
Never commit
.envfiles - Already excluded in.gitignore - β Use HTTPS in production - Required for Geolocation API
- β Environment variables secured - No hardcoded secrets in source code
- β API keys protected - Environment-based configuration
- π Production deployment - Ensure environment variables are set securely
- Grant Location Permissions - Allow browser access to your location
- Start Tracking - Click "Start Tracking" to begin GPS monitoring
- View Live Map - Watch your location update in real-time
- Stop Tracking - Click "Stop Tracking" when finished
| Feature | Current Status | Target (PRD) | Priority |
|---|---|---|---|
| GPS Tracking | β Implemented | β Required | High |
| Interactive Maps | β Implemented | β Required | High |
| Speed Tracking | β Missing | β Required | High |
| Trip Management | β Missing | β Required | High |
| Data Persistence | β Missing | β Required | High |
| Route Replay | β Missing | β Required | Medium |
| Data Export | β Missing | β Required | Medium |
| Trip History | β Missing | β Required | Medium |
- Speed tracking (current/avg/max)
- Trip data models and state management
- Local storage implementation
- Basic trip creation and management
- Route recording with waypoints
- Trip history and list view
- Route replay functionality
- Distance and duration calculations
- Data export/import
- Trip search and filtering
- Performance optimizations
- Offline support improvements
- Augments MCP - Framework documentation and examples
- shadcn MCP - UI component management and installation
# Type checking
npm run type-check
# Linting
npm run lint
# Formatting
npm run format# Run tests
npm test
# Coverage report
npm run test:coverage| Browser | GPS Support | Maps Support | Status |
|---|---|---|---|
| Chrome Mobile | β | β | Full Support |
| Safari Mobile | β | β | Full Support |
| Firefox Mobile | β | β | Full Support |
| Chrome Desktop | β | β | Full Support |
| Safari Desktop | β | β | Full Support |
| Firefox Desktop | β | β | Full Support |
- No Server Storage - All data processed locally
- No Third-Party Tracking - Location data never leaves your device
- Secure HTTPS - Required for geolocation API access
- User Consent - Explicit permission requests for location access
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests for new features
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
For questions and support:
- Create an issue in the repository
- Check the documentation in
/docs - Review the PRD in
.claude/GPS Trip Tracker - PRD.md
Built with β€οΈ by Kevin McKay, DFW WEB GUY