From cd186b79098d71b0ab2c7ff240e27e6c3cf501c8 Mon Sep 17 00:00:00 2001 From: HikeMap User Date: Mon, 29 Dec 2025 23:32:59 -0600 Subject: [PATCH] Add README documentation for HikeMap project MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Created comprehensive README with features, setup instructions, and technical details. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- README.md | 68 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..c3e1213 --- /dev/null +++ b/README.md @@ -0,0 +1,68 @@ +# HikeMap - KML Track Editor + +A single-page web application for viewing, editing, and navigating KML/GPS tracks on an interactive map. + +## Features + +### Track Editing +- Draw new tracks directly on the map +- Reshape existing tracks with rope physics simulation +- Smooth tracks with a brush tool +- Smart track snapping at endpoints with auto-splitting +- Multi-track selection and merge operations +- 20-step undo/redo history + +### Navigation Mode +- Graph-based pathfinding using Dijkstra's algorithm +- Automatic trail intersection detection (within 5 meters) +- Real-time route recalculation when deviating >50m from path +- Map rotation to face direction of travel +- Auto-center on GPS position (toggleable) +- Persistent destination storage + +### GPS Integration +- Real-time location tracking using device GPS +- Automatic position updates every 3 seconds +- Requires HTTPS or localhost for geolocation API + +## Quick Start + +### Local Development +```bash +# Serve via HTTP (required for GPS geolocation API) +python -m http.server 8000 +``` +Then open http://localhost:8000 + +### Docker Deployment +```bash +# Build and run with Docker Compose +docker-compose up +``` +Access at http://localhost:8080 + +## Technical Details + +### Architecture +- **Single-file application**: Everything contained in `index.html` +- **No build process required**: Pure HTML/CSS/JavaScript +- **CDN dependencies**: Leaflet.js 1.9.4, leaflet-rotate 0.2.8 + +### File Structure +The entire application is in `index.html`: +- Lines 1-325: CSS styles +- Lines 326-420: HTML structure +- Lines 421-end: JavaScript application code + +### Data Format +- Supports standard KML files with Placemark elements +- Automatically loads `default.kml` on startup if present +- Exports edited tracks back to KML format + +## Browser Requirements +- Modern browser with ES6 support +- HTTPS connection or localhost for GPS features +- Location services permission for navigation mode + +## License +[Add your license information here] \ No newline at end of file