Nous sommes en phase initiale — contactez-nous !
Licence MIT • Open Source • Multi-Cloud

Le framework backoffice opinionated pour équipes sérieuses, architectes logiciels, CTOs visionnaires

Primebrick v3 est un framework open-source qui définit l'infrastructure, l'architecture et les règles de codage selon les meilleures pratiques. Licence MIT : utilisation commerciale sans contraintes.

Licence MIT
6+ cibles
Zero vendor lock-in

From schema to production

Everything is an entity — not just your domain models, but settings, configurations, and metadata too. Define your entities, and Primebrick handles the rest: database migrations, API endpoints, RBAC, backoffice UI, tests — all generated following your conventions.

1 Define your entity schema
2 AI generates migration, CRUD API, UI, tests
3 Review, approve, deploy
primebrick@dev: ~ Schema Declaration
# Describe your entity
$ primebrick generate entity Customer
name: string (required)
email: string (unique)
status: enum [active, inactive]
phone: string (optional)
createdAt: timestamp (auto)
# AI generates everything...
✓ Database migration created
→ 00000000000003_create_customers_table.sql
✓ API CRUD endpoints (6 routes)
→ GET /api/v1/customers
→ POST /api/v1/customers
→ PUT /api/v1/customers/:id
→ DELETE /api/v1/customers/:id
✓ RBAC permissions configured
→ customers.read.* (guest, collaborator)
→ customers.* (administrator)
# Review the generated code
$ primebrick review --diff
14 files changed, 847 insertions(+), 0 deletions(-)
✓ Backoffice UI pages generated
→ /admin/customers (list, detail, form)
✓ Test scaffolding (12 tests)
→ unit: 4 | integration: 6 | e2e: 2
✓ OpenAPI spec updated
→ /api/v1/openapi/aggregated.json
# Deploy to production
$ primebrick deploy --env production
Building TypeScript...
Running tests... 12/12 passed ✓
Migrating database...
Registering microservice...
Deploying to Cloudflare Workers...
Health check passed...
🚀 Live at https://api.primebrick.dev/v1/customers
# Verify the deployment
$ curl https://api.primebrick.dev/v1/customers | jq .
status: 200 OK
count: 42 customers
response time: 18ms
$

Multi-cloud, vraiment.

Votre infrastructure, vos règles. Pas de vendor lock-in : Primebrick fonctionne identiquement de votre laptop au datacenter d'entreprise, du cluster K8s au cloud public le plus proche.

AWS®
Azure®
Google Cloud™
Alibaba Cloud™
Docker®
Kubernetes®
Self-hosted
Exécutez sur votre propre infrastructure
Cloud-hosted
Déployez sur n'importe quel cloud public
On-Premise
Déploiement dans le datacenter d'entreprise
AI Chat — Privé par design

Un assistant IA qui connaît votre domaine. Et ne quitte jamais votre infrastructure.

Primebrick AI Chat est intégré au backoffice, pas rajouté. Le LLM s'exécute comme un conteneur local, la base de connaissances vit dans votre PostgreSQL®, les conversations restent dans votre base de données. Zéro appel à un LLM cloud par défaut — la confidentialité est la valeur par défaut, pas une option.

Intégré et Privé

AI Chat vit dans votre backoffice. Les prompts, les réponses et les conversations ne quittent jamais votre infrastructure. Le LLM s'exécute comme conteneur local — zéro appel cloud par défaut.

Qwen3™ — Apache 2.0

Modèle par défaut : Qwen3™-4B-Instruct-2507, sous licence Apache 2.0. S'exécute sur CPU avec ~2,5 Go de RAM. Aucun GPU requis, aucune licence commerciale, aucun vendor lock-in.

OpenAI®-compatible

Le runtime expose une API OpenAI®-compatible. Passez à OpenAI®, Anthropic™, Zhipu™ GLM™, DeepSeek™, Groq™ ou tout provider compatible en changeant une clé de config. Votre code ne change pas.

Prêt pour la conformité

