Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: I made an offline-ready hiking trail companion app (github.com/jamealg)
475 points by jameal on Nov 1, 2022 | hide | past | favorite | 141 comments
Hi HN! This is a trail companion web app (think AllTrails) I hacked together in a couple weeks time. I was inspired to create this project while training for an extended backpacking trip. My motivation was to create a UI tailored exactly to my liking, and to be able to track my progress along the trail without draining my battery. I also wanted to experiment with PWA technologies.

I successfully used it on my five day adventure along the Knobstone Trail in southern Indiana, and even though it's web-based it hardly consumed any battery life on my old first-gen Pixel XL.

It's set up currently to support a single trail, where the trail and trail markers are deployed with the rest of the app. So it's single-use in that way. For future trips, I can simply swap out the GPX files and deploy.

I am releasing it with an open source license in case anyone wants to use it as a boilerplate to create their own.




This is great. I've been working on an adventure motorcycling trip planning app which has similar requirements of being able to work offline as you ride your preplanned trip.

Yours is a good example of what can be done by keeping it simple and not getting wrapped around the axle with complicated frameworks.

It makes me regret all the time I've spent trying to figure out the absolute best tech stack to use rather than just working on finishing the damn thing.


I've extensively used Osmand off-line during my overlanding trips, from Cape Town to Europe across west Africa and from Czechia to Mongolia. Why reinvent the wheel?


Everything has been done at least once. If we don't try to improve on what's out there, no progress will ever made.

I think Osmand works fine for some things but really sucks for planning long, time-bound trips, which is my use case.


In my case, looking at a very similar set of requirements for a project yet to be started, a target audience that includes both Android and iOS and people who might be reluctant to install an app (but should have the option to "offlinify" the website they use, perfect match for PWA)


I know that pain. It helped that I had a two week time constraint! I really wanted to use Svelte, but I found it nearly impossible to use without a build script.


Please please please give me a way to hear more when it's ready!

OsmAnd is fantastic, but there's room for improvement.


I'd love to hear more about what improvements you'd like to see. Nothing is ready to be shared yet, but when it is I'll announce it here first for beta testers:

https://lists.sr.ht/~scooter/mototripper-dev

You can subscribe by sending an email to ~scooter/mototripper-dev+subscribe@lists.sr.ht


You should consider changing the name to something that isn't single trail-specific.


It's open source so when it's ready you can fork it and call it anything you want. Some of the features are meant to be specific to motorcyclists. And as far as getting the word out, it's easier to make it specific to a particular community since I know where they hang out online and how to get it in front of eyeballs.


How can I hear more when it’s ready?


Nothing is ready to be shared yet, but when it is I'll announce it here first for beta testers:

https://lists.sr.ht/~scooter/mototripper-dev

You can subscribe by sending an email to ~scooter/mototripper-dev+subscribe@lists.sr.ht. Feel free to send a hello to the list with what you'd like to see. I'm banging away on it every night when I get home from work.


would love to stay up to date on this


Nothing is ready to be shared yet, but when it is I'll announce it here first for beta testers:

https://lists.sr.ht/~scooter/mototripper-dev

You can subscribe by sending an email to ~scooter/mototripper-dev+subscribe@lists.sr.ht. Feel free to send a hello to the list with what you'd like to see. I'm banging away on it every night when I get home from work.


This is fantastic. I currently live in Rocky Mountain National Park where I climb, hike, and ski nearly every day - my partner also works for the Park Service. We have been using Gaia and love it but your UI looks fantastic and I'll get it installed.

It reminds me of a very simplified interface of CalTopo.

One question, are you open to PR's? If so, I'd love to see slope angle added into this in the same format for avalanche awareness along a trial.

Great work!


