Skip to content

Performance

Whatbot is built to feel instant. Here’s what makes it fast, front to back.

The app is served through a CDN (Cloudflare) in front of the origin:

  • Edge caching of static assets — JS/CSS bundles, fonts, images are served from the nearest edge, not the origin server.
  • TLS + HTTP/2/3 terminated at the edge, close to the user.
  • The app servers sit behind a reverse proxy; their own ports are not exposed to the internet.
LayerWhat it caches
CDN edgeStatic bundles + assets (immutable, content-hashed filenames)
BrowserHashed /_next/static/* assets cached long-term; a new build busts them automatically
In-appThe inbox shows the last-known conversation list from the current tab straight away and refreshes it in the background, so the list appears without a spinner
  • Route-level skeletons — the main sections (inbox, dashboard, broadcasts, templates, flows, forms, catalog, AI agents and settings) show a shape-matched skeleton immediately while the page loads, instead of a blank screen.
  • Automatic code splitting — each route only downloads the JavaScript it needs.
  • Font optimization — fonts are served from Whatbot itself with display: swap, so text shows straight away and there is no request to an outside font service.

The frontend runs an optimized production build (next build + next start): minified, tree-shaken, pre-compiled routes — no compile-on-first-visit latency.

The inbox uses a hand-tuned real-time stack so it never feels like it’s “loading”:

  • Optimistic sends — your message appears instantly, then reconciles with the server response.
  • Live updates over WebSocket, with a polling backstop (and visibility-gating) so it stays current even if the socket blips.
  • Content-shaped skeletons while data streams in, instead of spinners.
  • Debounced + abortable search/typing so keystrokes never lag.