-
Notifications
You must be signed in to change notification settings - Fork 2
Description
The Issues I will address in here:
- Issue Card details not scrollable and cut off. #35 - Explainer text cut-off
- Issue Save the result in the cookies #29 - Saving result
- No Issue opened - Mobile navbar animation speed
fix for #35
To fix this bug, I would put the scroll behaviour into the container which holds the content and not for the whole modal which contains the explainer card.
This means the explainer card will get an overflow-auto with a h-full and max-h, so the scroll behaviour will be in the card itself and not for the whole page.
Mobile navbar
This may be just personal preference, but I find that the animation of opening and closing the mobile navbar is a bit too slow and feels bit clunky.
feature suggestions for #29
Query params Method:
@mxmtsk suggestion would be to save the results in the query params of the url. Which would be cool, but we need a way to make the params persistent while we redirect the user to other pages.
So this means either we refactor the button and link components to set the params simultaneous with the redirect or save the params in the session/local storage and set it if params were stored.
Other than that, we need to make sure to strip the params from the url for the page view tracking via Matomo.
Context Method:
I played a bit with a solution that used another react context. This only stores the data in memory, so if the user refreshes the whole page, every result would be gone again.
But with this solution, we would be saved from the hassle with refactoring components and stripping the params for view tracking.
SessionStorage Method:
Save the results in the SessionStorage, which will hold the results until the user closes the tab.
UI Suggestion for this feature:
I would but another box on the landing page if an election was already made.
Something like this(not final)

Data privacy:
I know we want to keep the data as safe as possible, so one of my solutions for that would be to create an endpoint to encode and decode results with a chosen algorithm and only save the encoded string in the storage.