Hoppscotch self-hosted: which features require a backend in production behind a reverse proxy?
0 reputation · 04 Aug 2021, 10:05 UTC
0 reputation · 04 Aug 2021, 10:05 UTC
Running Hoppscotch locally with docker-compose masks backend dependency because the UI and optional backend share localhost, so CORS preflight and cookie handling succeed without explicit configuration. In production behind a reverse proxy (for example, Nginx or Traefik), the same UI build fails to reach environment, collection, and auth endpoints when the backend base URL is not set, and WebSocket or Server-Sent Events connections drop if Upgrade and Connection headers are not forwarded.
The project has not clearly documented which capabilities—environment sync, pre-request scripts, OAuth flows, real-time collaboration—strictly require a self-hosted backend versus functioning in a fully static deployment. Behavior varies across releases, and the web, desktop, and self-hosted web variants follow different networking paths.
Determine the minimal backend requirement for a production self-hosted deployment behind a reverse proxy so that teams can decide whether to provision the backend service or run a static-only build.
Which Hoppscotch features are confirmed to work without a backend in a reverse-proxied production deployment? Does the documentation or source code define a clear feature matrix for static versus backend-dependent modes? What verification steps can confirm that a given release behaves as expected for a chosen deployment model?
In a production deployment that serves the Hoppscotch web build through a reverse proxy, the following features can work without a backend:
localStorage or IndexedDB.Features that require a self‑hosted backend (or a proxy that forwards to one) include:
docker-compose.yml but comment out the backend, redis, and postgres services.VITE_API_BASE_URL=""VITE_WS_BASE_URL=""/api/v1/*, /ws, or /sse fail (indicating those features are disabled).https://httpbin.org/get) – it should succeed.Feature availability can shift between releases. Inspect the release’s .env.example and the frontend’s src/config/env.ts for flags such as:
ENABLE_REALTIME_COLLABORATIONENABLE_SYNCENABLE_OAUTH_PROXYAlso verify that your reverse proxy forwards Upgrade and Connection headers for WebSocket connections, and that sticky sessions or a shared Redis store are configured if you enable collaboration.
Do you need real‑time collaboration or OAuth flows that involve a client secret? If so, a backend service is required.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.