Stack tout Apache-2.0 (mistral.rs™, Qwen3™, Vercel AI SDK™, pgvector™). Déploiement air-gapped pris en charge. GDPR-aligned : aucun transfert de données vers des providers LLM tiers. Adapté aux secteurs régulés.

Aucune donnée ne quitte votre infrastructure

Aucune donnée ne quitte votre infrastructure. La configuration par défaut s'exécute 100% on-premise. Le LLM cloud est optionnel et opt-in — vous le configurez explicitement uniquement si vous le souhaitez.

Powered by Qwen3™-4B-Instruct-2507 · Apache 2.0 · mistral.rs™ · OpenAI®-compatible
Développement Agentic

Deux façons de construire. Les deux sont first-class.

Primebrick supporte tout le spectre des flux de développement. Utilisez votre IDE de choix pour du codage approfondi et hands-on. Ou laissez les agents IA construire des fonctionnalités directement depuis l'app web — sans environnement local.

// AI-POWERED

Mode Agentic

Agents IA dans le navigateur

Décrivez ce que vous voulez, approuvez le plan, et les agents IA le construisent directement dans l'app web. Pas de setup local, pas de config d'environnement. De l'idée à la fonctionnalité déployée sans quitter le navigateur.

🔒 primebrick.dev/agent/cowork
Customer Entity — Session #42
Create a Customer entity with name, email, and status fields
🤖 AI Agent
I'll create the Customer entity. Here's my plan:
1. Schema: name, email, status
2. Migration: 00004_create_customers
3. API: 6 CRUD endpoints
4. RBAC: customers.* permissions
5. UI: list, detail, form pages
6. Tests: 12 scaffolds
Plan ready — 14 files to create/modify:
Ask the agent to build something...Send
// TRADITIONAL

Mode IDE

VS Code, Cursor, Windsurf

Cloner, exécuter localement, déboguer avec des breakpoints, contrôle total. L'expérience développeur traditionnelle avec toutes les conventions du framework appliquées par l'outillage.

entity.schema.ts — Primebrick IDE — Visual Studio Code
entity.schema.ts
router.ts
1// Entity definition
2export const Customer = entity({
3name: string().required(),
4email: string().unique(),
5status: enum(['active']),
6});
7
8// AI generated:
9✓ Migration + API + RBAC + UI + Tests
✓ No problemsUTF-8TypeScript®Ln 9, Col 1
Design-Free

Votre frontend. Vos composants. Nos conventions.

Primebrick est opinionated sur l'architecture mais design-free sur l'UI. Utilisez n'importe quelle bibliothèque de composants — vanilla, Svelte™, ou notre propre Primebrick UI Library. L'architecture micro-frontend vous permet de construire n'importe quelle page avec n'importe quel composant, tandis que le framework applique les meilleures pratiques.

1

Tout est une entité

Paramètres, configurations, métadonnées — tout est entité. Les mêmes patterns CRUD, RBAC et validation s'appliquent partout.

2

Opinionated mais design-free

Meilleures pratiques appliquées par le framework. Mais vous choisissez l'UI : HTML vanilla, Svelte™, ou notre Primebrick UI Library.

3

Primebrick UI Library

Notre propre bibliothèque de composants avec les meilleures pratiques intégrées. Utilisez-la directement ou comme référence pour vos propres composants.

4

Architecture micro-frontend

Comme les microservices, mais pour le frontend. Chaque page est indépendante, déployable, et peut utiliser différentes stacks de composants.

Un backoffice qui commence par ses propres règles.

Tout backoffice commence bien et finit dans le chaos. Primebrick v3 inverse la perspective : nous partons des meilleures pratiques et les appliquons via le framework.

1

Infrastructure as Code

Manifestes K8s, charts Helm™, templates Terraform® prêts pour staging et production.

2

Architecture en couches

Séparation propre entre domaine, application, infrastructure et UI. Testable par construction.

3

Règles de codage opinionated

Linting, types stricts, patterns obligatoires : la dette technique est prévenue, non payée après.

4

Observabilité native

