Jump to content

Attention: This page is 9 days older than the English version and might be outdated. If you're a native speaker of this language and would like to contribute to the project, please consider updating this page to match the latest English version.

You can also view the English version of this page.

Struktura projektu

Wybierz paczk─Ö, aby zobaczy─ç struktur─Ö folder├│w nowo utworzonej z ni─ů aplikacji. Poni┼╝ej znajdziesz opis ka┼╝dego elementu.

  

prisma

Folder prisma zawiera plik schema.prisma, kt├│ry u┼╝ywany jest do konfiguracji po┼é─ůczenia z baz─ů danych i struktury tej bazy. Jest to tak┼╝e miejsce, w kt├│rym przechowywa─ç mo┼╝na pliki migracji i/lub skrypty ÔÇťseedowaniaÔÇŁ (je┼╝eli z nich korzystasz). Po wi─Öcej informacji, zobacz korzystanie z Prismy.

public

Folder public zawiera zasoby statyczne, kt├│re ÔÇťserwowaneÔÇŁ s─ů przez serwer webowy. Plik favicon.ico jest przyk┼éadem jednego z takich zasob├│w.

src/env

U┼╝ywany do walidacji zmiennych ┼Ťrodowiskowych i definiowania ich typ├│w - zobacz zmienne ┼Ťrodowiskowe.

src/pages

Folder pages zawiera wszystkie strony aplikacji Next.js. Plik index.tsx w g┼é├│wnym folderze zawieraj─ůcym folder /pages to strona g┼é├│wna twojej aplikacji. Plik _app.tsx dostarcza aplikacji odpowiednie ÔÇťprovideryÔÇŁ. Po wi─Öcej informacji, zobacz dokumentacj─Ö Next.jsÔćŚ.

src/pages/api

Folder api zawiera wszystkie API routeÔÇÖy aplikacji Next.js. Plik examples.ts zawiera przyk┼éad takiego routeÔÇÖa korzystaj─ůcego z funkcji Next.js API routeÔćŚ oraz z Prismy. Plik restricted.ts zawiera przyk┼éad routeÔÇÖa korzystaj─ůcego z funkcji Next.js API routeÔćŚ i jest on chroniony (ÔÇťauthenticatedÔÇŁ) poprzez NextAuth.jsÔćŚ.

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

Plik [...nextauth].ts jest slug routem u┼╝ywanym do uwierzytelniania (ÔÇťauthenticationÔÇŁ) poprzez NextAuth.js. Pomaga on przetwarza─ç zapytania o uwierzytelnianie. Po wi─Öcej informacji o kolejno NextAuth.js i slug routeÔÇÖach, zobacz korzystanie z NextAuth.js oraz dokumentacj─Ö dynamicznych routeÔÇÖ├│w Next.jsÔćŚ.

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

Plik [trpc].ts to punkt wej┼Ťcia dla API (tRPC). Pomaga on przetwarza─ç zapytania wykonane z tRPC. Po wi─Öcej informacji o kolejno tRPC i slug routeÔÇÖach, zobacz korzystanie z tRPC oraz dokumentacj─Ö dynamicznych routeÔÇÖ├│w Next.jsÔćŚ.

src/server

Folder server u┼╝ywany jest do stworzenia wyra┼║nego podzia┼éu mi─Ödzy kodem dzia┼éaj─ůcym na serwerze, a tym po stronie klienta.

src/server/auth.ts

Zawiera narz─Ödzia do uwierzytelniania, takie jak pobieranie sesji u┼╝ytkownika po stronie serwera. Po wi─Öcej informacji, zobacz korzystanie z NextAuth.js.

src/server/db.ts

Plik db.ts jest u┼╝ywany do tworzenia instancji klienta Prismy z globalnym zakresie. Po wi─Öcej informacji, zobacz korzystanie z Prismy oraz polecane korzystanie z Prismy wraz z Next.jsÔćŚ.

src/server/api

Folder api zawiera kod tRPC po stronie serwera.

src/server/api/routers

Folder routers zawiera wszystkie ÔÇťsub-routeryÔÇŁ tRPC.

src/server/api/routers/example.ts

Plik example.ts zawiera przyk┼éad routera tRPC wykorzystuj─ůcego funkcj─Ö pomocnicz─ů publicProcedure do zaprezentowania, jak stworzy─ç publiczny route tRPC.

Zale┼╝nie od wybranych paczek, router ten zawiera wi─Öcej lub mniej routeÔÇÖ├│w, aby najlepiej zaprezentowa─ç jego spos├│b u┼╝ycia.

src/server/api/trpc.ts

Plik trpc.ts jest głównym plikiem konfiguracyjnym dla tRPC po stronie serwera. W pliku tym:

  1. Definiujemy kontekst u┼╝ywany w zapytaniach tRPC. Po wi─Öcej informacji, zobacz korzystanie z tRPC.
  2. Eksportujemy funkcje pomocnicze helper├│w. Po wi─Öcej informacji, zobacz korzystanie z tRPC.

src/server/api/root.ts

Plik root.ts jest u┼╝ywany do scalenia router├│w tRPC i eksportowania ich jako pojedynczego routera, a tak┼╝e eksportowania jego definicji typ├│w. Po wi─Öcej informacji, zobacz korzystanie z tRPC.

src/styles

Folder styles zawiera globalne style aplikacji.

src/types

Folder types jest u┼╝ywany do przechowywania typ├│w oraz ich deklaracji.

src/types/next-auth.d.ts

Plik next-auth.d.ts jest u┼╝ywany do poszerzenia domy┼Ťlnego typu sesji NextAuth.js. Dodaje on ID u┼╝ytkownika. Po wi─Öcej informacji, zobacz korzystanie z NextAuth.js.

src/utils

Folder utils jest u┼╝ywany do przechowywania cz─Östo powielanych funkcji pomocniczych.

src/utils/api.ts

Plik api.ts to plik wej┼Ťcia tRPC od strony klienta. Po wi─Öcej informacji, zobacz korzystanie z tRPC.

.env

Plik .env jest u┼╝ywany do przechowywania zmiennych ┼Ťrodowiskowych. Po wi─Öcej informacji, zobacz Zmienne ┼Ürodowiskowe. Plik ten nie powinien by─ç commitowany do historii gita.

.env.example

Plik .env.example pokazuje przyk┼éadowe zmienne ┼Ťrodowiskowe bazuj─ůc na wybranych bibliotekach. Plik ten powinien by─ç commitowany do historii gita.

.eslintrc.json

Plik .eslintrc.json jest u┼╝ywany do konfigurowania ESLinta. Po wi─Öcej informacji, zobacz dokumentacj─Ö ESLintaÔćŚ.

next-env.d.ts

Plik next-env.d.ts gwarantuje korzystanie z typ├│w Next.jsa przez kompilator TypeScripta. **Nie powiniene┼Ť go usuwa─ç ani modyfikowa─ç, poniewa┼╝ mo┼╝e on zmieni─ç si─Ö w ka┼╝dym momencie. Po wi─Öcej informacji, zobacz dokumentacj─Ö Next.jsÔćŚ.

next.config.mjs

Plik next.config.mjs jest u┼╝ywany do konfigurowania Next.js. Po wi─Öcej informacji, zobacz dokumentacj─Ö Next.jsÔćŚ. Uwaga: Rozszerzenie .mjs pozwala korzysta─ç z import├│w ESM.

postcss.config.cjs

Plik postcss.config.cjs jest u┼╝ywany przez Tailwind PostCSS. Po wi─Öcej informacji, zobacz dokumentacj─Ö Tailwind PostCSSÔćŚ.

prettier.config.cjs

Plik prettier.config.cjs jest u┼╝ywany do konfigurowania Prettiera. Do┼é─ůcza on plugin prettier-plugin-tailwindcss formatuj─ůcy klasy CSS Tailwinda. Po wi─Öcej informacji, zobacz post na blogu Tailwind CSSÔćŚ.

tsconfig.json

Plik tsconfig.json jest u┼╝ywany do konfigurowania TypeScripta. Niekt├│re ustawienia zosta┼éy w┼é─ůczone (takie jak strict mode), aby zapewni─ç najlepsze u┼╝ycie TypeScripta do Create T3 App i jej bibliotek. Po wi─Öcej informacji, zobacz dokumentacj─Ö TypeScriptaÔćŚ albo korzystanie z TypeScripta.


Recent Contributors To This Page