Skip to main content
Localizia

Introduction

Overview

This is a batteries-included SaaS starter kit built on Next.js 16 (App Router, React 19, TypeScript). It ships the parts every product needs — authentication, organizations, billing, file storage, email, an admin panel, and full internationalization — wired together and tested, so you can start on your actual product instead of the plumbing.

The kit is deliberately visually virgin: its own components render as semantic HTML with zero styling, exposing data-slot hooks. You bring the design system. See UI & styling for the three supported ways to do that.

What's inside

  • Authentication — email/password, magic links, email verification, TOTP two-factor, social login (Google/GitHub), and admin impersonation. Powered by Better Auth. See Authentication.
  • Organizations — a configurable multi-tenancy model: personal workspaces, shared organizations, invitations, and roles. See Organizations.
  • Billing — Stripe subscriptions with flat or per-seat plans, trials, and one-time credit packs. See Billing & plans and Credits.
  • File storage — S3 or Cloudflare R2 behind a signed-URL abstraction, with avatar and logo uploads built in. See File storage.
  • Email — provider-agnostic (Resend or SMTP) with React Email templates. See Email.
  • Admin panel — user and organization management, audit logs, and runtime app config. See Admin panel.
  • Internationalization — every page is localized (en/es out of the box) with next-intl. See Internationalization.

How the docs work

This documentation section is itself a kit feature (see docs/documentation-system.md in the repo). A few things worth knowing:

  • Content is multilingual. Every page lives under src/content/docs/<locale>/ and is served in the reader's language.
  • Pages fall back to the default locale when a translation is missing, with a notice — so a page can ship in English and be translated later.
  • A meta.json per locale controls the sidebar order and section grouping.

Next steps

Head to Installation to get the app running locally, then Configuration to learn how feature flags work.