Build a Modern GraphQL API with Prisma
Have you always found talking to the database to be the most frustrating part of building an API? Do you grind your teeth over db calls that return
any? Are you getting ready to bootstrap a new project and trying to find the right ORM?
If you answered yes to any of those questions—or if you’re just curious about Prisma and want to put it through its paces—then please check out the new course I created for Level Up Tutorials: “Modern GraphQL Databases with Prisma”. We’ll build a file-management API together, using Prisma, GraphQL, and TypeScript to interact with a PostgreSQL database and Amazon S3-compatible storage bucket.
Coming in at over 7 hours of course material, “Modern GraphQL Databases with Prisma” will take you on an in-depth tour of Prisma, exploring its basic and advanced features. We’ll bootstrap a GraphQL API without using Apollo server and write resolvers that use Prisma’s type-safe, API-specific client to make database calls. For file storage, I’ll show you how to build a storage system on your dev machine that mimics the Amazon S3 API. It’s pretty slick! You can even wire it up to an S3 bucket later on your own if you want.
Here’s an abbreviated list of things you’ll learn about Prisma during the course:
- How to define your database with Prisma’s schema language
- Basic CRUD operations with Prisma
- Fetching deeply nested relational data
- Seeding test data with Prisma
- Automatically generating SQL migrations when your schema changes
- Crafting large database transactions with Prisma
- Writing raw SQL queries that still return typed data
- Interacting with JSON data in a relational database
- Writing middleware for Prisma calls
While the course is not completely exhaustive, we cover a lot of Prisma’s features. I feel confident that after you’re finished building this app you’ll have sufficient mastery of Prisma to build anything else you can imagine, with occasional reference to Prisma’s excellent documentation. After all, you wouldn’t be taking this course if you didn’t want to create something!
And of course, you can always learn more about web development by subscribing to my newsletter:
I’m very grateful to Level Up Tutorials for inviting me to create this course for them. They have tons of other great courses on all kinds of web development topics, so I urge you to check them out as well. You could even combine the knowledge you get from other courses with what you’ll learn in “Modern GraphQL Databases with Prisma” to create something even more powerful and world-changing. Who knows?