PlanScore / PlanScore

https://planscore.org
75 stars 8 forks source link

Friendly URLs? #367

Open paulirish opened 3 years ago

paulirish commented 3 years ago

Plan URLs are pretty opaque. Just the upload timestamp which isn't too human-friendly.

I've always liked Amazon's URL strategy in this regard.. A product URL will be https://www.amazon.com/Intex-Jump-Castle-Inflatable-Bouncer/dp/B002RXHW6S/ but really they only need https://www.amazon.com/dp/B002RXHW6S/ to show the same thing. The human-readable bit is seemingly discarded. Maybe we can do the same?

Here's one possibility..

http://planscore.org/plan.html?20201217T154558.646435809Z could instead be http://planscore.org/plan.html?n=ga-cd.gpkg-(weighted-by-turnout)&id=20201217T154558.646435809Z

http://planscore.org/plan.html?20210602T011219.957012722Z could instead be http://planscore.org/plan.html?n=nc_2010_congress_2019-11-15_2021-12-31.zip-(2016-votes-old-ACDE-matrix)&id=20210602T011219.957012722Z

Using history.replaceState() we can update a plan's URL clientside w/o refresh. And since the plan ID is also parsed clientside, we have a lot of flexibility. (and of course, backwards compatibility for this'd be ez)

migurski commented 3 years ago

I’m interested in pursuing this. We might also try to generate less hostile-looking plan IDs. I originally went for timestamps as a way to keep it all sortable.