Заняття 1
- Структура Next.js проєкту
- Маршрутизація у вебзастосунках
- Створення сторінок
- Home Page
- Notes Page
- About Page
- Profile Page
- Layout
- header, children, footer
- Components
- Link
Заняття 2
- axios api
- https://next-docs-api.onrender.com
- lib/api.ts
- SSR
- 'use client'
- CSR
- error & loading
- Dynamic routes
- Global error & loading
- Dynamic client component
- React Query
- @tanstack/react-query
- TanStackProvider
- prefetchQuery
- HydrationBoundary
- useParams
- useQuery
- refetchOnMount
Заняття 1
- Nested routes
- Not-found route
- Catch-all routes
- filter by categoryId
- filter by name
- useRouter
Заняття 2
- Grouped routes
- Parallel routes
- @sidebar
- default.tsx
- Interception route
- @modal
- empty default
- modal in RootLayout
- close modal with router.back
- Redirect
Заняття 1
- metadata
- async generateMetadata
- Open Graph & Twitter
- next/image
- width і height
- next.config.ts
- next/font
- Performance
- Cache-Control
- next.config.ts
Заняття 2
- create note
- page
- sidebar
- form
- api
- zustand
- store
- draft
- initialDraft
- persist
Заняття 1
- Next Server
- Route Handler
- instance axios
- create all Handlers
- update all requests
- Auth
- instance axios
- withCredentials
- sign-up
- Header Links
- sign-up/page
- POST register
- register Route Handler
- cookies in Route Handler
- npm i cookie
- get setCookie
- parse(cookieStr)
- create cookie options
- cookieStore.set
- add register(formValues) in form
- sign-in
- sign-up/page
- POST login
- login Route Handler
- cookies in Route Handler
- add login(formValues) in form
- AuthStore
- create store
- checkSession client
- checkSession Route Handler
- cookieStore.get
- checkSession client
- silent authentication in Route Handler
- GET getMe
- getMe Route Handler
- AuthProvider
- add AuthProvider in RootLayout
- create AuthNavigation
- POST logout
- logout Route Handler
- cookieStore.delete
- add in handleLogout
- add setUser in sign-in & sign-up pages
Заняття 2
- middleware
- private routes
- public routes
- public layout refresh
- private requests