Qu'est-ce que Fraza
Le problème que Fraza résout, ce qu'il fournit sans écrire une ligne de code, ses modules et ce qu'il ne fait pas.
Fraza est un starter kit Next.js avec un back-office modulaire, conçu au Québec.
Le problème
Un projet web d'entreprise refait presque toujours le même travail avant d'écrire sa première ligne utile. Des comptes et une page de connexion. Des rôles et des permissions. Une interface d'administration. L'envoi de courriels, le téléversement de fichiers, les paiements, la mise en production. Rien de tout cela n'est propre au métier, et tout est réécrit à chaque projet.
Fraza fournit ce socle. C'est un ensemble de paquets npm qui s'installent dans un projet Next.js ordinaire, dont le paquet principal est @fraza/core. Le projet reste le vôtre, avec son dépôt, son package.json et ses routes. Fraza y ajoute une base et des points d'extension.

L'écran ci-dessus vient d'une instance de démonstration. La barre latérale et les widgets ne sont écrits nulle part : ils viennent des modules installés, qui se déclarent au démarrage.
Ce qu'on obtient sans écrire une ligne
Une installation neuve, avant toute personnalisation, donne déjà ceci.
| Contenu | |
|---|---|
| Authentification | Inscription, connexion, mot de passe oublié, réinitialisation, vérification d'adresse, configuration de compte après invitation, déconnexion. Sept routes servies par une seule page. |
| Administration | Tableau de bord et widgets, gestion des utilisateurs et des invitations, rôles et permissions, page de profil avec sessions et apparence, mode sombre. |
| Site public | Une route qui sert le contenu à la racine du domaine, et un système de templates pour l'envelopper. |
| Base de données | Le schéma s'installe par une commande, fraza-db init, qui crée les tables du core et celles de chaque module activé. |
| Services | Courriel, stockage de fichiers, paiements, génération de PDF, tâches planifiées, chiffrement de secrets, notifications. Chacun s'active par des variables d'environnement, aucun n'est obligatoire. |
| Outillage | Cinq commandes pour la base, les modules, le token du registre, le diagnostic et la mise à jour. |
Ce qui reste à écrire, c'est le métier.
Les modules
Un module est une fonctionnalité complète qu'on ajoute en l'installant : ses tables, ses écrans d'administration, ses permissions et ses pages. Il n'y a rien à câbler à la main. Un projet n'installe que les modules dont il a besoin.
| Module | Ce qu'il apporte | Offre |
|---|---|---|
| Pages | Pages de contenu hiérarchiques, éditées par blocs, rendues à la racine du site. | Gratuit |
| Posts | Types de contenu répétés (articles, réalisations, équipe), avec catégories et relations. | Gratuit |
| Médias | Médiathèque partagée, optimisation des images. | Gratuit |
| Formulaires | Constructeur de formulaires, réception des soumissions, notifications par courriel. | Gratuit |
| Rendez-vous | Agenda, types de rendez-vous, prise de rendez-vous en ligne, rappels. | Pro |
| Facturation | Clients, factures avec TPS et TVQ, paiement en ligne, factures récurrentes, rappels. | Pro |
| Fichiers | Navigateur de dossiers, partage par lien, dépôts externes, versions, corbeille. | Pro |
Le core et les modules gratuits, publiés sous @fraza/, relèvent de la licence MIT, au sein de Fraza Libre. Les modules Facturation, Rendez-vous et Fichiers, publiés sous @fraza-pro/, sont distribués sous la licence Fraza Pro : une licence par projet en production, renouvelée chaque année, qui comprend les mises à jour, la conformité et le support. Voir Licence et propriété.
Ce que Fraza n'est pas
Ce n'est pas un framework. Next.js reste le framework. Fraza est une dépendance de votre application, pas un moule dans lequel elle entre.
Ce n'est pas un constructeur de site sans code. L'admin permet d'éditer du contenu et de gérer l'activité, pas de dessiner une application. Les fonctionnalités s'écrivent en JavaScript, dans le projet ou dans un module.
Ce n'est pas seulement un CMS, même si le module Pages en fournit un. Le contenu éditorial est un usage parmi d'autres, au même titre que la facturation ou la gestion de fichiers.
Situer par rapport à ce qu'on connaît
| Outil | Différence |
|---|---|
| WordPress | Fraza n'a ni thèmes ni greffons à installer depuis une place de marché. Ce qu'il ajoute, ce sont des paquets npm que vous contrôlez, dans un projet que vous compilez. |
| Strapi, Directus, Payload | Ces outils sont d'abord des CMS auxquels on branche une interface. Fraza est d'abord une application, à laquelle on ajoute du contenu si le projet en a besoin. |
| Un projet Next.js nu | C'est la comparaison la plus juste. Fraza, c'est ce projet, plus l'authentification, l'admin, les rôles et les services, sans les écrire. |
L'accès
Les paquets ne sont pas publiés sur npm public, mais sur le registre https://registry.fraza.ca/. Le core, @fraza/start et les modules gratuits, sous le scope @fraza, s'installent sans compte. Les modules Pro vivent sous le scope @fraza-pro, que le registre ne sert qu'avec les identifiants délivrés avec la licence. La configuration du registre est décrite dans Installation.
Étape suivante
Les concepts pose le vocabulaire et le modèle mental, avant toute installation.
