I use OsmAnd~. Mainly to analyze my skating routes (average speed, distance, etc) and planning sightseeing routes when on vacation.
For finding commute an app from local public transport is still the best and google maps are better than osmand, but for navigation on foot it’s very good. And you can download the region earlier, so when you use it, you don’t need that much data.