
Gain confidence applying Next.js, GraphQL, and Redis skills to real projects by exploring how to use technologies together and practice solving practical problems.
Subscribe to LLM services like ChatGPT or Claude to boost learning and productivity, and leverage Cursor AI for developers as you begin the course.
Install the essential course tools, focusing on Docker and Node.js. Choose between Docker Desktop or Docker Engine, and add other tools as needed.
Clone the ludgi-nextjs repository, install dependencies with pnpm, and run the dev server to boot the project.
Discover how SWC accelerates bundling and TypeScript support, and how Next.js with Express.js enables flexible low-level tasks like socket programming and WebSocket handling for scalable server-side rendering.
Start Redis and RabbitMQ with Docker Compose, set a Redis password according to the README, update the environment variables, then install dependencies with pnpm and run the dev server.
Prisma connects your database and application to read, write, and update data without complex SQL, speeds development, improves type safety with TypeScript, and streamlines domain management.
Navigate to the specified path and run docker compose up to start the PostgreSQL container from the docker-compose.yml. Then open Docker Desktop to verify the container is running.
Install project packages, connect Prisma to PostgreSQL, run migrations, and verify integration with Prisma Studio, while ensuring environment variables and RabbitMQ and Redis servers via Docker are running.
Insert dummy data with Prisma by creating users plus their profile and posts, hash passwords, and verify results in Prisma Studio; the next lecture explores Prisma examples and CRUD.
Learn how to perform the create operation with Prisma using the createUser resolver, including automatic rollback guarantees for multi-record mutations and guidance on manual transactions in the usage screen.
Learn the Prisma read operation by demonstrating findMany to fetch multiple users, as shown in the getUsersWithPosts example and linked usage page.
Learn the Prisma delete flow by removing a user’s posts, then their profile data, and finally the user record, all without cascade, with a clear view on the usage page.
Modify the prisma schema to add and revert the comment model, apply changes with migrate dev or db push, verify updates in prisma studio, and note production cautions.
Explore how GraphQL uses a single endpoint to solve over-fetching and under-fetching, with schemas that auto-generate documentation, and how field selection, resolvers, and code generators boost type safety with Next.js.
organizes a schema-first GraphQL setup with SDL, resolvers, and type definitions for queries, mutations, and subscriptions, merges them into an executable schema, and enables type-safe client code generation.
Discover how Ludgi-CLI automates GraphQL domain development by generating draft type definitions and resolvers, updating schema.ts, and syncing client-server types with Codegen.
GraphQL playground provides a guide for API documentation and testing; generate a query with the CLI, review the generated file, and verify resolver arguments and responses.
Install GraphQL query basics with TanStack Query on the client. Generate queries with the CLI, and use Next.js App Router to fetch and cache data via a query key.
Learn how field selection and field resolvers in GraphQL control data retrieval, reinterpret types via resolvers, and selectively fetch data with the getTest example and code generation.
Learn GraphQL mutation basics, test mutations with the CLI and Playground, then integrate them with TanStack Query using useMutation in an app router, with onSuccess and onError.
Enable real-time data delivery with GraphQL subscriptions, Redis pub/sub, and WebSocket setup; implement subscription and publishing mutations, and fetch updates via Apollo Client useSubscription.
Create a simple client-side form in Next.js using React Hook Form with useForm, SubmitHandler, register, handleSubmit, and watch to manage state and log submissions. Validate fields and show required errors.
Learn to implement form validation with Zod and React Hook Form, defining a schema for name and age, connecting via zodResolver, and simplifying validation for scalable forms.
Learn how to manage global state in React with Zustand through a simple counter app. Use the useCounterStore hook to increment, decrement, and perform one second asynchronous updates.
Explore Tanstack Query's useMutation and useQuery for data fetching, mutation, and caching with loading and error handling, using queryKey and queryFn in a Rick and Morty example.
implement pagination for the Rick and Morty API with TanStack Query, using useQuery and a page state, and compare Shadcn and MUI pagination features such as previous/next and ellipsis.
Implement polling with TanStack Query using useQuery and a 10-second refetchInterval to update the ui, and compare its simplicity and load predictability with WebSocket.
apply optimistic updates with Tanstack Query using useMutation and onMutate to reflect changes in the UI while handling server failure with data restoration.
Implements the create operation with Prisma, GraphQL, and Next.js, wiring page.tsx form validation via Zod and React Hook Form to a resolver.ts mutation using TanStack Query, with server-side Prisma operations.
Complete the remaining read, update, and delete operations using the code-generated GraphQL API names, with zod validation and react hook form, and handle errors via the ok field.
Learn how Redis enables fast in-memory key-value caching for frontend data, using JSON.stringify and JSON.parse, EX expiration, and optional hash or binary formats.
Explore sending and receiving queues with RabbitMQ, using a single-server producer and consumer, and implement publishMessage and startConsuming.
Set up Redis-based session management with a 'session_userID' session ID, store session data with a 1-hour TTL, and track via a cookie; covers login, logout, and Redis vs Iron Session.
This course focuses on learning the essential tech stack and workflow required in a startup environment using Next.js (15+) and React (19)-based projects.
It provides practical technologies and efficient development methods that can be applied directly in real-world scenarios.
Background & Purpose
In a startup environment, products must be developed quickly and made production-ready. This course is designed to meet those demands by covering key topics such as automation using CLI tools, integrating GraphQL with TanStack Query, and real-time data processing with Redis and RabbitMQ.
Even complex technologies are broken down into simple and clear hands-on exercises, allowing learners to grasp them step by step.
Tools & Technologies Used
This course covers a wide range of real-world tech stacks, including:
Next.js (15+)
React (19)
Prisma
Docker Compose
GraphQL
TanStack Query
Redis
RabbitMQ
Iron Session, and more.
Balance of Theory & Practice
This is not just a theoretical course—it focuses on building real-world production-ready features while helping learners understand core concepts that they can confidently apply in practical scenarios.
Nowadays, tools like ChatGPT make it possible to refine complex tasks if you already know the right keywords.
Therefore, this course emphasizes understanding what you don't know and learning the essential keywords to solve real-world problems efficiently.
By the end of the course, learners will gain competitive and practical knowledge that can be directly applied in their professional work or used to create their own products.
Difficulty Level
This course is designed for intermediate-level learners who have a basic understanding of React and TypeScript.
However, even those without prior industry experience will be able to follow along and understand the concepts through step-by-step examples.