I highly suggest checking out Natural Atlas (https://naturalatlas.com/) by the same small team who made the CoTrex app (https://trails.colorado.gov/) for Colorado Parks and Wildflife.

A really fantastic team building some absolutely gorgeous topographic basemaps from publicly available data. Hopefully they'll find time to add a slope angle overlay at some point.


Thank you - I will!


Thanks a lot! I'd love to hear how it goes if you actually use it in the wild.

I'm actually using a plugin[1] that handles elevation and slope graphing. Adding slope to the graph is as simple as adding a line in the configuration.

I only intend this to be a boilerplate for others to start their own projects. I'm not sure how much active development I'll do on it, but I'm certainly open to PRs that make it better.

[1]: https://raruto.github.io/leaflet-elevation/


Have you had any problems using downloaded maps in Gaia when there is no service?


I work at Gaia, though not on the mobile dev side of things. We have an active ticket for this and are currently looking into the root cause -- you're not the only one who has experienced this issue, although it seems to be sporadic.


I am glad to have stumbled upon a GaiaGPS developer. I would describe myself as a GaiaGPS power user (I have a pro subscription) and I have a love / hate relationship with the app. My main issue is that bugs and feature requests don’t get addressed and is starting to have the feel of Abandonware. Track cropping still has no undo and recently was also buggy — the crop would not “stick”. (I ended up hand editing the GeoJSON, something that created its own problems.) This is an essential feature that should work correctly especially when you drive away without finishing the track — something that I think happens to a lot of users. Also, track way points sporadically don’t seem to “attach” or “anchor” to tracks — they just end up free-floating some of the time. My broader concern is the acquisition by Outside Magazine is not going smoothly, they are not a tech company and the managers there probably are more concerned with the bottom line than maintaining a technically viable product.


>My broader concern is the acquisition by Outside Magazine is not going smoothly

I'd be curious to know how this directly impacted Gaia development. It's a tool I rely on essentially every day in some pretty harsh environments so I second this concern.


I left a brief note on this in a reply to the parent comment, if you're interested.


Isn't Gaia's business model to charge for access to the maps we've already paid for with our taxes (such as USGS topographic quads)? So one shouldn't have stellar expectations over their acquisition.


> charge for access to the maps we've already paid for with our taxes

No one is gate-keeping these taxpayer-funded resources, which is sortof what you're implying here. It costs money to process, host, and deliver these taxpayer -funded maps to people, especially offline.

If you're a legacy user of Gaia, I'd encourage you to give the app another shot. Originally Gaia was the best way to view USGS quads on your phone. Since then, we've invested a ton of resources and engineering into building a vector topographic map based in OpenStreetMap, which I think is a huge value add for backcountry users.

We give that away for free.

But if all you're looking for is USGS topos, I'd use Avenza.


ESRI and the USGS provide WMS tilesets of USGS topographic quads. So a generic WMS viewer capability with the ability to save cached tiles offline in Gaia could provide that functionality without incurring additional bandwidth costs. Except of course, users might prefer these maps to the in-house ones that you charge a subscription for.

The subscription model has distorted the smartphone map app ecosystem, just like it has the rest of the software industry.

For the record, OSM maps lack the detail and reliability of the legacy USGS 7.5 minute topographic quads. For that matter, the most recent USGS topographic maps are themselves almost as bad as OSM! For best coverage I would recommend the 1990s series or earlier. ( https://www.usgs.gov/faqs/how-do-us-topo-maps-differ-histori... )

For Android, OSMAnd is good enough for navigation and Qfield can load any GIS vector or raster layer from a desktop QGIS project.


Esri does not provide free access to their tile sets for offline caching.


I encourage you to check out some more modern OSM maps, like ours :)


I hadn't tried Gaia before today. Gave it a whirl and looks like a great tool for my backpacking trips. I am a paper map and compass kinda guy but this seems like a convenient addition, especially for trip planning. Mapped out the next boy scout troop hike in just a few minutes, the way routes snap to hiking trails is really nice. Thanks!


This person has clearly not actually used Gaia in any significant capacity and is instead taking cheap shots with the hopes of getting upvotes from others that have not used Gaia. Gaia is far from perfect, but this characterization is so contrived that it can't be taken seriously.


Gaia GPS on iphone requires a subscription to save USGS topographic tiles for offline use. That's an artificial limit on functionality using a publicly-funded resource.


In addition to various GIS layers, they also have Nat Geo Trails Illustrated maps and IGN maps for France, both of which I have found immensely useful.


hey, I'm sorry that you've been experiencing that behavior, it sounds frustrating. I'm not the best person to help you with them, though -- I'm a geospatial data / cartography engineer. If you're willing to reach out to them, our support team can probably give you a hand, or at least document your issue to make it easier for us to fix.

w.r.t the acquisition, we've seen some fairly dramatic highs and lows. The 20% layoff earlier this year was definitely the lowest low, but the whole org was affected, not just Gaia. On the flip side, we've been working really hard on developing a roadmap that centers on stabilising and enhancing the bedrock features that our users have come to expect, and that are sometimes less than perfect. This is something that Outside PM's have been really pushing on. I'm enthusiastic about that focus, because it's been sorely needed.

The tl;dr is that the forces that have caused some of the user experience challenges of late were in play long before the Outside acqusition, and if anything Outside is providing the resources necessary for us to commit to fixing them.


Happy Gaia user here, thanks for your work! The core topo functionality works great for me online or offline in RMNP and the surrounding area.

One question if you're able to comment - what's up with the satellite snow coverage layers? I tried to use those to scout for a hike in October, but both most recent and cloudless were from 2021.


thanks, I am glad to hear it!

I assume you're talking about our "fresh sat" layers -- in some places the recency of the imagery in those layers is unfortunately dependent on some rather stochastic factors. These factors are usually (but not always) correlated to location on the earth.

We get the latest imagery taken from the satellites (Sentinel-2 and Landsat 8/9) nearly as soon as it's acquired, and then apply some quality filters to it which either accept the imagery for processing or reject it. It's entirely possible to get repeatedly unlucky in that regard, where for a given location no imagery that passes our quality filters has been taken for a long time.

This especially happens a lot near the poles, or in very cloudy places.

are you willing to share where you were looking that you experienced this issue?


Sure, it was in north central RMNP - the north slope of Fairchild Mountain and the saddle between Fairchild and Hagues Peak. I checked again and FreshSat has since been updated - 10/13 and 10/18 are the dates on the layer.

Thanks for sharing the filtering process, that makes more sense how a long gap can occur.


Not parent commenter, but use Gaia offline maps on a regular basis (at least once a month). I do not recall ever having a problem with them. My consistent experience: no cell coverage, pull up Gaia, map is displayed.


I’m a heavy Gaia user, always offline.

I make sure to go on airplane mode and hard-reload the app, and it generally works great. If I have week signal, or don’t reload it, or anything like that, it gets confused and constantly freezes.

The offline route creation is very iffy though.


I personally have not but I know a couple of individuals that have.


Very clear README on how to use and configure. Leaflet seems like a great resource. Also particularly appreciate this included advice for users:

> "You should always research your trip ahead of time, plan training hikes, become familiar with the terrain, carry a physical compass and map and know how to use them."

Here's an idea for an app: one that teaches users how to find their position with nothing but map and compass (though having a non-GPS, i.e. barometric, altimeter is also useful, particularly in poor visibility).


Thanks for the feedback. I tried to make it as clear as possible so I appreciate the validation.

Honestly, I have terrible natural bearings and I've never relied on a map and compass but I would love to practice with an app like what you're describing.

There's some ultramarathon race I remember reading about where contestants bushwack an insane distance through some stretch of woods over a few days using only compass and map. I don't think I'd even make it a mile!


Those are orienteering competitions, it takes a certain type to enjoy them. It's not too hard to learn the basics however.

First, try to orient the map to the surroundings based on landmarks which you get readings on using the compass. (A more expensive compass with a mirror for sight readings is kind of essential, also with an adjustment for your local magnetic vs. true north offset, which can be fairly large). Here is where having a satellite GPS to get your location on the map makes life a whole lot easier, but orienteering types sniff at such aids.

Once the map is oriented, plot your straight-line course to your desired location on the map (although you may have to go around obstacles, so then you have to plot a zig-zag route). Then, use the compass to follow that plot as best you are able, re-orienting the map every once in a while to landmarks to verify your location. Checking against an altimeter also helps ensure you are where you think you are.

It's amazing how fast one can get off-track in whiteout conditions due to snow or heavy clouds, though. And if there are no visible landmarks in flat country, then having a satellite GPS is pretty key! (as long as the batteries last).


I'm guessing you're thinking of the https://en.wikipedia.org/wiki/Barkley_Marathons

https://barkleymovie.com/

https://vimeo.com/97270099

I've completed a few ultra marathons but only on well marked impossible to get lost on trails. I'm not even brave enough for the http://www.uwharrie100.com/


Yes that's it! Absolutely insane. I'm sure it's thrilling but I would rather just hang out in a small area and enjoy the nature.


Nice app. Can you explain why you chose ArgGis as your tile provider [1]? A lot of the struggle of making a public map app is that map tiles are hard to host and not cheap to buy at scale.

[1] https://github.com/jamealg/KT-companion/blob/master/scripts/...


I chose them because I liked the way they looked most, especially zoomed in. I hadn't really considered how they would scale but that's certainly an important point for anyone creating something for wider adoption.


We need an open source version of AllTrails using openstreetmap. With comments, since they are useful to know if the trails are still usable (some are now 4 seasons, some are outdated).


Pretty cool.

For uses like that I use Mapy.cz app which uses OSM and contrary to the name works all over the world. It’s very good for trail hiking although I haven’t used it in US, it’s probably as good as OSM data.


Or there is Locus Map (for Android only), another great app from Czechia. I wonder what is going on in that country :)

