Structure des dossiers (Pages)
Veuillez sélectionner vos packages pour voir la structure des dossiers d’une application nouvellement créée avec ces sélections. Plus bas, vous trouverez une description de chaque entrée.
prisma
Le dossier prisma
contient le fichier schema.prisma
qui est utilisé pour configurer la connexion à la base de données et le schéma de la base de données. C’est également l’emplacement où stocker les fichiers de migration et/ou les scripts de départ, s’ils sont utilisés. Voir Utilisation de Prisma pour plus d’informations.
public
Le dossier “public” contient des fichiers statiques qui sont servis par le serveur Web. Le fichier favicon.ico
en est un exemple.
src/env
Utilisé pour la validation des variables d’environnement et les définitions de types - voir Variables d’environnement.
src/pages
Le dossier pages
contient toutes les pages de l’application Next.js. Le fichier index.tsx
dans le répertoire racine de /pages
est la page d’accueil de l’application. Le fichier _app.tsx
est utilisé pour envelopper l’application avec des fournisseurs. Voir Documentation Next.js↗ pour plus d’informations.
src/pages/api
Le dossier api
contient toutes les routes API de l’application Next.js. Le fichier examples.ts
(avec Prisma) contient un exemple de route qui utilise la fonctionnalité Next.js API route↗ avec Prisma. Le fichier restricted.ts
(avec Next-Auth) contient un exemple de route qui utilise la fonctionnalité Next.js API route↗ et est protégé par NextAuth.js↗.
src/pages/api/auth/[...nextauth].ts
Le fichier [...nextauth].ts
est la route d’authentification NextAuth.js. Il est utilisé pour gérer les demandes d’authentification. Voir utilisation de NextAuth.js pour plus d’informations sur NextAuth.js, et la documentation Next.js sur les routes dynamiques↗ pour plus d’informations sur les routes fourre-tout / slug.
src/pages/api/trpc/[trpc].ts
Le fichier [trpc].ts
est le point d’entrée de l’API tRPC. Il est utilisé pour gérer les requêtes tRPC. Voir utilisation de tRPC pour plus d’informations sur ce fichier, et la documentation Next.js sur les routes dynamiques↗ pour plus d’informations sur les routes fourre-tout / slug.
src/server
Le dossier server
est utilisé pour séparer clairement le code côté serveur du code côté client.
src/server/auth.ts
Contient des utilitaires d’authentification tels que la récupération de la session de l’utilisateur côté serveur. Voir utilisation de NextAuth.js pour plus d’informations.
src/server/db.ts
Le fichier db.ts
est utilisé pour instancier le client Prisma au niveau global. Voir Utilisation de Prisma et meilleures pratiques pour utiliser Prisma avec Next.js↗ pour plus d’informations.
src/server/api
Le dossier api
contient le code côté serveur de tRPC.
src/server/api/routers
Le dossier routers
contient tous vos sous-routeurs tRPC.
src/server/api/routers/example.ts
Le fichier example.ts
est un exemple de routeur tRPC utilisant le helper publicProcedure
pour montrer comment créer une route tRPC publique.
En fonction des packages choisis, ce routeur contient plus ou moins de routes pour démontrer au mieux l’utilisation à vos besoins.
src/server/api/trpc.ts
Le fichier trpc.ts
est le fichier de configuration principal de votre back-end tRPC. Ici, vous trouverez:
- La définissons du contexte utilisé dans les requêtes tRPC. Voir utilisation de tRPC pour plus d’informations.
- Le helper de procédure d’exportation. Voir utilisation de tRPC pour plus d’informations.
src/server/api/root.ts
Le fichier root.ts
est utilisé pour fusionner les routeurs tRPC et les exporter en tant que routeur unique, ainsi que la définition du type de routeur. Voir utilisation du tRPC pour plus d’informations.
src/styles
Le dossier styles
contient les styles globaux de l’application.
src/types
Le dossier types
est utilisé pour stocker les types réutilisés ou les déclarations de type.
src/types/next-auth.d.ts
Le fichier next-auth.d.ts
est utilisé pour étendre le type de session par défaut NextAuth afin d’inclure l’ID utilisateur. Voir utilisation de NextAuth.js pour plus d’informations.
src/utils
Le dossier utils
est utilisé pour stocker les fonctions utilitaires couramment réutilisées.
src/utils/api.ts
Le fichier api.ts
est le point d’entrée frontal de tRPC. Voir utilisation de tRPC pour plus d’informations.
.env
Le fichier .env
est utilisé pour stocker les variables d’environnement. Voir Variables d’environnement pour plus d’informations. Ce fichier ne doit pas être commité dans l’historique de git.
.env.example
Le fichier .env.example
montre des exemples de variables d’environnement basées sur les librairies choisies. Ce fichier doit être commité dans l’historique de git.
.eslintrc.cjs
Le fichier .eslintrc.cjs
est utilisé pour configurer ESLint. Voir la documentation de ESLint↗ pour plus d’informations.
next-env.d.ts
Le fichier next-env.d.ts
garantit que les types Next.js sont récupérés par le compilateur TypeScript. Vous ne devez pas le supprimer ou le modifier car il peut changer à tout moment. Voir la documentation de Next.js↗ pour plus informations.
next.config.mjs
Le fichier next.config.mjs
est utilisé pour configurer Next.js. Voir la documentation de Next.js↗ pour plus d’informations. Remarque : L’extension .mjs est utilisée pour autoriser les importations ESM.
postcss.config.js
Le fichier postcss.config.js
est utilisé pour l’utilisation de Tailwind PostCSS. Voir la documentation de Tailwind PostCSS↗ pour plus d’informations.
prettier.config.mjs
Le fichier prettier.config.mjs
est utilisé pour configurer Prettier afin d’inclure le prettier-plugin-tailwindcss pour le formatage des classes CSS Tailwind. Consultez l’article de blog Tailwind CSS↗ pour plus d’informations.
tsconfig.json
Le fichier tsconfig.json
est utilisé pour configurer TypeScript. Certaines valeurs autres que celles par défaut, telles que le strict mode
, ont été activées pour garantir la meilleure utilisation de TypeScript pour Create T3 App et ses librairies. Voir la documentation de TypeScript↗ ou Utilisation de TypeScript pour plus d’informations.