OpenTelemetry, logging structuré, health-checks intégrés dès le premier commit.

Tout ce dont vous avez besoin. Rien de superflu.

Nous avons pris les décisions difficiles une fois, pour que vos équipes ne les prennent pas à chaque sprint. Chaque brique est testée, intégrée et documentée.

/ AUTH

Identité & RBAC

OIDC, gestion des rôles, permissions granulaires au niveau schema.

/ DATA

Couche de persistance

PostgreSQL® : serveur BD ET serveur vectoriel pour l'IA générative. Soft-delete, champs d'audit, opérations bulk.

/ UI

Moteur backoffice

CRUD, tableaux, formulaires, filtres générés depuis les schémas de domaine.

/ OBS

Observabilité complète

OpenTelemetry intégré, tracing, métriques, logs corrélés.

/ MULTI

Multi-tenant ready

Isolation logique et physique pour des milliers d'organisations.

/ SDK

SDK type-safe

Clients TypeScript® générés depuis les endpoints, type safety end-to-end.

Modulaire par conception

Une brique à la fois. Ou toutes ensemble.

Chaque module Primebrick est une brique autonome qui suit les mêmes standards partagés. Commencez par les briques intégrées, puis livrez votre propre brique de facturation ou d'inventaire en utilisant exactement le même modèle. Le SDK et le DAL font le gros du travail ; votre module déclare seulement son schéma et sa configuration typée.

Standards partagés

ConfigEntityBase, ConfigLoader<TResult>, conventions de chemins CRUD d'entités, méta OpenAPI — chaque brique hérite des mêmes blocs de construction.

Isolation par schéma

Chaque module possède son propre schéma PostgreSQL® (auth, emailsender, billing…). Aucun couplage inter-modules sur la couche de données.

Auto-descriptif

Les modules exposent /meta + /openapi.json. Le proxy BE, la ConfigTable FE et le serveur MCP™ découvrent les capacités dynamiquement — pas de hard-coding.

Ajouter sans forker

Un nouveau module est une ou plusieurs entités de domaine, une table de config, un fichier de routes, une route FE. Le composant réutilisable ConfigTable rend sa page de paramètres automatiquement.

DB + Vector Server

PostgreSQL® : votre base de données ET votre serveur vectoriel.

Primebrick utilise PostgreSQL® non seulement comme base de données, mais comme serveur vectoriel pour l'IA générative. Pas de base de données vectorielle séparée à gérer. Bientôt plus de support de bases de données.

Bientôt plus de support de bases de données
Recherche de similarité vectorielle
-- Trouver des clients similaires via des embeddings vectoriels
SELECT name, email,
embedding <=> $1 AS distance
FROM customers
WHERE status = 'active'
ORDER BY embedding <=> $1
LIMIT 5;
$
Collaboration en Temps Réel

Collaboration en temps réel qu'aucun backoffice n'a jamais eue.

Voyez qui édite en temps réel. Quand un collègue sauvegarde, ses changements se fusionnent dans votre formulaire silencieusement — champ par champ, jamais l'entité complète. Si vous avez tous les deux touché au même champ, vous choisissez quelle valeur gagne. Pas de refresh, pas de travail perdu, toujours synchronisés.

Avatars de présence en direct

Voyez qui lit ou édite le même enregistrement. Les avatars affichent le champ en cours d'édition et la valeur en cours, en temps réel.

Fusion au niveau du champ

Quand un collègue sauvegarde, ses changements se fusionnent dans votre formulaire champ par champ. Les champs non touchés se mettent à jour silencieusement avec un badge vert temporaire. Sans rechargement de page.

Résolution de conflits

Vous éditez tous les deux le même champ ? Le panneau de conflits affiche votre valeur, la sienne et l'original — côte à côte. Choisissez laquelle gagne, champ par champ.

Verrouillage optimiste

Concurrence optimiste state-of-the-art intégrée. Plus d'écrasements silencieux, plus de données perdues — juste des sauvegardes sûres et sans conflit.