One ability of it that I find awesome is that there is a huge variety of online map sources, for example, in my home country there is an independent mapping project for hiking trails, and the maps are usually more detailed and better quality than OSM. I can easily switch to those maps when needed, and of course download them for offline use - but not the full dataset, instead you can draw a polygon of map boundaries that you want to have offline.


This looks good. Does it work as a web app? There are apparently many more alternatives to AllTrails and HikingProject that I wasn't aware of.


I used it both as a mobile app and a web app and it works great in both versions.

Notable about Mapy.cz:

- Offline support is really nice, you download specific regions you're interested in.

- There is a really cool option to create a "Trip in the area". You pick a starting point and it does a loop of a set length and comes back to the same point. See https://napoveda.seznam.cz/en/maps/route-planner/circuit-rou...

- It's backed by, what seems to be, a Czech IT giant - Seznam.


For offline use I recommend the native app. I don't think the webapp works offline. Certainly you can't download regions.


Looks very nice!

Do you know https://faroutguides.com/ (formerly GutHook)? They have offline-friendly paid maps of a lot of the largest scenic trails in America.

I hiked the Appalachian Trail last year and FarOut was standard kit.


Yes, definitely the large majority of AT hikers I've met rely very heavily on the GutHook/FarOut app as their primary nav tool. It has pretty great offline features in my experience, and has a huge variety of trail maps for purchase, with all the critical waypoints and resources listed. I've used it for customizing hikes, but I think much less customizable than OP, it's a bit more of a plug-and-play experience.


