Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add the ability to use location information to track user along route. #65

Open
ellenhp opened this issue Jul 28, 2022 · 5 comments
Open
Labels
enhancement New feature or request
Milestone

Comments

@ellenhp
Copy link
Member

ellenhp commented Jul 28, 2022

What I'm envisioning is that the user's location could be projected onto the route polyline, and the scroll position along the route timeline set appropriately. Bonus points to adjust the ETA based on current location and the splits of the steps remaining. Extra bonus points to adjust the split of the current step based on how far through it the user is.

Super bonus points to adjust the polyline style for the portion of the polyline that's already been traveled.

TBD whether Valhalla's GPS tracking service makes sense to use here. The privacy implications of that are pretty bad if the server is untrusted, but implementing that wouldn't necessarily block implementation of offline routing because Valhalla does compile to WASM.

@ellenhp ellenhp added the enhancement New feature or request label Jul 28, 2022
@ellenhp ellenhp added this to the Release 0.1 milestone Aug 28, 2022
@michaelkirk
Copy link
Member

I was thinking about looking into this next. Let me know if that'd be alright, or if you have any additional context you'd like to relay.

@ellenhp
Copy link
Member Author

ellenhp commented Sep 23, 2022

This issue made more sense when Headway had a horizontal timeline that eased the viewport along the route when you scrolled it. I don't know what this would look like in the context of our current directions UI.

It would be bigger in scope but do you want to tackle walking nav in general? Maybe cycling too depending on how we do it. At some point people will probably want us to do driving nav which is a massive can of worms and I want to put that off as long as possible because it will need my full attention to avoid creating something that will create distracted drivers and potentially kill people. But walking nav is something we could do sooner and with less headache. Transit and multimodal too.

@ellenhp
Copy link
Member Author

ellenhp commented Sep 23, 2022

I don't want to throw tasks at you necessarily because I want you to work on what you're most excited about, but I know you're interested in multimodal stuff and nailing a good walking experience would be the first step for building a trip planner/transit experience that doesn't suck :)

As for this issue, since we ditched the horizontal timeline UI I'm not really sure whether this is in scope for 0.1. I want to say it's not, but we can also do things out of order. If you came up with good multimodal/walking PRs before 0.1 I will still merge them. :)

edit: also the nice thing about doing a walking nav thing is you don't really need to handle automatic reroutes since it doesn't need to be hands-free. It's also not quite as important to snap GPS tracks to the road network with valhalla because it doesn't need to be fast. So it would probably just amount to projecting GPS fixes onto the route polyline and, if they're reasonably close, displaying the next step. I just don't like the idea of auto-scrolling as a way to surface that info anymore.

@michaelkirk
Copy link
Member

I never saw the horizontal timeline UI - thanks for the context.

I am interested in working on the navigation experience in general, and I agree that walking might be a good mode to dip my toes into.

I might start really small though. Like, right now your location dot doesn't update as you move around.

@ellenhp
Copy link
Member Author

ellenhp commented Sep 23, 2022

Yeah that sounds great! :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants