Jump to content

Mappestruktur

Velg pakkene dine for å se mappestrukturen til en app med disse valgene. Lenger ned finner du en beskrivelse av hver oppføring.

  

prisma

prisma-mappen inneholder schema.prisma-filen som brukes til å konfigurere databasetilkoblingen og databaseskjemaet. Det er også stedet for å lagre migreringsfiler og/eller seedscript, dersom de brukes. Se Bruk av Prisma for mer informasjon.

public

public-mappen inneholder statiske ressurser som betjenes av webserveren. favicon.ico-filen er et eksempel på en statisk ressurs.

src/env

Brukes for validering av miljøvariabler og typedefinisjoner - se Miljøvariabler.

src/pages

pages-mappen inneholder alle sidene til Next.js-applikasjonen. index.tsx-filen i rotkatalogen til /pages er hjemmesiden til applikasjonen. Filen _app.tsx brukes til å pakke applikasjonen sammen med providers. Se Next.js-dokumentasjon for mer informasjon.

src/pages/api

Mappen api inneholder alle API-rutene til Next.js-applikasjonen. Filen examples.ts inneholder et eksempel på en rute som bruker Next.js API-rute-funksjonaliteten sammen med Prisma. restricted.ts-filen inneholder et eksempel på en rute som bruker Next.js API-rute-funksjonaliteten, og er beskyttet av NextAuth.js.

src/pages/api/auth/[...nextauth].ts

[...nextauth].ts-filen håndterer autentiseringslug ruter for NextAuth.js. Den brukes til å håndtere autentiseringsforespørsler. Se Bruk av NextAuth.js for mer informasjon om NextAuth.js, og Next.js Dynamic Routes Docs for informasjon på catch-all/slug-ruter.

src/pages/api/trpc/[trpc].ts

[trpc].ts-filen er inngangspunktet for tRPC-APIet. Den brukes til å håndtere tRPC-forespørsler. Se Bruk av tRPC for mer informasjon om denne filen, og Next.js Dynamic Routes Docs for informasjon om catch-all/slug-ruter.

src/server

server-mappen brukes til å tydelig skille serverside-kode fra klientside-kode.

src/server/auth.ts

Hovedinngangspunktet for autentiseringslogikk på serversiden. Her setter vi opp NextAuth.js konfigurasjonsalternativer, utfører modulforstørrelse samt gir utvikleropplevelsesverktøy for autentisering som for eksempel å hente brukerens økt på serversiden. Se Bruk av NextAuth.js for mer informasjon.

src/server/db.ts

db.ts filen brukes til å instansiere Prisma-klienten i globalt omfang. Se Bruk av Prisma og beste fremgangsmåter for bruk av Prisma med Next.js for mer informasjon.

src/server/api

api-mappen inneholder tRPC serverside-koden.

src/server/api/routers

routers-mappen inneholder alle dine tRPC-underrutere.

src/server/api/routers/example.ts

example.ts-filen er et eksempel på en tRPC-ruter som bruker publicProcedure-hjelperen for å demonstrere hvordan du oppretter en offentlig tRPC-rute.

Basert på dine valgte pakker inneholder denne ruteren flere eller færre ruter for best mulig å demonstrere bruken til dine behov.

src/server/api/trpc.ts

trpc.ts-filen er hovedkonfigurasjonsfilen for din tRPC-backend. Her inne vi:

  1. Definerer kontekst brukt i tRPC-forespørsler. Se Bruk av tRPC for mer informasjon.
  2. Eksporter prosedyre hjelpere. Se Bruk av tRPC for mer informasjon.

src/server/api/root.ts

root.ts-filen brukes til å slå sammen tRPC-rutere og eksportere dem som en enkelt ruter, så vel som ruterens typedefinisjon. Se Bruk av tRPC for mer informasjon.

src/styles

stiler-mappen inneholder det globale stilsettet til applikasjonen.

src/utils

utils-mappen brukes til å lagre ofte gjenbrukte verktøyfunksjoner.

src/utils/api.ts

api.ts-filen er frontendinngangspunktet til tRPC. Se Bruk av tRPC for mer informasjon.

.env

.env-filen brukes til å lagre miljøvariabler. Se Miljøvariabler for mer informasjon. Denne filen skal ikke commites til git-historikk.

.env.example

.env.example-filen viser noen eksempler på miljøvariabler basert på valgte bibliotek. Denne filen skal commites til git-historikk.

.eslintrc.json

.eslintrc.json-filen brukes til å konfigurere ESLint. Se ESLint Docs for mer informasjon.

next-env.d.ts

next-env.d.ts-filen sikrer at Next.js-typer blir plukket opp av TypeScript-kompilatoren. Du bør ikke fjerne den eller redigere den, da den kan endres når som helst. Se Next.js Docs for mer informasjon.

next.config.mjs

next.config.mjs-filen brukes til å konfigurere Next.js. Se Next.js Docs for mer informasjon. Merk: .mjs-utvidelsen brukes for å tillate ESM-import.

postcss.config.cjs

postcss.config.cjs-filen er for bruk av Tailwind PostCSS. Se Tailwind PostCSS Docs for mer informasjon.

prettier.config.mjs

prettier.config.mjs-filen brukes til å konfigurere Prettier slik at prettier-plugin-tailwindcss inkluderes for formatering av Tailwind CSS-klasser. Se Tailwind CSS-blogginnlegget for mer informasjon.

tsconfig.json

Filen tsconfig.json brukes til å konfigurere TypeScript. Noen ikke-standardinnstillinger, som for eksempel strict mode, har blitt aktivert for å sikre best mulig bruk av TypeScript i create-t3-app og tilhørende biblioteker. Se TypeScript Docs eller TypeScript Usage for mer informasjon.