Stack temps réel : SSE + Redis® + NATS™ · Fonctionne sur HTTP/1.1 ou HTTP/2
Un decorator pour les synchroniser tous — zero config, prêt dès la première minute
Prêt pour l'Enterprise

Optimisé pour l'enterprise et le trafic élevé.

Primebrick passe d'une configuration laptop à un seul conteneur aux datacenters enterprise derrière un load balancer. Grâce à Redis®, peu importe comment l'infrastructure monte ou descend en charge, chaque composant reste synchronisé — invalidation du cache, état des sessions et coordination inter-instances passent toutes par une colonne vertébrale fiable.

Cache propulsé par Redis®

Marquez n'importe quelle entité avec @Cached(ttl) et les lectures à ligne unique fréquentes vont d'abord à Redis®. Omettez le TTL pour les données immuables ; choisissez un TTL qui borne l'obsolescence pour les données mutables. Zéro couplage avec la DAL — le cache vit entièrement dans le SDK.

Toujours synchronisé

Redis® garde chaque instance sur la même page. Les écritures vont d'abord à PostgreSQL®, puis invalident le cache. Les lectures trouvent toujours des données fraîches — pas d'entrées obsolètes, pas de conditions de course, pas de surprises.

Prêt pour multi-instance

Redis® est le cache partagé. Le pod #1 invalide une clé, le pod #2 voit le miss et ré-hydrate depuis PostgreSQL®. Aucun broadcaster NATS™ nécessaire. Faites évoluer le BE horizontalement derrière n'importe quel LB — Docker®, K8s, Swarm, Azure® Container Apps, Cloud Run.

Zéro vendor lock-in aussi sur le cache

Redis® est la seule implémentation de cache livrée aujourd'hui, mais l'interface CachePort est ouverte. Implémentez votre propre cache port pour Memcached™, DragonflyDB™ ou n'importe quel KV store — aucune modification du SDK nécessaire.

Infrastructure

Chaque composant, cartographié.

Du navigateur à la base de données — ports, protocoles et flux de données clairs. Dockerisé pour le développement local, prêt avec Terraform® pour la production.

HTTPHTTP /api/v1/OIDCcache · presenceLLM APINATS™ pub/subSSE proxy /ws/:codeSQL via DALregisterrate limitSQL via DALBrowserAdmin UI / API ClientsSvelteKit™port 5173Admin UI · SSRBackendExpress® · port 3001Auth · RBAC · ProxyMCP™ · SSE proxyseparate containerAI RuntimeQwen3™-4B-Instructmistral.rs™Vercel AI SDK™OpenAI®-compatibleport 8080 · ~2.5GB RAM · no GPURedis®port 6379cache · presencerate limit · sessionCasdoor™OIDC · port 8000Auth · RBAC · SSOMicroservicesAI · Email · dynamicBun™ · port autoauto-register via NATS™NATS™port 4222pub/sub · service discoveryPostgreSQL®port 5432pgvector™ — vector DBembeddings · similarity · single data store
Pipeline de Connaissance AI

Des docs MDX au RAG — end to end.

Les docs sont écrits en MDX dans chaque repo, synchronisés par CI, intégrés localement avec Transformers.js™ et stockés dans pgvector™. Le microservice AI récupère le contexte et envoie des prompts à un conteneur LLM séparé — aucun appel cloud par défaut.

