Introduction
BeStraw — plateforme PME turnkey en open-core. Documentation technique.
BeStraw
BeStraw est une plateforme PME open-core (Strapi + Next.js, Docker) qui packe tout ce qu'un commerce indépendant a besoin pour fonctionner en ligne : site vitrine, menu/catalogue, ordering, paiement, fidélité, réservations, KDS, notifications, blog, contact, etc.
L'architecture est mono-tenant — chaque client a son propre stack Docker isolé (pas de SaaS partagé). Tu owns ta DB, tes secrets, tes données. Pas de commission, pas de lock-in. Le scaffolder CLI produit un projet Git clonable, déployable sur n'importe quel VPS via Dokploy ou Caddy.
Tu veux ton site BeStraw clé en main, sans le faire toi-même ? Voir leandre.io → — setup + opérations délivrés en turnkey.
Quickstart dev
npx bestraw mon-site
cd mon-site
docker login ghcr.io # une fois, pour pull les images pro privées
pnpm dev # boote db + api (+ kitchen) + web sur localhostLe scaffolder pose tout : docker-compose.yml, .env.example avec VERSION pinné sur la release courante, les bind-mounts pour le notifications-server custom, les features que tu as cochées (menu, ordering, payments, loyalty, etc.).
Architecture en 30 secondes
| Service | Image | Port dev | Rôle |
|---|---|---|---|
db | postgres:16-alpine | 5432 | Postgres unique pour Strapi |
api | ghcr.io/lbrzr/bestraw-api-{free,pro} | 1337 | Strapi v5 avec tous les plugins métier |
kitchen | ghcr.io/lbrzr/bestraw-kitchen | 3001 | KDS Next.js (si la feature kitchen est ON) |
web | build local (./web/) | 3000 | Site customer-facing Next.js |
Le web/ consomme l'API uniquement via @bestraw/sdk (pas de fetch raw). Le kitchen passe par un proxy same-origin Next.js qui injecte l'API token côté serveur — jamais dans le bundle browser.
Open-core split
- Free (npm public
@bestraw/*) — catalog, organization, blog. Suffit pour un site vitrine + menu publié. - Pro (GHCR npm
@lbrzr/bestraw-plugin-*) — customer, ordering, payment, loyalty, notifications, realtime, reservations, reviews, operations-bridge, analytics, admin, inventory, promotions, resources, tax. Image API séparée (bestraw-api-pro) — auth GHCR requise pour pull.
Le scaffolder détecte automatiquement le tier nécessaire à partir des features cochées et écrit la bonne image dans le compose.
Aller plus loin
- Getting started — détail du flux
bestraw create, features par features - Releases & versions — pinning, upgrade, changelog
- Plugins — référence par plugin
Source
Le code vit sur GitHub : LBrzr/bestraw. Issues, PRs, et le changelog complet y sont.