Skip to content

Instantly share code, notes, and snippets.

@tlrobinson
Last active March 6, 2019 23:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tlrobinson/422270ff4097c1ce1498f39984c1b92f to your computer and use it in GitHub Desktop.
Save tlrobinson/422270ff4097c1ce1498f39984c1b92f to your computer and use it in GitHub Desktop.
Polished Single Page Web Application Concerns
  • loading and error states
  • form validation/errors + dirty/invalid states
  • empty states
  • pagination and/or virtualization/windowing of large lists
  • normalizing state to ensure consistency
  • caching requests / cache invalidation
  • immediate feedback: optimistic updates and/or loading states
  • blocking duplicate actions (loading/dirty states for SPA, POST/redirect/GET for non-SPA)
  • cancelling pending requests when making an updated request (e.x. typeahead), or when navigating away from the screen that depends on it
  • keyboard/mouse events:
    • "return" to submit forms
    • "escape" to close modals/popovers
    • clicking outside modals/popovers to close
    • preserving command-click to opening links in new tab behavior
  • prefetching images and other content
  • avoid moving content when new data is loaded unless expected
  • transitions
  • avoid clipped or improperly stacked popovers/modals
  • block text selection in UI components, but not "content"
  • toast notifications, with undo for undoable actions
  • accessibility
  • mobile-friendly
  • offline-friedly

Source: https://twitter.com/tlrobinson/status/1101202128381472770 (and replies)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment