I’ve been using an android app for several years called OsmAnd that I’ve been really happy w/. It’s based on offline maps so no cell service required.
It does have a lot of user options to allow you to set it up the way you want. One of it’s features is the choice of different “base maps” and different “profiles”. For example I have a profile set for when I travel w/ my big, slow, truck, and another for kayaking.
For the kayaking profile I use it’s version of a nautical base map and it will let me plot a course and give me river miles for the distance.
I have an older waterproof phone that’s purpose is to be my mapping/navigating unit on the kayak.
Other than having the settings wrong on it once where it shutdown when I closed the screen, I’ve rarely had an issue w/ it.
I think I have a $20 a year subscription that allows me to download as many maps as I want, or something like that (it’s been a while since I set it up).
And as far as showing you how far you’ve traveled and how far you still have to go, among other things, that info can all be set to show on the screen.