Le chaudr-plateau Open Source Next.js pour le développement d'applications SaaS Enterprise.
Veuillez jouer le dépôt si vous voulez que nous continuions de développer et d'améliorer le kit de démarrage SaaS! ?
Ressources supplémentaires
Vidéo - Kit de démarrage SaaS de BoxyHQ: Votre chauffeur ultime conforme à l'entreprise Blog - Kit de démarrage SaaS prêt pour l'entreprise
Next.js Kit de démarrage SaaS vous permet d'économiser des mois de développement en vous démarrant par toutes les fonctionnalités qui sont les mêmes dans chaque produit, vous pouvez donc vous concentrer sur ce qui rend votre application unique.
Construit avec
Next.js Il s'agit d'un framework React qui fournit des fonctionnalités telles que le rendu côté serveur et la génération de sites statiques. Il est utilisé pour construire l'interface utilisateur de votre application. La configuration principale de next.js peut être trouvée dans next.config.js.
Tailwind CSS Il s'agit d'un framework CSS d'abord utilitaire pour la création rapide d'interfaces utilisateur personnalisées. Il est utilisé pour styliser l'application. La configuration de CSS à vent arrière peut être trouvée dans Postcss.config.js.
Postgres Il s'agit d'un système de base de données d'objet open source-Open Source. Il est utilisé pour stocker les données d'application. Le lien avec Postgres est probablement géré par Prisma.
React Il s'agit d'une bibliothèque JavaScript pour créer des interfaces utilisateur. Il est utilisé pour créer les éléments interactifs de votre application. Les composants React sont situés dans le répertoire des composants.
PRISMA Il s'agit d'une boîte à outils de base de données open source. Il est utilisé pour le cartographie relationnelle des objets, qui simplifie le processus d'écriture de requêtes de base de données. La configuration et le schéma PRISMA peuvent être trouvés dans le répertoire Prisma.
TypeScript Il s'agit d'un sur-ensemble dactylographié de JavaScript qui compile en JavaScript simple. Il est utilisé pour rendre le code plus robuste et maintenu. Les définitions et configurations de typeScript peuvent être trouvées dans des fichiers comme Next-env.d.ts et i18next.d.ts.
SAML Jackson (fournit SAML SSO, répertoire Sync) Il s'agit d'un service pour gérer SAML SSO (connexion unique). Il est utilisé pour permettre aux utilisateurs de se connecter avec un seul ID et un seul mot de passe à l'un des systèmes connexes IE (en utilisant un seul ensemble d'identification). L'implémentation de SAML Jackson est principalement située dans les fichiers associés à l'authentification.
SVIX (Fournit WebHook Orchestration) Il s'agit d'un service pour gérer WebHooks. Il est utilisé pour émettre des événements sur les opérations de CRUD utilisateur / équipe, qui peuvent ensuite être capturés et gérés par d'autres parties de l'application ou des services externes. L'intégration de SVIX est distribuée dans toute la base de code, principalement dans les zones où les opérations de création, de lecture, de mise à jour et de supprimer (CRUD) sont exécutées.
Retrapa (fournit un service de journaux d'audit) Il s'agit d'un service de journalisation d'audit et de visibilité des données. Il aide à suivre les activités des utilisateurs au sein de l'application IE (qui a fait quoi et quand dans l'application). L'utilisation de la récupération serait dispersée dans toute la base de code, probablement dans les fichiers où des actions importantes sont effectuées.
Stripe (fournit des paiements) Il s'agit d'un service pour gérer les paiements. Il est utilisé pour traiter les paiements pour la demande. L'intégration de Stripe se trouve probablement dans les fichiers associés à la facturation et aux abonnements.
Playwright (fournit des tests E2E) Il s'agit d'une bibliothèque Node.js pour automatiser les navigateurs. Il est utilisé pour exécuter des tests de bout en bout sur l'application. La configuration et les tests du dramaturge peuvent être trouvés dans le répertoire des tests.
Docker (fournit Docker Compose) Il s'agit d'une plate-forme pour le développement, l'expédition et l'exécution des applications. Il est utilisé pour conteneuriser l'application et ses dépendances. La configuration Docker peut être trouvée dans le dockerfile et docker-compose.yml.
NextAuth.js (fournit l'authentification) Il s'agit d'une solution d'authentification open source complète pour les applications Next.js. Il est utilisé pour gérer l'authentification et l'autorisation des utilisateurs. La configuration et les fournisseurs NextAuth.js peuvent être trouvés dans le fichier pages / api / auth / [... NextAuth] .ts.
Déploiement
Commencer
Veuillez suivre ces étapes simples pour obtenir une copie locale opérationnelle.
Pour faciliter l'installation des dépendances, nous offrons un docker-compose.yml avec un conteneur postgres.
docker-compose up -d
6. Configurer le schéma de base de données
npx prisma db push
7. Démarrez le serveur
Dans un environnement de développement:
npm run dev
8. Commencez le studio Prisma
Prisma Studio est un éditeur visuel des données de votre base de données.
npx prisma studio
9. Test
Nous utilisons le dramaturge pour exécuter des tests E2E. Ajoutez tous les tests à l'intérieur du dossier /tests .
Mettre à jour playwright.config.ts pour modifier la configuration du dramaturge.
Installer les dépendances du dramaturge
npm run playwright:update
Exécutez les tests E2E
npm run test:e2e
Remarque: le rapport de test HTML est généré dans le dossier report . Browsers actuellement pris en charge pour chromium d'exécution des tests et firefox
Plate-partage entièrement personnalisable hors de la boîte, voir les images ci-dessous ???
? Caractéristiques
Créer un compte
Connectez-vous avec un e-mail et un mot de passe
Connectez-vous avec Magic Link
Connectez-vous avec SAML SSO
Connectez-vous avec Google [Configuration de Google OAuth]
Connectez-vous avec GitHub [Création d'une application GitHub OAuth]
Sync de répertoire (SCIM)
Mettre à jour le compte
Créer une équipe
Supprimer l'équipe
Invitez les utilisateurs à l'équipe
Gérer les membres de l'équipe
Mettre à jour les paramètres de l'équipe
Webhooks et événements
Internationalisation
Journaux d'audit
Rôles et autorisations
Mode sombre
Notifications par e-mail
Tests E2E
Docker
Studio Prisma
Mettre à jour le rôle des membres
Événements de synchronisation du répertoire
Téléchargement d'avatar
SAML SSO
Journal d'audit
Webhook
Paiements
En-têtes de sécurité
➡️ À venir bientôt
Facturation et abonnements
Tests d'unité et d'intégration
Contributif
Merci d'avoir pris le temps de contribuer! Les contributions font de la communauté open source un endroit fantastique pour apprendre, inspirer et créer. Toutes les contributions que vous faites sont grandement appréciées.
Veuillez essayer de créer des rapports de bogues qui sont:
Reproductible. Incluez les étapes pour reproduire le problème.
Spécifique. Incluez autant de détails que possible: quelle version, quel environnement, etc.
Unique. Ne dupliquez pas les problèmes ouverts existants.
Parcouru un seul bug. Un bogue par rapport.
Guide de contribution
? Communauté
Discord (pour une discussion en direct avec la communauté open source et l'équipe BoxyHQ)
Twitter / LinkedIn (suivez-nous)
YouTube (regardez les événements communautaires et les tutoriels)
Problèmes de github (contributions, problèmes de rapport et idées de produits)