A set of rules that lets software systems communicate — your frontend sends requests, the API sends responses.
The behind-the-scenes code that handles data, business logic, databases, and APIs. Not visible to the user.
Publishing your app to a live server so anyone on the internet can access it.
Tools and practices that automate building, testing, deploying, and monitoring software.
A Node.js framework for building APIs and backend routes.
An application that includes both the frontend (UI) and backend (server/database).
A lightweight data format for sending structured data over the web. Looks like JavaScript objects.
Your own computer acting as a server — usually accessed at http://localhost:3000.
Functions in an Express server that run before your route handler (e.g., parsing JSON, logging requests).
A numbered communication channel your server listens on (e.g., port 3000).
Files served as-is: images, CSS, JS bundles, fonts, etc.
The address of a resource on the web. Example: https://example.com/api/users.
Software that listens for HTTP requests and responds with data or files.
The data sent in an HTTP request or response (usually JSON for APIs).
A header describing what kind of data is being sent, such as application/json or text/html.
Actions clients can request from a server: GET, POST, PUT, DELETE, etc.
Extra information added to a request or response (content type, cookies, auth tokens, etc.).
HyperText Transfer Protocol — the basic system browsers and servers use to communicate.
Used to send data to the server (creating something new).
Used to request data from the server (reading data).
The message the client sends to the server — includes method, headers, and optional body.
Small pieces of metadata the client sends with a request (tokens, content type, cookies).
The message the server sends back to the client — includes data, headers, and status code.
Metadata sent back with a response (content type, caching info, server type).
Numbers describing the result of a request: success (200), not found (404), server error (500).
Small piece of data stored in the browser and sent with requests — used for sessions, auth, tracking.
Saving data so it remains after refresh or restart — usually in a database.
A major cloud provider offering servers, storage, databases, backups, and deployment tools.
A script that prepares your project for deployment — bundles files, optimizes code, outputs to /dist.
A non-text file stored as raw bytes (images, executables, audio, compiled code).
Smallest unit of digital data — 1 byte = 8 bits. Used to measure file size.
Folder generated after building your project — contains the optimized files that get deployed.
The main entry file for a Node.js or Express app. Usually the first file your server runs.
Two ways Node organizes files:
import / exportrequire / module.exportsThe suffix that tells the OS how to interpret a file (.js, .json, .md, .png).
A standard text encoding that supports almost every written language and emoji.