As far as I can tell from being an Appalachian Trail hiker, FarOut is pretty much the industry leader. Some people do use Gaia though.


Not until now. Thanks for sharing. So many more apps available than I realized. Someone should compile a list!


> Track location over time and display it on the map. Turn that into a downloadable GPX

Right now I use "Easy GPS logger" for this although it lacks a map aspect. It hasn't been too bad on my battery, either. But it's a feature I'd like on a hiking app.


I've been using Geo Tracker for years for this, it's great.

https://play.google.com/store/apps/details?id=com.ilyabogdan...


Woah, nice! I recently got interest to get into hiking and downloaded current apps for it. One of the 'business model' for current top hiking app - AllTrails - is to get offline coverage. Awesome to see an implementation of such feature here.


I’ve used and tried a lot of hiking apps. And tbh the Organic Maps (fork of maps.me) is quite good for hikes even though it’s “meant” for more urban stuff and is totally free to download huge regions of terrain, and it has good route finding along trails (crazy how all apps don’t have this even some highly rated ones.).


Also use organic maps. Works great for hikes in my experience.


Thanks! It relies heavily on open source libraries and open map tile providers.

A service worker handles caching of most of the application resources, while a Leaflet plugin[1] handles the actual tiles. You can see it in action by loading it on your phone, switching to landscape mode and pressing the save icon () that appears. It will cache everything in view, for certain zoom levels (configurable). I believe the plugin saves to session storage.

[1]: https://allartk.github.io/leaflet.offline/


Very nice. I really appreciate the simple implementation and plan to load it with some of my favorite Kentucky hikes.

I was not aware of the Knobstone trail even though I live relatively close in Lexington, KY. We'll be hitting it for some day hikes this winter.

Thanks!


Cool! Glad to see some folks planning to give this little app legs of their own.

You will have some great views of the KT during winter for sure. FYI the stretch between Leota and Elk Creek is brutal.


This is really cool! The app has all important features one needs!

Since the UI/display has a major impact on battery, it would be nice to have a dark stylesheet and map style.

Regarding location tracking in the background, this is not working inside web browsers. Even for Android native apps a lot of user actions are required in order to make background location tracking possible. Moreover google play might not approve an app, which has background location tracking [1].

[1] https://developer.android.com/training/location/background


That would be great! I wonder if there are any dark mode tilesets for maps... not sure how that would affect legibility during the day but it would be perfect for evening at camp, for previewing the next day's hike.

Thanks for the link. It's too bad but it makes sense for privacy reasons.


I am looking for a map app for Android atm.. Here is what I asked on r/androidapps. Maybe one of ye could recommend something?

Is there a map app that has same satellite imagery as google maps but isnt google maps?

I do a good bit of mountaineering. I use 'OSMAND' when driving to the parking spot and 'World Topo Map' when hiking on foot. One problem with world topo map is that the satellite imagery is not great, having the far superior google maps satellite imagery would really be beneficial so I could see where small trails are relative to me. Unfortunately the google maps Android app itself is unusable trash imo. Is there a good app like OSMAND or World Topo Map that uses the same satellite imagery as google maps? If it also has the option to save the data and work offline that would be very useful also. I would pay for an app that fufils those requirements np. Thanks!


Have you given Gaia GPS a try? I think we satisfy most of your requirements. We provide Mapbox satellite imagery, which isn't the same as Google's, but it's pretty good.

I work on the maps on that app, so of course you ought to try it for yourself rather than believing me.

https://play.google.com/store/apps/details?id=com.trailbehin...


OsmAnd can do online map tiles, custom online map tiles, caching. Also, can use SQLite map cache, which can be created by some other program, e.g. SAS.Planet


Thanks for creating and releasing this. I started getting into walking after the pandemic. There is a nice suburban trail near my house and I have walked several hundred miles on it. This app is inspiring me to take my newfound love of nature and trails for a day trip or even a multi-day trip. I am grateful for your advice to do my homework including learning to use and carry a compass and a map. To wit:

> You should always research your trip ahead of time, plan training hikes, become familiar with the terrain, carry a physical compass and map and know how to use them.

Have you any additional advice for someone who has not really done a multi-day trip before? I have never heard of AllTrails; I will check it out.


Just a word of warning, if you don't know how to use a map and a compass, and don't practice with it semi-regularly, do not be fooled into thinking these will save you simply because you have them.


I don’t fully disagree. You certainly don’t want to suddenly have to use unfamiliar tools for the first time when your phone dies or you discover you forgot to download a digital map.

On the other hand knowing the rough direction you’re going and seeing where trails go don’t require being an orienteering whiz.


It doesn't, you're right. But the counterpoint to that is you should be really, really sure you have correctly gotten back on track if you decide to move any significant distance. That is the number one thing wilderness rescue folks will tell you. Assuming someone knows when you're supposed to be back, it will be vastly easier to check the immediate vicinity of your planned route than to find you well off-trail in some other direction. Climbing a nearby hill for better visibility or getting on a more-traveled fire road is fine, but heading off can really slow down the search.


