Browse Source

Add README documentation for HikeMap project

Created comprehensive README with features, setup instructions, and technical details.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
master
HikeMap User 1 month ago
parent
commit
cd186b7909
  1. 68
      README.md

68
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]
Loading…
Cancel
Save