department-of-veterans-affairs / va.gov-cms

Editor-centered management for Veteran-centered content.
https://prod.cms.va.gov
GNU General Public License v2.0
99 stars 69 forks source link

SPIKE: Typehead for Address Field in Locator #19201

Open Agile6MSkinner opened 2 months ago

Agile6MSkinner commented 2 months ago

Objective

Determine if MapBox can support typeahead for an address entry field, and if so, outline how and what steps are needed to implement it.

Acceptance Criteria

Specific cases we are curious about

Parishes in Louisiana The "Springfields" as there are many across the states

### Tasks
- [ ] Research MapBox documentation for typeahead or address autocomplete support.
- [ ] Evaluate API options for address typeahead functionality.
- [ ] Identify necessary MapBox features or services (e.g., SearchBox API).
- [ ] Determine any required configurations or limitations.
- [ ] Draft a high-level implementation plan (front-end integration, back-end support, API key management).
- [ ] Assess potential challenges or blockers (e.g., rate limits, licensing costs).
- [ ] Make note of any implications for other Mapbox-consuming teams
- [ ] Provide a recommendation on feasibility and next steps
jilladams commented 2 months ago

@FranECross I just noticed you had tagged this one for Sprint 13, but we didn't pull it in during planning. I'm un-tagging, but if we need to consider pulling it in mid-sprint, let's discuss.

FranECross commented 1 month ago

@FranECross I just noticed you had tagged this one for Sprint 13, but we didn't pull it in during planning. I'm un-tagging, but if we need to consider pulling it in mid-sprint, let's discuss.

@Agile6MSkinner I think this one can wait until the next sprint or so, yes? I believe I tagged it during Prod Sync last week... cc @jilladams

eselkin commented 1 month ago

Evidently Mapbox SeachBox API is in beta with no prior releases and the package that they provide (rather than us developing a service to use their endpoints) is also in beta without non-beta releases prior

Agile6MSkinner commented 1 month ago

Ok, here's my instinct on that then: It's not mature enough for us to incorporate and we should send this back to the backlog to check in on at a later date. What do you think, @mmiddaugh ?

jilladams commented 1 month ago

From scrum today: we'll reach out to Mapbox to understand why it's still in beta / target timing to a production build, and $$ info, before we punt it.

eselkin commented 1 month ago

Reached out to Mapbox, got email back about setting up a meeting next week (week of 10/14). According to the pricing pages, 640k (approx avg of few months of use) would be: $569.00/month 1.5M (Aug usage) would be: $1211.00/month

https://www.mapbox.com/pricing#search-api-requests

I'm not convinced we'll need the number equivalent to the number of searches (since people move search around and search in the window etc, trying to find their location). But it's likely that we'll need some number of requests as someone is typing their desired location (say 3-4 requests as someone is typing) which would probably come out to some similar number. We would of course throttle or debounce how often the API gets requested as you would normally do in such a typeahead.

eselkin commented 1 month ago

They never got back to me about meeting this week. I re-emailed today and asked to meet for an approximate number of requests that are generally used to feel responsive for a user and still throttling/debouncing the requests (e.g. not making a request for each character a user types in the address field).

I approximate 3-7 calls to the API per user per location desired to be entered.

jilladams commented 3 weeks ago

No news from Mapbox?

eselkin commented 2 weeks ago

No news. Sent multiple follow-up emails to darnell.roberson@mapbox.com who replied to my initial inquiry, but haven't heard back.

jilladams commented 1 week ago

I sent a new email to Mapbox sales today, to see if we can spin up a new contact / get more information.