Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New Lesson: Prisma ORM #27925

Open
2 tasks
01zulfi opened this issue May 5, 2024 · 0 comments
Open
2 tasks

New Lesson: Prisma ORM #27925

01zulfi opened this issue May 5, 2024 · 0 comments
Assignees
Labels
Project Node Revamp Issues/PRs related to the Node Revamp project

Comments

@01zulfi
Copy link
Member

01zulfi commented May 5, 2024

Lesson: Prisma ORM

Lesson overview

Lesson on what are ORMs and introduce Prisma.

Lesson outline

The following items define the scope of the lesson. The lesson outline is flexible; you can improve, expand, and omit items whilst writing lesson content (make sure the pull request description mentions that).

  • Explain the challenges that learners might face when using raw sql in their codebase. these include:
    • altering a table after that table has been populated with data is a hassle
    • there's no place inside the codebase that sufficiently describes tables, columns, and their data types. you have to login into the db to get that data
  • Introduce the concept of ORMs to the learners: it can solve all of the above and more!
  • Introduce Prisma and why we've chosen to cover it in the curriculum
  • Mention that Prisma has A LOT of features but we'll only be using a small subset of features available:
    • Prisma Schema definition: explain what a Schema is with an example. Additionally, mention this is the Model part of MVC architecture
    • Querying with Prisma client: learners can use the prisma library to query the DB; it has handy functions for common operations like filtering & sorting. Mention that Prisma allows raw queries as well in case the learner needs it
    • Basic of migration: explain what a migration is and a small description on how Prisma handles it (i.e. creates a migration folder to track 'em)
  • Link Prisma's getting started guide. Tell learners this guide has almost everything they'll need for the upcoming projects. Link Prisma's data migration guide in case they need to run migration on existing data. Encourage learners to explore the documentation.

Acceptance criteria

If the requirements here are not met, the work effort is not complete.

  • Lesson conforms to the outline above (unless outline has been modified).
  • Lesson follows our Layout Style Guide.

Additional information

Get the lesson template

Download the lesson template using the following command (replace lesson_name with the actual lesson name):

curl -o <lesson_name>.md https://raw.githubusercontent.com/TheOdinProject/curriculum/main/templates/lesson-template.md 
@01zulfi 01zulfi transferred this issue from TheOdinProject/top-meta May 5, 2024
@01zulfi 01zulfi added this to the Node Revamp: Milestone # 1 milestone May 5, 2024
@01zulfi 01zulfi added the Project Node Revamp Issues/PRs related to the Node Revamp project label May 5, 2024
@01zulfi 01zulfi self-assigned this May 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Project Node Revamp Issues/PRs related to the Node Revamp project
Projects
Status: Todo
Development

No branches or pull requests

1 participant