Repository navigation
feat: subtle motion across the app - #32
Conversation
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configuration
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
viganogabriele
left a comment
There was a problem hiding this comment.
@SummaCristian Prima del merge sistemerei la sincronizzazione delle view transition: notifyPageRendered() scatta al cambio dell’URL, prima che la pagina sia montata. Con caricamento lento di Info o dei dettagli aula, la transizione mostra solo l’header e il contenuto compare dopo, senza animazione.
Va inoltre risolto il conflitto in home-page.tsx con main. Per il resto, test e controlli locali passano.
Pages are code-split, so on a slow connection the transition captured the new page before its chunk arrived and showed only the header. Preload the route first, then run the transition. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ctr4hzTyPYtdfSuvuek4PD
When a page's code takes a while to arrive, a tap showed nothing until the transition started. Show a centred spinner once the wait passes 400ms, so quick loads do not flash it. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Ctr4hzTyPYtdfSuvuek4PD
# Conflicts: # src/app/home/home-page.tsx
|
@viganogabriele giusto, ora la VT parte dopo aver montato la UI della destinazione, quindi non c'è più l'attesa sulla schermata vuota. Visto che però adesso c'è l'attesa sulla schermata precedente finchè a quando la destinazione non è montata e pronta per essere animata, ho aggiunto un piccolo spinner al centro dello schermo che compare quando il caricamento supera i 400 ms, giusto per dare un piccolo feedback all'utente mentre aspetta. Risolto anche il conflitto con main |
viganogabriele
left a comment
There was a problem hiding this comment.
Verificate le correzioni sul commit d274ae9: la navigazione verso Info e i dettagli aula mantiene la pagina precedente durante il caricamento e avvia la transizione con la destinazione pronta, anche rallentando i moduli di 1,2 secondi. Risolto anche il conflitto con main. Passano 66 test, TypeScript, lint, formattazione, build e CI. Approvata.
The redesign from PoliAule to the PoliNetwork branding has removed any trace of animations and transitions, so I worked across the entire client trying to bring it back while keeping it within PoliNetwork's brand and identity.
I added a whole bunch of animations to many components, with fast timings and subtle transitions, no long-distance translations and no morphs.
Everything is bundled in its own individual commit so that it can be easily amended if not approved.
Description
The app had almost no motion. This adds small, quick transitions where things appear, change or go away, and keeps the brand's restraint. Closes run in 150ms and opens in 250ms, with no bounce or overshoot. Everything is built from Tailwind utilities, plus a few keyframes and view-transition rules in styles.css. It respects prefers-reduced-motion, and the browser's back button still navigates without a slide. The branch is made of small commits, one per behaviour, so any of them can be reverted on its own.
What changes
Map markers
Markers are no longer torn down and rebuilt on every change. They persist and update in place, which removes the flash on filter changes. The map is now clipped, so markers for buildings off screen no longer draw over the building panel or toolbar while the camera moves.
New shared pieces
usePresence (keeps an element mounted while it exits), Reveal (height and fade), Swap and IconSwap, SlidingPill, and Nudge.
Not included on purpose
Full list of new animations:
Navigation
Popups and panels
Selection states
Values that change
Appearing content
Maps
Phones