AI Knowledge Pipeline — from MDX docs to RAGRepos (MDX)backend/docs/*.mdxfrontend/docs/*.mdxmicroservices/docs/*.mdxsdk · dal/docs/*.mdxCI SyncGitHub™ Actionscollects MDXfrom all reposEmbeddingTransformers.js™MDX → vectorchunk + embedpgvector™PostgreSQL® extvector storesimilarity searchAI MicroserviceRAG querycontext retrievalprompt assemblyseparate containerLLMQwen3™-4Bmistral.rs™port 8080~2.5GB RAMpushMDXvectorssimilaritypromptresponseSSE stream response → Backend → BrowserShared Libraries — every runtime component depends on theseBackendExpress® · port 3001Auth · RBAC · Proxy · MCP™MicroservicesAI · Email · dynamicBun™ · auto-register@primebrick/sdkNATS™ · cache · presencehealth · rate limit@primebrick/dalpool · repositoryaudit · soft-deleteusesusesHow RAG works — end to end① WRITEDocs written as MDXin each repo's docs/folder — architecture,API, guides, rules② SYNCCI collects all MDXfrom every repo onpush — DeepWikienriches with AI③ EMBEDTransformers.js™chunks MDX andgenerates vectorembeddings locally④ STOREVectors stored inpgvector™ (PostgreSQL®extension) — noseparate vector DB⑤ QUERYAI MS retrieves relevantcontext via similaritysearch, assemblesprompt + context⑥ GENERATELLM (elsewhere)generates answerstreamed via SSEto browser
Architecture

Stratifié par conception.

Frontend, Backend, Microservices, Bibliothèques, Données — chaque couche a une responsabilité claire et communique via des protocoles définis.

1

Frontend

SvelteKit™ Admin UI — communique uniquement avec l'API Backend

2

Backend

Express® API — Auth, RBAC, Service Registry, Proxy

3

Microservices

Services Docker® indépendants — auto-enregistrement via NATS™

4

Bibliothèques

@primebrick/sdk + @primebrick/dal-pg — partagées

5

Données

PostgreSQL® — unique magasin de données, accès via DAL

Accessibilité

WCAG, VPAT & ARIA. Testé, non promis.

Primebrick est conçu accessibilité-d'abord. L'audit automatique WCAG 2.x + ARIA s'exécute sur chaque route via axe-core. Un rapport de conformité VPAT 2.5 INT téléchargeable couvre WCAG 2.0/2.1/2.2 (A/AA/AAA), Section 508, et EN 301 549 — pour que votre équipe de conformité ait des preuves réelles, pas des affirmations marketing.

WCAG 2.2 A/AA/AAA

Scans axe-core automatisés sur chaque route, chaque build. Critères de succès niveau A, AA et AAA testés en continu.

Rapport VPAT 2.5 INT

Voluntary Product Accessibility Template téléchargeable couvrant WCAG, Section 508, et EN 301 549. Généré à partir de données de scan réelles.

Conformité ARIA

Rôles, états et propriétés ARIA entièrement validés. Composants compatibles avec les lecteurs d'écran prêts à l'emploi.

Section 508 & EN 301 549

US Section 508 (Chapitres 3–6) et EU EN 301 549 (Clauses 4–13) couverts dans le rapport édition INT.

Sécurité appliquée

Passkeys, WebAuthn & MFA. Intégrés, non ajoutés.

Primebrick applique les meilleures pratiques modernes d'authentification. Le support Passkey via WebAuthn signifie que les utilisateurs s'authentifient avec Windows Hello™, Face ID™, ou Touch ID™ — aucun mot de passe à phisher, aucun code OTP à intercepter. L'authentification multi-facteurs est intégrée au niveau de l'identité, pas ajoutée comme réflexion tardive.

Passkeys (WebAuthn)

Authentification passkey FIDO2/WebAuthn. Résistant au phishing par conception — aucun secret partagé, aucune attaque par rejeu.

Windows Hello™

Authentification biométrique et par code PIN sur Windows 10/11 via Windows Hello™. Aucun mot de passe requis.

Face ID™ & Touch ID™

Authentification biométrique sur macOS et iOS via Face ID™ et Touch ID™. Fluide, sécurisé, natif.

MFA partout

Authentification multi-facteurs appliquée au fournisseur d'identité (Casdoor™/OIDC). TOTP, clés matérielles et passkeys pris en charge.

Posture de sécurité

Les actions critiques nécessitent une ré-authentification. Toujours.

Primebrick applique une posture de sécurité stricte : chaque action critique — changer un mot de passe utilisateur, modifier les permissions RBAC, altérer les paramètres de sécurité — nécessite un garde de sécurité in-app avec reconnexion admin et vérification MFA. Pas de réutilisation de session, pas d'élévation silencieuse. Cela suit l'authentification step-up NIST SP 800-63B et les exigences de gestion de session OWASP ASVS V3.4.

Garde de sécurité in-app

Les actions critiques déclenchent un modal in-app nécessitant des identifiants admin + MFA. Aucune action ne se poursuit sans vérification récente.

Authentification step-up

Conformément à NIST SP 800-63B : les opérations sensibles nécessitent un nouvel événement d'authentification, pas seulement une session existante.

Pas de réutilisation de session

Les tokens JWT/session existants sont insuffisants pour les actions critiques. Un nouveau défi MFA est toujours requis.

Conforme OWASP ASVS

Répond au OWASP Application Security Verification Standard V3.4 (gestion de session pour les transactions à forte valeur).

Conformité Sécurité

ISO 27001 et NIS2. Scanné, pas auto-déclaré.

Un scanner de conformité automatisé lit le code source de Primebrick à chaque build et mappe les contrôles de sécurité vers ISO 27001 Annexe A, NIS2 Article 21(2) et OWASP Top 10 — avec preuve fichier:ligne pour chaque contrôle. Pas de questionnaires manuels. Téléchargez le rapport complet en PDF.

ISO 27001 Annexe A

17 contrôles mappés à l'Annexe A (A.5, A.6, A.8) avec preuves : RBAC, audit trail, chiffrement, contrôle d'accès.

NIS2 Article 21(2)

Les 10 mesures de sécurité obligatoires couvertes : gestion d'incidents, continuité d'activité, sécurité de la chaîne d'approvisionnement.

OWASP Top 10

Injection, défaillances d'authentification, défaillances cryptographiques, mauvaise configuration — mappés à des patterns de code réels avec preuves.

Rapport PDF téléchargeable

Rapport de conformité complet généré en PDF à chaque build. Remettez-le à vos auditeurs ou équipe de conformité.

GDPR et CCPA

Privacy by design. Avec preuves.

Primebrick implémente les exigences GDPR et CCPA au niveau du code : isolation des données multi-tenant, soft-delete avec récupération, audit trails pour l'Article 30, minimisation des données via contrôle d'accès au niveau champ. Le scanner automatisé vérifie ces contrôles contre le code source réel.

GDPR Article 32

Sécurité du traitement : chiffrement en transit, isolation multi-tenant, audit trails. Vérifié par analyse de code.

GDPR Article 17

Droit à l'effacement : soft-delete avec colonne deleted_at et capacité de restauration. Les données sont récupérables.

CCPA §1798.150

Protection des données consommateurs : contrôles d'accès, audit trails et minimisation des données mappés au California Consumer Privacy Act.

Registres Article 30

Audit trail automatisé satisfait aux exigences GDPR Article 30 d'enregistrement du traitement. Chaque opération CRUD est journalisée.

Moins de boilerplate, plus de valeur.

Structure claire, règles de codage objectives, DX conçue pour la vitesse. Clonez, lancez, et vous êtes déjà dans un environnement de meilleures pratiques — CI/CD, linting, types, tests, observabilité.

  • Onboarding en heures, pas en semaines
  • Zéro discussions sur « comment on fait ici »
  • Stack moderne, typé, testé

Sélection logicielle sans risque.

Licence MIT, code ouvert et inspectable, déployez où vous décidez. Réduisez le time-to-market et la dette technique dès la minute zéro. Pas de vendor lock-in, pas de surprises contractuelles.

  • Usage commercial gratuit (MIT)
  • Hébergez où nécessaire : cloud ou on-prem
  • Standards vérifiables, pas des promesses

Open source. Même pour un usage commercial.

Primebrick v3 est publié sous licence MIT : vous pouvez utiliser, modifier, redistribuer et intégrer dans des produits commerciaux sans redevances. Le code est public sur GitHub®.

Construisez votre prochain backoffice avec les bonnes règles.

Clonez le repo, suivez le quick-start, et vous êtes en production avec une architecture dont vos futurs développeurs vous remercieront.

Lire l'architecture