Deploy on webface.cloud
Every app on webface.cloud is a full backend — database, auth, file storage, and a REST + realtime API — that also hosts your frontend on the same domain. One origin: no CORS setup, no separate hosting bill.
Point your frontend at the app
npm install pocketbase
import PocketBase from 'pocketbase'
const pb = new PocketBase('https://your-app.webface.cloud') // or '/' in production
await pb.collection('users').authWithPassword(email, password)
const items = await pb.collection('items').getList(1, 20)
// realtime — changes stream to every open browser:
pb.collection('items').subscribe('*', e => render(e.record))
The webface.cloud API is powered by the open-source PocketBase engine — its JS SDK and documentation apply directly.
Option A — Deploy from GitHub (recommended)
- On your app card, open Frontend → Connect & deploy and paste your repo URL (e.g.
https://github.com/you/site). - Default build is
npm ci && npm run buildwith outputdist/(Vite). CRA users: set output tobuild. Plain static sites: leave the build command empty. - Auto-deploy on push: copy the webhook URL from the card into your GitHub repo → Settings → Webhooks (content type JSON). Every push to your branch redeploys.
Private repo? Use a fine-grained access token in the URL: https://TOKEN@github.com/you/site.
Option B — Upload a zip
npm run build zip -r mysite.zip dist
Then Upload zip on the app card. Live in seconds; replace any time. Client-side routing (React Router) works — unknown paths fall back to index.html.
Google sign-in (OAuth2)
- In Google Cloud Console → Credentials, create an OAuth client ID (type: Web application).
- Add the authorized redirect URI:
https://your-app.webface.cloud/api/oauth2-redirect(add your custom domain's too, if attached). - In your app's Data admin (
/_/) → users collection → Options → OAuth2, enable Google and paste the client ID + secret. - Frontend, one line:
await pb.collection('users').authWithOAuth2({ provider: 'google' })
The same panel supports GitHub, Apple, Microsoft, Discord and 25+ other providers — identical steps.
Going live on your own domain
- On the app card → Custom domain, attach your domain (e.g.
oloro.ca). - At your registrar, point the domain's DNS
Arecord at137.184.160.83(for a subdomain, anArecord on that host works the same). - Done. The HTTPS certificate issues itself within about a minute of DNS going live — your app answers on both addresses.
Don't own a domain yet? webfaCeMEdia can register and connect one for you — reply to your invite email.
What every app gets
/ | your frontend |
/api/… | database, auth, files, realtime |
/_/ | your data admin panel |