Aller au contenu
login
arrow_backRetour aux issues
Wayfare-labs/wayfare #53

Loading/cold-start state for Render free-tier wake-up

ecoDébutant help wanted area:ui difficulty:easy

descriptionDescription

> Written to the standard set by #33 — read that issue first for the expected level of detail. ## What Add a loading/cold-start state to the UI so a first-time visitor sees something other than a blank page while the Render free-tier instance wakes up (~1 minute). Currently, a visitor hitting the deployed URL while the instance is sleeping sees either a blank page, a connection error, or a browser timeout — none of which tell the reader what the project is or that it will be available shortly. ## Why it matters The project's credibility depends on a reader being able to verify its claims. If the first experience is a blank page or an error, the reader may leave before seeing any data. A loading state that explains what is happening — "Wayfare is waking up, this takes about a minute" — preserves the reader's trust and gives them a reason to wait. ## Which layer **Layer 4 — UI presentation.** No business logic, no new data. ## Exactly where the code goes - **Modified file:** `server/index.html` — add a loading state that is shown before the API responds - The loading state should: - Display a brief description of what Wayfare is (one sentence) - Indicate that the instance is waking up - Show a simple animation or indicator (CSS only, no JS libraries) - Disappear when the API responds with data - The loading state is the default; the data view replaces it on successful fetch ## Where the data comes from No new data. The loading state is shown while waiting for `/api/corridor?to=NGNC`. ## What "unmeasurable" means here Nothing is measured. This is a UX improvement. ## Acceptance criteria - [ ] A loading state is shown while the API call is in progress - [ ] The loading state explains what Wayfare is (one sentence, no jargon) - [ ] The loading state indicates the instance may be waking up - [ ] The loading state uses CSS only (no JS animation libraries) - [ ] The loading state disappears when data arrives - [ ] The loading state is visually consistent with the rest of the UI - [ ] No new dependencies ## Out of scope Do not change: - `server/api.go` — the API shape stays as it is - Any Go code - The Render deployment configuration - The measure workflow ## How to verify locally ```bash make build && ./wayfare -addr :8080 -schedule=0 -history-first # Open http://localhost:8080 — the loading state should flash briefly before data appears # To see it longer, add a artificial delay in the handler or slow the fetch ``` Or read `server/index.html` and confirm the loading state HTML/CSS is present.
codeOuvre sur GitHub