Be a part of our community of 1M+ users who develop and demonstrate their skills on CodeSignal
6 courses
83 practices
6 hours
Learn backend development with NestJS by building a feature-rich Reading Tracker API. Explore modular architecture, DTOs, authentication, guards, and interceptors while implementing real-world features like user friendships, shared progress, and advanced data filtering and sorting.
You'll start your journey by scaffolding a new NestJS application with the CLI. Then, you'll create your first API endpoints, separate business logic into services, and connect to a mock in-memory database to manage your app's data.
You'll create a dedicated module for managing books, complete with endpoints for creating, reading, updating, and deleting records. You'll learn to validate incoming data using DTOs and handle dynamic route parameters to interact with specific resources.
Secure Your API with Authentication and Authorization
4 lessons
15 practices
Add secure authentication and authorization to your Reading Tracker API. Implement user registration, login with JWT, and role-based access control to protect routes and enable admin-level actions for a production-ready backend.
You’ll harden and polish the Reading Tracker API built in the first three courses. First, you’ll enforce ownership so users can only modify their own reading progress. Then you’ll add centralized request logging, standardize both success and error responses across the API, and finally refactor to a global JWT guard with a `@Public()` decorator so security is easy to scale.
Add social features to your reading tracker API. You’ll model friendships and friend requests, expose endpoints to send/accept/decline requests, list a user’s friends, and securely retrieve a friend’s reading progress—all while composing the existing UsersService and ReadingService.
Enhance your Reading Tracker API with advanced catalog features—metadata, search, filtering, sorting, and analytics. Support per-user reading progress, shelves, and statistics to deliver a polished, frontend-ready experience.
Hear what our customers have to say about CodeSignal Learn
I'm impressed by the quality and can't stop recommending it. It's also a lot of fun!
Francisco Aguilar Meléndez
Data Scientist
+11
I love that it's personalized. When I'm stuck, I don't have to hope my Google searches come out successful. The AI mentor Cosmo knows exactly what I need.
Faith Yim
Software Engineer
+14
It's an amazing product and exceeded my expectations, helping me prepare for my job interviews. Hands-on learning requires you to actually know what you are doing.
Alex Bush
Full Stack Engineer
+9
I'm really impressed by the AI tutor Cosmo's feedback about my code. It's honestly kind of insane to me that it's so targeted and specific.
Abbey Helterbran
Tech consultant
+8
I tried Leetcode but it was too disorganized. CodeSignal covers all the topics I'm interested in and is way more structured.
Jonathan Miller
Senior Machine Learning Engineer
+12
I'm impressed by the quality and can't stop recommending it. It's also a lot of fun!