Project ideas from Hacker News discussions.

Find the flattest route between any two points in SF

📝 Discussion Summary (Click to expand)

Three prevalent themes in the discussion

  1. Data accuracy and elevation sources
    Users repeatedly pointed out routing errors that stemmed from the underlying elevation model.
  2. “It's not accurate. I mapped it from my house on Cabrillo St … says I need to climb 25th avenue then walk Geary instead of correctly telling me to use 23rd avenue that is completely flat.” – danserfaty
  3. “I think this comes down to the DEM they are using … USGS 3DEP DTM at 25 cm would have helped.” – jeffbee
  4. “Ah, I think this is related to SF's 'Slow Streets' program and a genuine bug in the parser.” – almstimplmntd (regarding the mis‑interpreted “destination‑only” tag)
  5. Further clarification distinguished DSM (includes buildings/trees, causing spurious hills) from DTM (bare‑earth, essential for realistic routing) – andalinmicphew.

  6. Requested features and trade‑off controls
    Commenters praised the existing distance‑vs‑climbing slider but called for more nuanced options, especially grade‑based optimizations and bike‑lane awareness.

  7. “The slider runs along the whole trade‑off between distance and climbing … Climbing is cumulative gain.” – Terr_
  8. “You want OpenTripPlanner. Their triangle lets the user trade distance, climbing, and safe facilities.” – jeffbee
  9. “It would be neat if there were an option which added distance and elevation gain, but minimized the grade.” – jez
  10. “Would love an option for the steepest route! I run a lot in SF and try to maximize vertical gain on my routes.” – modo_
  11. “The slider trades distance against total climbing and nothing else. steepness is currently reported but not optimized.” – almstimplmntd
  12. “Grade indications … I feel like you actually want to graph the change in elevation rather than the elevation itself.” – laurencerowe.

  13. Expansion to other regions and self‑hosting
    Several participants asked for the tool to cover cities beyond San Francisco and discussed the feasibility of running their own instance.

  14. “Can you please consider expanding it to include Seattle? Or better yet Puget Sound area? 1 m DTM elevation data is available here.” – verst
  15. “We’d like too! It’s an open source project … our hope has always been that folks in different regions would spin up their own copy.” – andalinmicphew
  16. “What are the system requirements for hosting it?” – verst
  17. “We run it on a single coolify box … 6 core, 32 GB ddr4 … routing query is compute intensive but only momentarily.” – andalinmicphew.

🚀 Project Ideas

Generating project ideas…

FlatRoute Pro

Summary

  • Interactive map that lets cyclists tune a distance‑vs‑climbing trade‑off with a customizable cost curve, toggle street names, view bike‑lane layers, and enforce a maximum grade limit.
  • Core value: gives riders precise control over route flatness while respecting infrastructure preferences and safety.

Details

Key Value
Target Audience Urban cyclists, commuters, delivery riders in hilly cities
Core Feature Configurable routing algorithm with user‑defined cost curve, street‑name toggle, bike‑lane preference/avoidance, max‑grade constraint, GPX export
Tech Stack Frontend: React + Mapbox GL JS; Backend: Node.js/Python with Valhalla or OSRM; Elevation: USGS 3DEP COGs on AWS S3; Bike‑lane data: OSM
Difficulty Medium
Monetization Revenue-ready: subscription $5/mo (freemium base, premium layers)

Notes

  • Users asked for “toggle on street names” (tedd4u) and “user‑defined cost‑curve” (Terr_) plus bike‑lane awareness (laurencerowe, almstimplmntd).
  • Provides a single place to experiment with grade thresholds, echoing comments about “maximum grade setting would be very helpful” (Serishmus) and “grade indications like hillmapper.com” (laurencerowe).

HillMapper Live

Summary

  • Browser extension that overlays a slope profile on any route from Google Maps, Apple Maps, or OSM, colors segments by steepness, and offers one‑click re‑routing to avoid grades above a user‑set threshold.
  • Core value: instantly visualizes where a route is too steep and suggests flatter alternatives without leaving the map you’re already using.

Details

Key Value
Target Audience Cyclists, hikers, runners who want grade awareness on any platform
Core Feature Extract route polyline, fetch elevation from DEM, generate slope graph, color‑code by grade, “avoid >X%” re‑route via OSRM
Tech Stack TypeScript + WebAssembly for elevation sampling, Leaflet/Mapbox GL for overlay, service worker, uses OpenTopography DEM API
Difficulty Low‑Medium
Monetization Hobby (open source)

Notes

  • Commenters missed “grade indications like hillmapper.com” (laurencerowe) and wanted to “keep grade below threshold” (cowthulhu, Serishmus).
  • The extension would work on top of existing map services, addressing the desire for “elevation diagrams … highlighting extreme grades” (laurencerowe) and enabling discussion around grade‑based routing.

Regional FlatRoute Hub (Self‑hostable Service)

Summary

  • Docker‑ized, one‑click deployable service that lets any community run its own FlattenSF‑style flat‑route mapper for a city or region using OSM and SRTM/3DEP elevation data, with adjustable cost curves, bike‑lane layers, and max‑grade limits.
  • Core value: lowers the barrier to host a local flat‑routing service, letting cities and advocacy groups tailor the tool to their own data and preferences.

Details

Key Value
Target Audience City open‑data teams, cycling advocacy groups, hobbyists wanting to run a local flat‑route map
Core Feature Single docker‑compose stack that downloads OSM extract, builds contraction hierarchy, serves elevation‑aware routing API, includes admin UI for street‑name toggle, max grade, custom DEM upload
Tech Stack Backend: Rust (valhalla) or Go; Frontend: React + Mapbox GL; Data processing: GDAL/OGR for OSM, COG elevation; Deployment: Docker/docker‑compose (optional K8s)
Difficulty Medium‑High
Monetization Hobby (open source) – optional paid support/hosting plans

Notes

  • Multiple commenters wanted the tool expanded to Seattle/Puget Sound (verst) and asked about system requirements for hosting (andalinmicphew).
  • A self‑hostable, low‑resource package directly satisfies the request for “system requirements … not sure I have discretionary funds” and the hope that “folks in different regions would spin up their own copy” (andalinmicphew).

Read Later