I agree with both of your points. The gaps in knowledge become a real problem if the user has lost their sense of location, which happens surprisingly easily. If your egress route is straight-forward (e.g. head west, no hazards on route), it's easier to recover. But there are lots of skills that need practice or instruction - triangulation, aiming-off, taking a bearing, back-bearing, declination setting, heck even reading your altitude.

Add panic because you're lost and losing daylight, and you're in a pickle.


Yeah. My assumption was that you’d probably be hiking on trails. Bushwhacking or off trail travel generally require more skills. Though if you’ve just gotten turned around pulling out a compass can help a lot.


In the SAR world, it's very rare we search for people who are intentionally going off trail (e.g. scrambling/mountaineering/bush-whacking). It's almost exclusively folks who were hiking on trail, lost the trail, and then became disoriented. It's hard to know for certain, but my gut says some large % of those folks would not have been aided by having a map/compass.


Certainly it’s about a lot more than knowing what a map and compass is—including when to just turn back. Though I’d argue those 2 things are at least a minimal backup if electronics fail or aren’t properly setup. And I suspect a lot of people don’t carry because they figure they have a phone.


I love hearing about the positive effects from difficult events like the pandemic. I'm glad this is inspiring you. I got very inspired as I was building it too. Working on it brought out some enthusiasm I haven't had in a long time--really since I first started coding for fun. There's something about integrating the two hobbies (dev & backpacking) that really invigorated me.

Have you done any overnight camping before? REI has some good resources[1] including checklists for gear. I bet you can find some good YouTube channels too with camping tips too. Watch some of those to get a sense.

I'd recommend starting with a single overnight. Find someone experienced to go with if you can. If not, find a trail where you stay close to the trailhead. That way you can bail if you need to.

Some other tips that come to mind: - Consider the wildlife in your area and whether you need to bring bear spray and hang your food (and any fragrant items) - After each trip do a little reflection. What did you bring that you didn't need? What did you need that you didn't have? - Make sure you carry enough water. Most people need about a half liter per hour during moderate activity in moderate temperatures. If you want to rely on natural water sources, you will most likely need a water treatment device. Also consider that some lakes/streams are seasonal and not always available. Do your research! - Read up on Leave No Trace principles so that you can conserve the outdoors and make sure others can have the same enjoyment[2].

That should give you a good place to start. Feel free to reach out with any specific questions. I've been thinking about sharing more camping/hiking resources on my website.

[1]: https://www.rei.com/learn/c/camping/t/skills?ir=category%3Ac... [2]: https://lnt.org/why/7-principles/


Nice, thanks for the tips and the thoughts!


I would also recommend checking out OsmAnd Maps in this space. I use it both for hiking and cycling. I love the UI customizability, for example being able to overlay a satellite map on top of a trail map and having a slider to adjust opacity – this really helps with orientation. On the cycling front it is the only app I know that has a sensible route planner and turn-by-turn navigation. It's open source too, and based on OSM data: https://github.com/osmandapp/ (No affiliation, just started using it after Gaia GPS lost my data.)


It's pretty nice and what I use because all the other apps like Gaia and Wikiloc are so extremely commercialised. When I tried both of them out, neither had a way to pay without having an android with a google account which I don't (I use degoogled android). And GaiaGPS was taken over by some other company that started monetising it more.

I don't mind paying for an app, I paid for some others outside of the Google store (nine folders and cryptomator) but many don't bother to offer this option.

But I don't think OsmAnd is great for viewing elevation profiles of routes. It makes a little elevation graph below the calculated route, but it's really hard to see where this maps out to hard parts on the actual map.


For mapping out the hard parts, there's a separate "plugin" that you can enable to turn on contour lines and hill shading or slope map an overlay on the main map https://osmand.net/docs/user/plugins/contour-lines


I know! And I use it. But it's not super visible. I'd love to see colour shading on the route lines based on the gradient or something. OSMAnd does know the gradient, it just doesn't show it in the map view.


I appreciate that you can scrub through the elevation chart to show the corresponding location on the map. Not every hiking app does this, unfortunately!


On a slight tangent, one app I've wanted recently is where I can automatically generate run routes of a certain distance from my location using google maps or something. Basically put a pin where I start, where I finish (maybe the same place), and distance, where it then offers various possibilities I can pick from. Does something like this exist?


Check out trailrouter.com

