Skip to main content

Check your URL first

No https:// or missing SSL certificate If you’re serving remotely via the link in Despia Editor > Dynamic App Source, you need a valid HTTPS URL like https://example.com. Common mistakes:
  • Missing https:// prefix (just example.com won’t work)
  • No SSL certificate installed
  • Certificate expired or invalid
Fix: Add https:// and make sure your SSL cert is valid. Test the URL in a browser first.

Local server not loading

White screen with local server enabled If local server is on but you’re seeing a white screen:
  1. Try closing and reopening the app. Old cache is often the culprit.
  2. Verify your manifest. Check that /despia/local.json returns valid structure:
{
  "entry": "/index.html",
  "assets": [
    "/index.html",
    "/assets/app.abc123.css",
    "/assets/app.def456.js",
    "/assets/logo.xyz789.png"
  ]
}
Test it: Open https://yourapp.com/despia/local.json in a browser. You should see the JSON above.
  1. Make sure it’s a client-side app. Server-side apps won’t work with local server.
Using Next.js? You need to build a static export:
  • Add output: 'export' to next.config.js
  • Run npm run build
  • Entry point must be index.html
Static export docs: https://nextjs.org/docs/app/building-your-application/deploying/static-exports

Routing issues

Link is correct, local server is off, but still white screen This is usually a routing problem. Common causes:

Trailing slash issues

WebView environments sometimes add trailing slashes (/) to URLs. If your router doesn’t handle this, it breaks. Example problem:
  • Your app expects: https://example.com/dashboard
  • WebView requests: https://example.com/dashboard/
  • Router doesn’t match, shows blank
Fix: Update your router config to handle trailing slashes. Most frameworks have built-in support: React Router:
// Handle both /dashboard and /dashboard/
<Route path="/dashboard/*" element={<Dashboard />} />
Vue Router:
// Set strict: false to handle trailing slashes
const router = createRouter({
  strict: false,
  routes: [...]
})
Next.js:
// next.config.js
module.exports = {
  trailingSlash: true // or false, just be consistent
}

Redirect loops

Example problem:
  • App start URL in Despia: https://example.com/auth
  • Auth redirects logged-in users to: https://example.com/home/
  • Trailing slash breaks routing
  • Infinite redirect loop or blank screen
Fix: Make sure your redirects use consistent URL formats. Either always use trailing slashes or never use them.

DNS and www issues

www subdomain not configured If you point Despia to https://www.example.com but haven’t set up the www subdomain, you’ll get a blank screen. Check: Does https://www.example.com work in a browser? If not, you have two options:
  1. Remove www from Despia: Change link to https://example.com
  2. Add www support to DNS: Configure www subdomain in your DNS settings
Important: DNS changes can take hours to propagate. If you just made DNS changes:
  • Wait a few hours
  • Uninstall and reinstall the app
  • Don’t panic if it doesn’t work immediately

Quick debugging checklist

  1. ✓ URL has https:// prefix
  2. ✓ SSL certificate is valid (test in browser)
  3. ✓ Local server manifest at /despia/local.json is valid
  4. ✓ App is client-side (not server-rendered)
  5. ✓ Router handles trailing slashes
  6. ✓ No redirect loops
  7. ✓ www/non-www matches your DNS setup
  8. ✓ If using Next.js, built with static export

Still stuck?

If none of this helps:
  1. Test your URL in a regular mobile browser (Safari/Chrome). Does it work there?
  2. Check browser console for errors (use remote debugging)
  3. Contact support: [email protected] with:
    • Your app URL
    • Screenshot of white screen
    • Browser console errors (if any)
    • Whether local server is on/off