Hasty Briefsbeta

Recreationally overengineering my location history

4 days ago
  • #rust
  • #privacy
  • #location-history
  • The author discusses their project to create a personal location history visualization tool, moving away from Google Maps for privacy reasons.
  • The project includes a map showing visited places in a visually appealing way and a feature to share live location with others via a simple link.
  • Data collection is done through an iOS app that uses 'significant location changes' to minimize battery impact, with an option for high-resolution updates for live sharing.
  • The backend is built in Rust, utilizing a custom project template for efficiency and maintainability, with PostgreSQL and PostGIS for data storage and geodata handling.
  • The author emphasizes the importance of 'production-grade' projects, even for personal use, to ensure stability, performance, and ease of maintenance.
  • The iOS app, despite the author's limited experience with Swift and SwiftUI, successfully collects and sends location data to the backend with minimal battery usage.
  • The visualization uses a hexagonal grid over a base map, generated efficiently with PostGIS, showing visited areas at various zoom levels.
  • Live location sharing is implemented via WebSockets, with tokens that expire automatically to prevent unintended prolonged sharing.
  • The author reflects on the project's success, noting its efficient resource use and the pleasure of using it to explore their travel history.
  • The post concludes with a note on the project's code size and the author's satisfaction with the outcome, despite considering additional topics like LLMs in coding.