Architectural Pattern

  • Monolithic Frontend
  • Micro Frontend
    • IFrame
    • Web Components
    • Module Federation
    • MicroApps / Route based

Communication Protocols

  • Long Polling
  • Web Socket
  • SSE (Server Sent Event)

Availablity (Offline Support)

  • Service Worker

Accessibility

  • keyboard Accessibility
  • Screen Reader
  • Color

Consistency

  • CSS Properties - use different CSS properties in case browser does not support it
  • Polyfills - create custom functions in case browser does not support it.
  • Design System - Material UI, Ant UI, Atlanssian UI, Fluent UI, Semantic UI

Credibility & Trust (SEO)

  • On-Page
    • Using SEO Tags in best possible ways like title description, meta etc
    • Content
    • Performance
  • Off Page
    • Backlinks
    • Ads

Logging & Monitoring

  • Error Logging
    • Sentry
    • TrackJS
  • User Tracking
    • Amplitude tracking
  • User Activity
    • Microsoft Clarity
  • Feature Usage
  • Infra/Capacity Monitoring

Database/Caching

  • Http caching
  • In memory caching
  • Apollo caching
  • State management (Redux, Context)
  • Local Storage
  • Session Storage
  • Cookie
  • IndexedDB

Security

  • DDOS
  • Authentication/Authorization
  • Content Security Policy (CSP)
  • CORS
  • Man in the middle

Performance & Optimization

  • Assets Management
  • Delivery Optimization
  • Build assets
  • SSR
  • Service Worker
  • Web Vitals to check
  • Perceived performance - Optimization done should be good enough that can be seen by user

Testing

  • Unit testing - Jest, Mocha, Chai
  • Integration testing
  • End to end testing - Cypress, Playwright, Selenium, Protactor