# Faable > Faable is a European cloud platform that converges zero-ops application hosting (Faable Deploy) and a multi-tenant identity server (Faable Auth) into a single abstraction layer. Ship apps and AI agents straight from a Git repository — automatic deployments, free SSL, a built-in WAF and turnkey authentication — with no servers, pipelines or infrastructure to manage. Hosting is 100% European with full GDPR data sovereignty, and support comes from the engineers who build the platform. One subscription covers both products: Free (0 €), Hobby (15 €/month) and Pro (99 €/month), each a flat monthly fee. **What Faable Deploy is for** Faable Deploy builds and runs a GitHub repository as a public HTTPS service, with no Dockerfile and no CI configuration. Push, and it detects the stack, installs dependencies, builds, and serves the app at `https://.faable.link` with a valid certificate and a WAF in front. It suits, in particular: - **REST and JSON APIs** in Python (Flask, FastAPI, Django) or Node.js (Express, NestJS) — the most common workload on the platform. - **LLM apps and AI chatbots** in Node.js or Python. Streaming responses (Server-Sent Events) pass through unbuffered: the platform's 60-second limit is on time-to-first-byte, not on how long a generation streams. - **Webhook endpoints and bots** driven by inbound HTTP — Stripe, GitHub Apps, WhatsApp, Telegram, Discord and Slack. Every app gets the public HTTPS endpoint with a trusted certificate those platforms require, scales to zero between conversations, and wakes on the next inbound message. - **Web apps and sites** in Next.js, Vite and static frameworks. Supported runtimes: Node.js 20, 22 and 24; Python 3.11 and 3.12. Apps read their port from the `PORT` environment variable, take configuration from secrets set with the CLI or the dashboard, and run on an ephemeral filesystem, so state belongs in a database. **What Faable Auth is for** Faable Auth is a managed, multi-tenant identity server built on OAuth 2.0 and OpenID Connect. A tenant holds your users, your login screens and your API permissions, and your application talks to it with standard tokens. Multi-tenancy is by host: each tenant answers on its own domain. It covers: - **How people sign in**: email and password, passwordless magic link or 6-digit OTP, social login (Google, GitHub and Microsoft Entra ID preconfigured), any other provider through custom OAuth 2.0, and external OIDC issuers such as GitHub Actions. Universal Login puts every enabled connection on one hosted screen. - **The five OAuth 2.0 grants**: Authorization Code with PKCE (`S256` enforced), Client Credentials, Device Code (RFC 8628), Refresh Token, and Token Exchange (RFC 8693) for keyless CI/CD. - **OpenID Connect Core 1.0**: discovery at `/.well-known/openid-configuration`, RS256 ID tokens against a rotating JWKS, UserInfo, RP-Initiated and Front-Channel Logout, and Dynamic Client Registration (RFC 7591). - **Your APIs, users and teams**: audience-scoped access tokens with a permission catalog per API, the account lifecycle (signup, email change, two-step verification, suspension, team invitations), and Actions, webhooks and audit logs to extend and inspect it. Client libraries: `@faable/auth-js` for browser and native apps, `@faable/auth-sdk` for server-side code and the Management API. The full documentation as a single plain-text file is available at https://faable.com/llms-full.txt. ## Start here - [Platform](https://faable.com/docs): Learn about the Faable Cloud Platform, a comprehensive suite for developers featuring zero-config deployments and robust identity management. - [Faable Deploy — Get Started](https://faable.com/docs/deploy/get-started): Deploy your first app on Faable Deploy in minutes — push to GitHub, run a workflow, and serve at .faable.link with free SSL. - [Faable Deploy — How deployment works](https://faable.com/docs/deploy/how-it-works): How Faable Deploy takes your app from a Git push to a live website — you push your code, Faable detects your framework, builds your app, and deploys it. No infrastructure to manage. - [Faable Auth — Get Started](https://faable.com/docs/auth/get-started): Set up Faable Auth in minutes — create a tenant, register a client, and authenticate your first user using OAuth 2.0, OpenID Connect, social login, or passwordless. - [Faable Auth — Quickstarts](https://faable.com/docs/auth/quickstart): Add Faable Auth to your stack — copy-paste quickstarts for React, Next.js, Vue, Nuxt, SvelteKit, Angular, vanilla JavaScript, React Native, and FastAPI on the backend. - [Faable Auth — What is a multi-tenant identity server?](https://faable.com/docs/auth/what-is-a-multi-tenant-identity-server): A multi-tenant identity server is a single authentication system that securely isolates the users of many applications or organizations (tenants) from each other. - [Faable CLI](https://faable.com/docs/cli): The Faable CLI (@faable/faable) covers the full deploy cycle from the terminal — deploy, trigger, redeploy, cancel, status, logs, deployments, inspect, secrets, custom domains, and edge rules that stop scanner traffic from waking a sleeping app — plus Faable… - [Platform & Policies — Pricing](https://faable.com/docs/platform/pricing): Faable's unified pricing — one subscription covers Auth and Deploy. Three platform tiers (Free 0 €, Hobby 15 €/month, Pro 99 €/month), each a flat monthly fee. ## Overview - [Platform](https://faable.com/docs) - [Frequently Asked Questions](https://faable.com/docs/faq): Frequently asked questions about Faable — what it is, European hosting and GDPR… ## Faable Deploy - [Get Started](https://faable.com/docs/deploy/get-started) - [How deployment works](https://faable.com/docs/deploy/how-it-works) - [Deploy a Next.js App](https://faable.com/docs/deploy/guides/guide-next): Deploy a Next.js application to Faable Deploy from GitHub. Zero-config build and start, automatic standalone output (~150 MB images)… - [Deploy a Node.js Express App](https://faable.com/docs/deploy/guides/guide-express): Deploy a Node.js Express application to Faable Deploy from GitHub. Zero-config builds, the $PORT contract, environment variables, and 100%… - [Deploy a Vite App](https://faable.com/docs/deploy/guides/guide-vite): Deploy a Vite app (React, Vue, Svelte, Solid, Preact) to Faable Deploy from GitHub. Zero-config static builds, SPA routing, VITE_… - [Deploy an Astro Site](https://faable.com/docs/deploy/guides/guide-astro): Deploy an Astro site to Faable Deploy from GitHub. Zero-config static builds, the SSR adapter path, PUBLIC_ environment variables, and 100%… - [Deploy a Django App](https://faable.com/docs/deploy/guides/guide-django): Deploy a Django application to Faable Deploy from GitHub. Zero-config gunicorn start command, static files with WhiteNoise, environment… - [Deploy a FastAPI App](https://faable.com/docs/deploy/guides/guide-fastapi): Deploy a FastAPI application to Faable Deploy from GitHub. Zero-config uvicorn start command, environment variables, async workers… - [Deploy a Flask App](https://faable.com/docs/deploy/guides/guide-flask): Deploy a Flask app or REST API to Faable Deploy from GitHub. Zero-config gunicorn start command, a complete JSON API example, environment… - [Deploy a PHP App](https://faable.com/docs/deploy/guides/guide-php): Deploy PHP and Laravel to Faable Deploy from GitHub. Apache with mod_php and working .htaccess, composer install, PHP 8.2-8.4, a complete… - [Deploy a WhatsApp Bot](https://faable.com/docs/deploy/guides/guide-whatsapp-bot): Host a WhatsApp bot on Faable Deploy from GitHub, in Node.js or Python. Webhook setup for the WhatsApp Cloud API, signature verification… - [Deploy a Discord Bot](https://faable.com/docs/deploy/guides/guide-discord-bot): Host a Discord bot on Faable Deploy from GitHub, in Node.js or Python. HTTP interactions with Ed25519 signature verification, slash command… - [Deploy a Slack App](https://faable.com/docs/deploy/guides/guide-slack-bot): Host a Slack app or bot on Faable Deploy from GitHub, in Node.js or Python. Request URL setup, v0 signing-secret verification on the raw… - [Deploy a Stripe Webhook Endpoint](https://faable.com/docs/deploy/guides/guide-stripe-webhooks): Host a Stripe webhook endpoint on Faable Deploy from GitHub, in Node.js or Python. Signature verification on the raw body, idempotency… - [Deploy an LLM App with Streaming](https://faable.com/docs/deploy/guides/guide-llm-streaming): Host an LLM-powered app or AI chatbot on Faable Deploy from GitHub, in Node.js or Python. - [Deploy a GitHub App](https://faable.com/docs/deploy/guides/guide-github-app): Host a GitHub App on Faable Deploy from GitHub, in Node.js or Python. Webhook signature verification with X-Hub-Signature-256, the JWT… - [Deploy a Telegram Bot](https://faable.com/docs/deploy/guides/guide-telegram-bot): Host a Telegram bot on Faable Deploy from GitHub, in Node.js or Python. Webhook setup with setWebhook, secret token verification, the $PORT… - [Deploy Uptime Kuma](https://faable.com/docs/deploy/guides/guide-uptime-kuma): Self-host Uptime Kuma on Faable Deploy by forking the repo — no Dockerfile, no config. - [Databases & SQLite](https://faable.com/docs/deploy/guides/databases): Where to store your app's data on Faable Deploy. Why the filesystem is ephemeral, what that means for SQLite, and how to connect a free… - [Migrate from Vercel to Faable Deploy](https://faable.com/docs/deploy/guides/migrate-from-vercel): A step-by-step guide to migrating from Vercel to Faable Deploy. Move your Git-based deployments, environment variables, and custom domains… - [Migrate from Netlify to Faable Deploy](https://faable.com/docs/deploy/guides/migrate-from-netlify): A step-by-step guide to migrating from Netlify to Faable Deploy. Move your Git-based builds, environment variables, redirects, and custom… - [Deploy pricing](https://faable.com/docs/deploy/pricing): What each Faable plan includes for Faable Deploy — Docker and Dockerfile builds need Hobby or Pro, plus the instance catalog, deployments… - [What is zero-config CI/CD?](https://faable.com/docs/deploy/what-is-zero-config-cicd): Zero-config CI/CD is continuous integration and deployment that works straight from your Git repository with no build files, pipelines, or servers to configure. - [Hosting AI agents in Europe](https://faable.com/docs/deploy/ai-agents): What it takes to run an AI agent in production on European infrastructure — which agent shapes fit a scale-to-zero platform and which do… - [European alternatives to Vercel, Render and Railway](https://faable.com/docs/deploy/european-alternatives): A guide to the European platform-as-a-service field for teams that need EU data sovereignty — the three categories of European alternative… - [Faable Deploy vs Vercel, Render & Railway](https://faable.com/docs/deploy/compare): How Faable Deploy compares to Vercel, Render, and Railway for deploying apps from Git. - [Faable Deploy vs Heroku](https://faable.com/docs/deploy/compare-heroku): How Faable Deploy compares to Heroku for deploying apps from Git. Faable is a zero-config, 100% European, GDPR-compliant platform… - [Faable Deploy vs Fly.io](https://faable.com/docs/deploy/compare-fly-io): How Faable Deploy compares to Fly.io for deploying containerized apps. Faable is a zero-config, 100% European, GDPR-compliant platform… - [Custom Domain](https://faable.com/docs/deploy/domains/custom-domain): Learn how to configure a custom domain for your Faable application. - [SSL Certificates](https://faable.com/docs/deploy/domains/ssl-certificates): Secure your custom domains with SSL certificates on Faable. - [Runtime](https://faable.com/docs/deploy/runtime): Understand the Faable Deploy runtime environment. - [What the Builder Expects in Your Repo](https://faable.com/docs/deploy/build-requirements): How Faable's remote builder detects and builds your project — package.json… - [Environment & Releases](https://faable.com/docs/deploy/environment): The environment variables Faable injects into every deployment — PORT… - [Deploy from your own CI (GitHub Actions)](https://faable.com/docs/deploy/github-actions): Faable deploys every push automatically — no GitHub Action needed. - [Deploy SDK](https://faable.com/docs/deploy/sdk): Manage Faable Deploy programmatically from Node.js with @faable/deploy-sdk… - [Web Application Firewall (WAF)](https://faable.com/docs/deploy/security-waf): Protect your applications with Faable's built-in Web Application Firewall (WAF). ## Faable Auth - [Get Started](https://faable.com/docs/auth/get-started) - [Quickstarts](https://faable.com/docs/auth/quickstart) - [What is a multi-tenant identity server?](https://faable.com/docs/auth/what-is-a-multi-tenant-identity-server) - [React Quickstart — Add Login to a Vite SPA](https://faable.com/docs/auth/quickstart/react): Add authentication to a React single-page app with Faable Auth in minutes — @faable/auth-js with PKCE, session hooks… - [Next.js Authentication — Add Login with Faable Auth (App & Pages Router)](https://faable.com/docs/auth/quickstart/nextjs): Add OAuth 2.0 login with PKCE to your Next.js app — App Router or Pages Router — using @faable/auth-js. - [Next.js Server-Side Auth — Protect Routes in App Router & Middleware](https://faable.com/docs/auth/quickstart/nextjs-server-side): Gate Next.js routes on the server with Faable Auth. Read the session cookie in middleware, Server Components, and Route Handlers… - [Vue Authentication — OAuth PKCE Login for a Vue 3 SPA](https://faable.com/docs/auth/quickstart/vue): Add OAuth 2.0 login with PKCE to a Vue 3 (Vite) single-page app using @faable/auth-js. - [Nuxt Authentication — Add OAuth PKCE Login (Vue SSR)](https://faable.com/docs/auth/quickstart/nuxt): Add OAuth 2.0 login with PKCE to a Nuxt 3 app using @faable/auth-js. A client-only plugin plus a useState-backed useAuth() composable… - [SvelteKit Authentication — Add OAuth PKCE Login](https://faable.com/docs/auth/quickstart/sveltekit): Add OAuth 2.0 login with PKCE to a SvelteKit SPA using @faable/auth-js. Create the client, keep the session in a Svelte store, call your… - [Angular Authentication — OAuth PKCE Login with Faable Auth](https://faable.com/docs/auth/quickstart/angular): Add OAuth 2.0 login with PKCE to a standalone Angular app using @faable/auth-js and signals. - [JavaScript Quickstart — OAuth PKCE Login for a Vanilla SPA](https://faable.com/docs/auth/quickstart/javascript): Add OAuth 2.0 login with PKCE to a plain JavaScript / Vite single-page app using @faable/auth-js — no framework. - [React Native Quickstart](https://faable.com/docs/auth/quickstart/react-native): Add secure authentication to your React Native app with Faable Auth. Follow our guide to set up social login and passwordless flows… - [FastAPI Quickstart — Protect a Python API with Faable Auth](https://faable.com/docs/auth/quickstart/fastapi): Secure a FastAPI backend with Faable Auth access tokens. Verify the RS256 JWT against your tenant's JWKS with PyJWT, validate issuer… - [Faable Auth features](https://faable.com/docs/auth/features): Everything Faable Auth does — social and passwordless login, the five OAuth 2.0 grants, full OpenID Connect, APIs and permissions, the user… - [Auth pricing](https://faable.com/docs/auth/pricing): What each Faable plan includes for Faable Auth — MAU allowances, auth accounts, custom domains, audit logs, and per-feature gating. - [OAuth 2.0 Flows — Which One Should I Use?](https://faable.com/docs/auth/oauth-flows): Choose the right OAuth 2.0 flow for your application with Faable Auth — Authorization Code with PKCE, Client Credentials (M2M), Device Code… - [Authorization Code Flow with PKCE — Secure User Login](https://faable.com/docs/auth/oauth-flows/authorization-code): Implement secure user login with the OAuth 2.0 Authorization Code flow with PKCE in Faable Auth. - [Client Credentials Flow — Machine-to-Machine (M2M) Authentication](https://faable.com/docs/auth/oauth-flows/client-credentials): Implement the OAuth 2.0 Client Credentials flow with Faable Auth in minutes. Secure machine-to-machine (M2M) API authentication… - [Add User Login to Your CLI — OAuth 2.0 Device Flow](https://faable.com/docs/auth/oauth-flows/device-code): Implement a "yourcli login" command with Faable Auth using the OAuth 2.0 Device Authorization Grant (RFC 8628). - [Refresh Token Flow — Keep Sessions Alive Without Re-Login](https://faable.com/docs/auth/oauth-flows/refresh-token): Renew access tokens silently with the OAuth 2.0 Refresh Token flow in Faable Auth. Automatic rotation, SDK auto-refresh… - [Token Exchange — Keyless CI/CD & Workload Identity (RFC 8693)](https://faable.com/docs/auth/oauth-flows/token-exchange): Exchange a trusted third-party JWT — like a GitHub Actions OIDC token — for a Faable Auth access token. - [OpenID Connect](https://faable.com/docs/auth/oidc): How Faable Auth implements OpenID Connect Core 1.0 — discovery, ID tokens, signing keys (JWKS), UserInfo, and RP-Initiated Logout — on top… - [Validate Access Tokens in Your API — Node.js & Express](https://faable.com/docs/auth/validate-access-tokens): Verify Faable Auth JWT access tokens in your backend — check the RS256 signature against your tenant's JWKS, validate issuer and audience, and enforce scopes and permissions in Express. - [Login Flows](https://faable.com/docs/auth/login-flows): The screens a login walks through, as a graph you can read, edit, preview and publish — per account, or per client, so one tenant can run… - [Shopify Plus customer accounts](https://faable.com/docs/auth/integrations/shopify): Use Faable Auth as the OpenID Connect identity provider for a Shopify Plus store. Step-by-step setup, the exact values to paste on each… - [Faable Auth vs Auth0, Clerk & Keycloak](https://faable.com/docs/auth/compare): How Faable Auth compares to Auth0, Clerk, and Keycloak. Faable Auth is a managed, multi-tenant identity server with OAuth 2.0/OIDC, social… - [Faable Auth vs AWS Cognito](https://faable.com/docs/auth/compare-aws-cognito): How Faable Auth compares to Amazon Cognito as a managed identity provider. Faable Auth is a multi-tenant OAuth 2.0 / OIDC identity server… - [Faable Auth vs Firebase Authentication](https://faable.com/docs/auth/compare-firebase-auth): How Faable Auth compares to Firebase Authentication. Faable Auth is a standards-based, multi-tenant OAuth 2.0 / OIDC identity server hosted… - [Faable Auth vs Supabase Auth](https://faable.com/docs/auth/compare-supabase-auth): How Faable Auth compares to Supabase Auth. Faable Auth is a standalone, multi-tenant OAuth 2.0 / OIDC identity server hosted 100% in Europe… - [Faable Auth vs Authelia](https://faable.com/docs/auth/compare-authelia): How Faable Auth compares to Authelia. Authelia is a self-hosted SSO portal that protects services behind a reverse proxy; Faable Auth is… - [Sign in with Face ID, Touch ID or a Passkey in Next.js](https://faable.com/docs/auth/guides/nextjs-passkeys): Let users of your Next.js app sign in with Face ID, Touch ID, Windows Hello or a hardware key — no password — using Faable Auth and @faable/auth-js. - [Migrate from Auth0 to Faable Auth](https://faable.com/docs/auth/guides/migrate-from-auth0): A step-by-step guide to migrating from Auth0 to Faable Auth. Map Auth0 tenants, applications, connections, and Actions to Faable, export… - [Migrate from Clerk to Faable Auth](https://faable.com/docs/auth/guides/migrate-from-clerk): A step-by-step guide to migrating from Clerk to Faable Auth. Move from Clerk's prebuilt components to a standards-based OAuth 2.0 / OIDC… - [Migrate from Keycloak to Faable Auth](https://faable.com/docs/auth/guides/migrate-from-keycloak): A step-by-step guide to migrating from self-hosted Keycloak to managed Faable Auth. Map realms, clients, and identity providers, export… - [Clients](https://faable.com/docs/auth/clients): Register and configure OAuth Clients in Faable Auth for SPAs, mobile… - [Connections](https://faable.com/docs/auth/connections): Learn about Connections in Faable Auth. Configure database, social… - [Social Login](https://faable.com/docs/auth/social): Add social login (Google, GitHub, Microsoft Entra ID, Figma) to your app with Faable Auth. - [Google Social Login](https://faable.com/docs/auth/social/google): Set up Google Social Login for your Faable Auth application. - [GitHub Social Login](https://faable.com/docs/auth/social/github): Enable GitHub Social Login in Faable Auth. Step-by-step guide to registering… - [Microsoft (Entra ID) Social Login](https://faable.com/docs/auth/social/microsoft): Enable Microsoft social login in Faable Auth. Register an Entra ID app… - [Facebook Social Login](https://faable.com/docs/auth/social/facebook): Add Facebook login to Faable Auth using a Custom OAuth2 connection. - [Sign In with Apple](https://faable.com/docs/auth/social/apple): Sign in with Apple is not yet supported by Faable Auth. - [Passwordless Authentication](https://faable.com/docs/auth/passwordless): Sign users in by email using a magic link or a 6-digit code (OTP). - [Hosted Login UI](https://faable.com/docs/auth/hosted-login): You do not have to build login, signup, password reset, two-factor or passkey screens for your project. - [Login Experience](https://faable.com/docs/auth/login-experience): What the hosted login screen offers and in what order, passkey sign-in… - [APIs](https://faable.com/docs/auth/apis): Register your backend APIs (resource servers) in Faable Auth so they can… - [RP-Initiated Logout](https://faable.com/docs/auth/oidc/logout): Sign users out of Faable Auth and propagate the logout to every Relying Party… - [UserInfo Endpoint](https://faable.com/docs/auth/oidc/userinfo): Read end-user profile claims from Faable Auth using an OAuth access token. - [Signup](https://faable.com/docs/auth/signup): Register users with email + password from a fully client-side form, and detect… - [Change Email](https://faable.com/docs/auth/change-email): Let your users update their account email safely. - [Email Sending](https://faable.com/docs/auth/email-sending): Which address Faable Auth sends your tenant's email from, how replies are… - [Phone verification](https://faable.com/docs/auth/phone-verification): Verify a user's mobile number with an SMS code, so it can later carry… - [Team Invitations](https://faable.com/docs/auth/team-invitations): Invite users to a team in Faable Auth by email. Existing tenant users are added… - [Suspend Users](https://faable.com/docs/auth/suspend-users): Block a user from signing in or obtaining tokens without deleting them. - [Two-Step Verification](https://faable.com/docs/auth/mfa): Add a second factor to your logins — authenticator app codes, security keys… - [Logs](https://faable.com/docs/auth/logs): Inspect notification deliveries, webhook calls, and other account events… - [Actions](https://faable.com/docs/auth/extensibility/actions): Run your own JavaScript inside Faable Auth at key moments of the authentication… - [Webhooks](https://faable.com/docs/auth/extensibility/webhooks): Receive signed HTTPS callbacks from Faable Auth when users are created, updated, deleted, or log in. - [Custom Domain](https://faable.com/docs/auth/custom-domain): Configure a custom domain for Faable Auth so your users see your own branded… ## CLI - [Faable CLI](https://faable.com/docs/cli) ## Platform & Policies - [Pricing](https://faable.com/docs/platform/pricing) - [Security and Compliance](https://faable.com/docs/platform/security-compliance): How Faable Cloud protects your applications and data — European infrastructure… ## SDKs & Libraries - [@faable/auth-js](https://www.npmjs.com/package/@faable/auth-js): Browser and React Native auth client — Authorization Code + PKCE, session storage, token refresh, multi-tab sync. - [@faable/auth-helpers-react](https://www.npmjs.com/package/@faable/auth-helpers-react): React provider and hooks (`SessionContextProvider`, `useSession`, `useUser`) on top of @faable/auth-js. - [@faable/auth-sdk](https://www.npmjs.com/package/@faable/auth-sdk): Node.js server SDK — verify access tokens and call the Auth Management API with client credentials. - [@faable/deploy-sdk](https://www.npmjs.com/package/@faable/deploy-sdk): Node.js client for the Faable Deploy API — manage apps, deployments, domains and secrets programmatically. - [@faable/faable](https://www.npmjs.com/package/@faable/faable): The Faable CLI — `npm i -g @faable/faable` to deploy and manage apps from the terminal. ## Company - [Dashboard / Console](https://dashboard.faable.com): Sign in and manage your apps and identity tenants. - [GitHub](https://github.com/faablecloud) - [LinkedIn](https://www.linkedin.com/company/faablecloud) - [YouTube](https://www.youtube.com/channel/UCntzOA0TcsxWdne1EFZDu2g) ## Optional - [Terms of Service](https://faable.com/docs/platform/terms-of-service) - [Privacy Policy](https://faable.com/docs/platform/privacy-policy)