I discovered it thanks to an Show HN (https://news.ycombinator.com/item?id=23802317)


This is a premium feature of Strava


Pretty cool, though I'd just want an app that shows hiking/walking tracks, even when zoomed out. OSM has such a great db of tracks, but trying to discover them is near impossible unless you know they're there. (you gotta zoom in so far, as soon as you try to get an overview the tracks disappear)


> [but] you gotta zoom in so far

If you'd share which software you're using, I can maybe suggest a solution. For the most common ones, the .org website and OsmAnd the Android app:

- on osm.org you can click on layers on the right and select a different presentation. OSM is a database, not a software package. The available presets are a few demos basically, there are a thousand websites out there with their own style or you could make your own (easiest might be via a commercial provider like mapbox, I'm not sure).

- OsmAnd: click on the mode you want to change, by default in browsing mode that's the world icon on the top left, scroll to the bottom section (translated from my German translation, it should be called Map Display Mode or so), and you can choose for e.g. UniRS whose help text (see top of screen after selecting) mentions it's for pedestrians and cyclists. In the same menu, I can also recommend Details->Show More Details, at least for browsing mode (in car navigation mode it might be less nice). One section above, you can also turn on walking routes, running routes, cycling routes, horse riding routes, etc. For regular use, you might want to enable that for a secondary profile though, as the screen usually is overwhelmed with even one of these sets of routes.


Hmm, the cycle map on osm.org is pretty much what I'm after, but for walking tracks. I do love mapbox's map style, and had a play with it to get the walk tracks to show at all zoom level, but only really got them to be red (and some black at higher zoom levels) https://api.mapbox.com/styles/v1/adriel/cite19m62004l2ip1xk6...

I usually use maps.me, (and sometimes outdooractive, they have a walking layer, it's under paid plan, and even when I tried the paid, there walking layer didn't appear to do anything.)

Thanks for the OsmAnd tips, and that does help a bit, the tracks stick around a little longer when zooming out, but not nearly long enough if I'm zoomed out to the 2km+ levels, they just disappear.

I'm not really stuck to one app (or even mobile, computer or web based app would be fine too), if there is something out there that does it better I'll switch, though I won't pay much for it, I don't use it often enough. Unless it's a one time payment.

Appreciate the tips, thank you.


Nice. I wish there was some web API to record geolocation in the background over time. I understand the privacy implications, but if it was an API only available to installed PWAs, and with an indicator similar to native apps when recording geolocation in the background, I feel like that would be acceptable.


Is this not possible with a service worker? That's too bad. I haven't thought much about the privacy implication but I figure if you go through the trouble of installing a PWA and granting it access to your location then why not? What you suggested seems like a good route.


I was wondering as well so I looked it up real quick. Here are some relevant issues:

- https://github.com/w3c/ServiceWorker/issues/745 - https://github.com/w3c/geolocation-sensor/issues/22


That’s so cool!

Hey if you don’t mind since you built it, what are the advantages of PWA vs native/flutter mobile app? I’ve been messing with SwiftUI/Kotlin and recently switched to flutter earlier this year.

Thanks and congrats !


Thanks! I've only used React Native so I'm not sure. I can say that with a PWA you're dealing with the overhead of the web browser. That has its tradeoffs. For simple UIs a PWA is a great option. When you have more complex UIs or need access to APIs that aren't available on the web then native is probably a better route. Performance is probably always going to be better on native too.


Thank you!


Nice!

We use CalTopo.com (Works everywhere, not just California) and GaiaGPS.com for offline mapping and track recording. Both allow offline use after downloading map tiles.

CalTopo allows you to add lines and markers and polygons to your map beforehand in the web app or in the field on the mobile app. It does have a number of analysis features, but it's not as multi-day-hiking-specific.)


I like this a lot.

The All Trails cost seems too much for me, because my hiking is limited to 1 or 2 trails.

I'm going to see if I can draw my own trail with the GPS visualizer this weekend!


Although not identical in features, I heartily recommend WorkOutDoors (http://www.workoutdoors.net) to anyone who owns an Apple Watch. It's brilliant as an offline hiking buddy.


This is great! Thanks for sharing!

Can I ask you how calculated the slope gradients (if I'm reading that right? like red = steep?)


I wish I had time to have built that part myself! I'm leaning heavily on open source plugins like these [1][2]. The gradients are representative of elevation. So red = highest points along the trail and green = lowest points. Where you see sharp gradients from green to red is where the steepest slopes are. There is slope graph that can be setup in the plugin configuration.

[1] https://github.com/Raruto/leaflet-elevation [2] https://github.com/iosphere/Leaflet.hotline


Can you recommend any resources for setting up the service workers and manifest for a PWA?


MDN's web docs were instrumental. They have a nice guide[1]. Beyond that, their docs for the web APIs are great too.

It was actually pretty easy, but I did get tripped up by the scope of the service worker. Initially I had the service worker js file in the `scripts` folder but it wouldn't work properly because the scope is by default relative to that file's location. I moved it to the root and that fixed my problem but you can also configure the scope when you register it[2].

[1]: https://developer.mozilla.org/en-US/docs/Web/Progressive_web... [2]: https://developer.mozilla.org/en-US/docs/Web/API/ServiceWork...


Nice project, sleek UI and performant. Didn't realize Indiana had hills like that!


Thanks! Yep the southern end has some good hills. I think even many people who grew up here aren't aware of this trail but it is a good one with some beautiful views. It's part of a larger 160 mile trail system that many people in the region use to train for the Appalachian Trail.


Awesome work fellow Indianian! The northern end has some good hills too, albeit made of sand... but does have some beautiful views, too! A lot of people in NWI/Chicagoland don't know Gary has National Park access, beaches, trails, etc. Indiana's more than just corn (but it also is just a lot of corn)


Thanks! I've been to the dunes a couple times but I'd definitely like to explore more up there. By the way, how the heck did you end up in Gary from Britain?


Very nice work! Sleek interface. I'll need to field test it soon ;)

Have you by any chance also evaluated MapLibre (https://maplibre.org/) as an alternative to Leaflet. I'm just wondering if anyone has any insights on how they compare. I use MapLibre for one of my side-projects [1].

What are you using as source for height data (I see the curve colors represent the altitude). I've noticed that one of the most commonly used datasets [SRTM](https://lpdaac.usgs.gov/products/srtmgl1v003/) has some deviation compared to OSM data in high latitudes. E.g. some peak locations from OSM don't match to the contour lines from SRTM. But I have never found any further infos about this.

[1] https://cubetrek.com


I haven't tried MapLibre. I'm learning that there are lots of alternatives to Google Maps and Mapbox which I love to see.

I learned of Leaflet through GPS Visualizer[1]. It's an excellent resource. They also have a tool that will augment your GPX file with elevation data[2], though I'm not sure what source they use. According to their site:

> Complete copies of the SRTM3 and USGS NED databases, as well as a large number of SRTM1 and ASTER tiles, are stored on GPS Visualizer's server`

One thing I learned through this project is that elevation and distance data are all over the place depending on what source you're pulling from.

[1]: https://gpsvisualizer.com/ [2]: https://www.gpsvisualizer.com/elevation


As a non technical person, can I download and use the app? How?


Yes but keep in mind the trail that's loaded is baked into the app. You can't select from a list of trails or anything like that. This is more of a boilerplate for other people to customize. But maybe someone will fork and add that kind of functionality.

That being said, it's a web app which means it runs in your browser. Follow the link at the top of the README ("Try it out here").

If you're on Android, open your browser menu and look for a menu item that reads `Install` and tap that to add the icon to your homescreen. Now you can use it as a standalone fullscreen app.

If you're on iOS Safari, you can follow the same instructions but install of `Install` it's something like `Add to Home Screen`. Unfortunately Apple doesn't support all the same features because they want to incentivize people using their app store.


This is really good.

I am personally a big fan of Alltrails and their pro-subscription (with offline maps), but it is huge achievement to string this together in a couple of weeks.


Very cool, but fwiw Gaia does all of this beautifully. I've used it for years to pre-cache maps and track my progress.


[deleted]


This is cool. My single favorite app I. This category is MapOut. Seems to be pretty similar, 100% offline topo maps with additional things like route planning, detailed trails, GPS, etc. The killer features for me are the detailed offline mode so it works great no matter my reception, and that I can email GPX or any other export format and within 30 secs the route I emailed is showing up on my app. Really makes it easy to route create on a computer and send to MapOut with no fuss.

I have no affiliation, but it’s the only paid app I appreciate as much as I do.

https://apps.apple.com/us/app/mapout/id477094081


This is great! Mine is definitely more of a proof of concept that probably shouldn't be used outside of well-marked trails. This looks like the alternative I've been looking for. Do you know if it requires registering an account to use?


I just checked my app, it does not. Seems like an account is required to email upload routes maybe? Which would make sense. But seems like no login needed for most functionality.


Have you tried similar apps like Backcountry Navigator or Avenza? (Just wondering how they compare)


I have, they’re both good. I really do spend many many hours on trails every year, in the mountains, in all seasons. MapOut is a clear winner for me, the interface is the most intuitive for all the basics and I’m always stumbling on new, useful features.

An example of something I stumbled onto: have a route open on your screen, zoom into some portion of the route, tap the screen and it adds markers on the route telling you the distance of the segment on screen, which persist when zoomed out. This seems silly, but highly useful way for me to zoom to where my location is (say) at bottom of screen and next route milestone is at top, and getting the exact distance to go between current location and desired location on the fly.


Have been looking for something like this! Alltrails and many other products (even paid Pro, which i have) is total garbage. There is a huge market for a great offline-first hiking/exploring maps app.


There are a couple of apps that are very good in their own right, but not quite what hikers need.

TrailForks[1] is in many ways the ideal app for mountain biking, and a great example of what a "trail recommendation" app for hikers should be. It combines the best trail data with easy navigation, planning and routing. What's really unique about it is that they got buy-in from a huge number of regional trail organizations and land managers, so it's frequently updated and generally quite accurate.

When you're riding in an area you're unfamiliar with, it's really easy to put together a good route, read reviews from other users and check out trail conditions.

Gaia GPS[2] is probably the best outdoor mapping app. It doesn't have social functions or trail recommendations, but you can grab layers from just about everywhere, from USGS topo maps, to forest service maps, specialty layers and more. It's great at tracking where you've been, planning routes based on map data and making it hard to get lost while you're out there.

I think the ultimate hiking app would be some combination of "Trailforks but for hiking" and Gaia.

One disclaimer about those apps, they were both recently acquired by Outside Inc., so far they haven't been ruined, but I (and other dedicated users) are worried that corporate ownership won't be good for either app/community.

[1] https://www.trailforks.com/

[2] https://www.gaiagps.com/


Just a note about Trailforks. It was introduced as a crowdsourced, free application/service which was lacking data, but had a huge audience. So people little by little put a lot of riding data in it (trails, routes, media, info etc), the word spread, and over couple of years it turned out to be pretty much the best trail riding/mapping app. And that was mostly because of the data, not the app itself, because it was frankly not very good UI-wise.

The the other shoe dropped. They locked the data and the app behind a subscription service, and not long after that, they've bundled some related web sites with it and sold it to off to some bigger company for quite a nice sum from what I've heard.

My point being, they knew about the subscription/monetization since the beginning but "forgot" to mention it (for obvious reasons). Classic bait and switch tactic. My riding buddies and me spent dozens of hours (some much more) mapping our region and added hundreds of trails and other info "for the good of everyone", just to get it locked away by them. I'm wiser after that, but this is definitely an example how to destroy a good will of a community.


As an occasional user of Alltrails, what is total garbage about it? Just curious. I don't find it as bad but perhaps I'm not using it for the same uses cases as you are.

Found it useful going to Yosemite and planning some hikes over there, especially to know recent comments.


Vtriol against AT is because it is not a trail finding, offline gps, or fitness app. It is a "lifestyle" application designed to drive pro subscriptions. Additionally, paywalling offline map access is downright evil.

the feature of all trails pro is it's unique maps you can download for data-less access. This ^ should be illegal. Imagine you're an under-equipped tourist from boston who tries to hike Mount Washington, thinking your application surely will work offline? Nope, you gotta pay for that, and you don't know until you're lost.


I had a lot of success with Backcountry Navigator. Used it a something like 2010 to 2018 but haven't done real hiking recently. It was great for downloading topos for offline use (you could be very particular about what subsets of what maps you were downloading, and lots of map types were available) and for GPS tracking on the maps. One thing that was great was the built in GPS satellite view / compass that you could use to troubleshoot when you weren't getting good GPS.


My personal favorite is MapOut for the iPhone.

Like many other apps, it has off-line vector map support, but it has the unique feature to create routes interactively by swiping your finger over the trail that you want to ride, and it will immediately build an elevation profile.

It's incredibly useful when you didn't plan your route up front and you want to get an idea about what's ahead.


Yeah Wikiloc started out great too (especially here in Barcelona where they're from) but became way too commercial very quickly.

Everything is online so they can make sure you've paid for it. These things all start out great but as soon as they take off the monetisation becomes priority #1 and the user #2 and of course they die off again.


How are Alltrails or Backcountry Pro garbage? I use them almost exclusively offline, and both of them offer far better functionality for less battery usage than the linked PWA.


I recommend Hiking project


Google had an app called MyTracks[1] a while ago which was a very nice and simple way to have an offline google map and record your tracks. They deprecated and open-sourced it. Apparently, it's living on as OpenTracks[2].

[1] https://en.wikipedia.org/wiki/MyTracks

[2] https://opentracksapp.com/


Thank you so much for this! I remember loving this app years ago, but lost track of it during one of my upgrades.


Nice. Now I'm curious, is there a list somewhere of other projects Google open sourced after abandoning?


While we're on the Hiking topic: I recently created a web app in my free time to visualize GPS tracking files in a 3D terrain.

You can upload your GPX or FIT files and it generates the 3D Terrain using Babylon.js

It's called https://cubetrek.com


Nice app! I was definitely motivated to make this so I could get a better idea of the climbs ahead of me on our trip. Your app would have been useful.

I uploaded my GPX and it made these hills that I struggled through look like nothing! I'm not sure why they look so small, but maybe it's just because they are :) https://cubetrek.com/view/8081


How do you fund your maptiler bill? I've used maptiler in the past and found that using Mapbox GL JS with 50,000 map loads free-tier was significantly cheaper for me.

But your map is much smaller and users likely don't pan/zoom it very much.


That's easy: just don't have too many users ;)

But I understand that this will be difficult in your case, as you're running awesome shademap.


Ah hey! Should've looked in your profile. We've definitely crossed paths before. Congratulation on another fun project and I hope it scales slowly :)


Since people are mentioning the apps they like, for USA users, I can heartily recommend Topo Maps US (https://apps.apple.com/us/app/topo-maps-us/id1033846196) which is completely free and the work of a single developer.

It's fully offline and uses USGS Topo, Imagery, and Basic Imagery. The downside is that it takes a while to download the tiles (only once though) because you do download all the tiles for the area you select.

He also has a version for Canada, which I haven't tried.


"trail sense" is great app in this category https://github.com/kylecorry31/Trail-Sense


Trail sense is awesome, and .... It is on f-droid: https://f-droid.org/en/packages/com.kylecorry.trail_sense/


Thank for this, that's a good design decision.


What I want:

- I select trail

- App generates map PDF with numbered markers (milestones)

- phone has GPS active, but only shows single number, milestone. Preferably on lock screen, without unlocking phone.

Distraction free, tiny drain on battery.


Might as well use a standalone GPS device?




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: