Backend and APIs Guide

The backend is the part of an application users never see: the server code that stores data, enforces rules, checks who you are, and exposes everything to web and mobile clients through APIs. Whatever the language, the same handful of problems keep coming up: designing an API that other developers can use without guessing, authenticating users safely, modeling and querying data, and keeping the system running when traffic or failures arrive.

A good first project is a small API with one database table and token-based authentication, because it forces you to learn routing, validation, persistence and security together. From there you can compare styles such as REST, GraphQL, tRPC and gRPC and see which suits the clients you have. Frameworks differ in syntax but the concepts transfer, whether you use Node with Express or NestJS, Django or FastAPI in Python, Spring Boot in Java, Laravel in PHP, Go, or Phoenix in Elixir.

The reading list is grouped by those concerns: complete applications built end to end, API design and styles, authentication and security, Node.js techniques, and data and infrastructure. The longer walkthroughs build a full app with login, which makes them the best place to start. As with any fast-moving tooling, check the publication date and the library versions before copying code into a project.

Reading list

Complete apps with authentication

End-to-end walkthroughs that build an API, a database layer and a login system.

API design and styles

REST, GraphQL, tRPC and gRPC compared and put to work.

Authentication and security

Tokens, passwords and two-factor authentication.

Node.js techniques

Architecture, streams, HTTP requests and load testing.

Databases and infrastructure

Choosing an ORM or a backend service, and running data stores and containers.

Want more? Browse every article in the Backend & APIs category.