GithubHelp home page GithubHelp logo

next13-pm-app's Introduction

Next13 Project Management App Tutorial

Lessons

  • Lesson 01: Project Scaffold [2023-01-06]
  • Lesson 02 - Scaffold path aliases, app dir page grouping/routes and GlassPane component/layout [2023-01-11]
  • Lesson 03 - Declare reusable components (Button, Input, Card, Sidebar, SidebarLink) [2023-01-11]
  • Lesson 04 - Setup api fetcher, reusable AuthForm, typings around routes and api endpoints [2023-01-11]
  • Lesson 05 - Incorporate AuthForm in register and signin pages [2023-01-11]
  • Lesson 06 - Add several auth helpers (jwt.sign, jwt.verify, etc), declare register and signin api routes [2023-01-11]
  • Lesson 07 - Scaffold home page, setup Async Server Component (Greeting) and wire up Suspense to provide loading state for it [2023-01-12]
  • Lesson 08 - Scaffold ProjectCard and Task Card [2023-01-13]
  • Lesson 09 - Create CreateProject and CreateTask button, go over cache invalidation via router.refresh() and deploy [2023-01-13]

Notes

Lesson 01 Notes - Project Scaffolding

  • npx prisma format will auto generate required related fields in schema.prisma
  • npx prisma migrate dev syncs prisma client module with current schema.prisma
    • Required after making any change to schema.prisma

Lesson 02 Notes

  • GlassPane component will likely be refactored to be part of the RootLayout component declaration

Lesson 03 Notes

  • class-variance-authority (cva) - cool component to create reusable component variants
  • clsx - conditional className concatenation done right

Lesson 04 Notes

  • Implementing cool new pattern to get the power of enums without using enum type
export const FakeEnum = {
  Key1: 'value1'
  Key2: 'value2'
} as const

export type FakeEnumType =  typeof FakeEnum[keyof typeof FakeEnum]

Lesson 09

  • router.refresh() current approach to invalidate Server Page Component cache

next13-pm-app's People

Contributors

cesarnml avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.