Commencer ici

Personnaliser votre produit

Définissez l'identité, les langues, le style visuel, le thème, les informations légales et les systèmes optionnels avant vos fonctions métier.

À la fin de cette page, le starter portera le nom, les URL, les langues et le style de votre produit, et chaque système optionnel aura une décision explicite : conserver, adapter ou supprimer. Faites ces choix avant de modifier des écrans précis ; l'identité et le périmètre influencent les URL, les e-mails, les textes légaux, l'analytique, la facturation et la console d'administration.

Ce qui est livré et ce que vous choisissez

DomaineComportement livréVotre décision
Identitésaas.config.json suit nom, slug, assistance et URL de docsLancer le customizer et revoir le diff
AssistanceL’email d’assistance est une valeur produit suivieLe définir avant lancement ou choisir un autre canal
LanguesAnglais, chinois, espagnol, français et japonais sont disponibles ; les préfixes sont as-neededChoisir la langue par défaut, les langues actives et la détection du navigateur
Style visuelstudio est le preset de compilation partagé par le web et l'adminLe garder ou choisir en code glass, soft, editorial ou brutalist
Mode de couleurL'app client utilise system par défaut via l'environnementChoisir system, light ou dark ; l'admin n'a pas encore de sélecteur de mode
Pages légalesUn brouillon visible décrit les flux par défaut du starterCompléter l'identité et les politiques, puis obtenir une revue juridique
Systèmes optionnelsFacturation, stockage, e-mail, Slack, analytique, parrainage, tâches et réservations ont du code ou des adaptateursConfigurer ce qui reste, ou supprimer ensemble UI, validation, routes et documentation

Point de départ recommandé

Utilisez un vrai nom, conservez le mode system et le preset studio jusqu'à stabiliser l'architecture de l'information, et n'activez que les langues que l'équipe sait maintenir. Gardez analytique, publicité, parrainage et fonctions de démonstration désactivés tant qu'il n'existe pas de besoin, de texte utilisateur et de processus opérationnel.

Les alternatives sont possibles, mais ont un coût. Plus de langues élargissent l'audience et l'obligation de traduction. Un preset affirmé différencie le produit, mais exige une revue complète clair/sombre et admin. Activer une intégration évite de la reconstruire, mais ajoute identifiants, pannes, déclarations de confidentialité et support.

Définir l'identité et les langues

Lancez d’abord le customizer suivi dans Git :

pnpm customize

pnpm customize -- --name "Acme Cloud" --slug acme-cloud --preset glass --locales fr,en --default-locale fr --support-email support@example.com --docs-url https://docs.example.com --yes

La commande valide et écrit atomiquement saas.config.json, puis synchronise uniquement les valeurs publiques des profils ignorés existants sans toucher aux secrets. --dry-run affiche le candidat et --no-env évite la synchronisation. Le gate de production refuse les overrides qui contredisent l’identité suivie.

Choisir un preset visuel

Choisissez le preset avec le customizer ou modifiez la configuration suivie :

{ "appearance": { "preset": "glass" } }

src/config/style.ts dérive sa valeur typée de saas.config.json. Web et admin partagent le preset ; c’est un choix de build, pas un sélecteur utilisateur.

Finaliser l'identité légale

Complétez LegalData dans src/config/legal.ts : raison sociale et adresse, contacts confidentialité et juridique, loi applicable, date d'effet et sous-traitants réellement utilisés. Traitez chaque texte entre crochets. Tant qu'un champ d'identité requis manque, LegalConfig.isConfigured reste false et les pages de confidentialité et conditions affichent un avertissement de brouillon non revu.

Le texte livré est une trame de rédaction, pas un conseil juridique ni une politique terminée. Retirez les prestataires inutilisés, ajoutez ceux qui reçoivent des données personnelles, alignez la conservation sur l'effacement des comptes et faites valider le résultat par un professionnel qualifié.

Définir le périmètre du produit

Consignez une décision pour chaque système optionnel :

  1. Conserver : configurer identifiants, textes, supervision, gestion des échecs et responsable.
  2. Adapter : changer la politique ou le fournisseur derrière la frontière de service existante, puis mettre à jour tests et guides.
  3. Supprimer : retirer routes, UI, validation de production, jobs et documentation dans le même changement. Un identifiant vide n'est pas une décision produit.

Pour les systèmes conservés, poursuivez avec Plans et droits, Facturation Stripe, Téléversement de fichiers et Déploiement et sécurité.

Vérifier avant les fonctions métier

pnpm lint
pnpm test:run
pnpm build:web
pnpm build:admin

Vérifiez que la langue par défaut n'a pas de préfixe, que chaque autre langue active répond, que le sélecteur n'affiche aucune langue désactivée, que les liens de documentation et de support tiennent leur promesse, que les deux apps partagent le preset et que le web reste lisible en clair et sombre. Ouvrez confidentialité et conditions : ne publiez pas tant que l'avertissement de brouillon ou des marqueurs de politique subsistent.

Ce qui n'est pas terminé pour vous

Le starter ne fournit ni configurateur de marque, ni sélecteur de preset à l'exécution, ni mode sombre admin, ni contact d'assistance par environnement, ni politique juridique validée, ni décision sur les systèmes optionnels de votre produit. Ces choix appartiennent volontairement à l'équipe qui l'adopte.

Si vous activez mesure d’audience ou publicité, prenez cette décision avec Analytique et consentement, pas comme une simple variable d’environnement isolée.

Instantané des sources

Vérifié avec le commit 2a1a04a du starter :

Personnaliser votre produit · Sushi SaaS