You don’t need to memorize these, but knowing them will make you sound less lost when reading docs, talking to other developers, or debugging with AI. This is the vocabulary that gets thrown around in coding conversations — what each term actually means, in normal language.
API
Application Programming Interface. A way for two pieces of software to talk to each other. When your app fetches weather data, it's calling a weather API.
Backend
The part of an app that runs on a server — handles data, logic, and database stuff. The user never sees it directly.
Branch
A parallel version of your code. You create a branch to work on a feature without messing up the main version. When it's ready, you merge it back.
Build
The process of turning your source code into something that can actually run. "Running a build" means compiling or packaging your app.
CLI
Command Line Interface. A text-based way to talk to your computer. Terminal on Mac, Command Prompt or Git Bash on Windows. Claude Code runs here.
Clone
Copying a GitHub repo to your computer. Run: git clone <url> and you get a local copy of someone else's project (or your own, on a different machine).
Commit
A saved snapshot of your code at a specific point in time. Like a save point in a video game. Each commit has a message describing what changed.
Component
A reusable chunk of UI. A button, a card, a navigation bar — each one is a component. Most modern apps are built by composing components together.
CSS
Cascading Style Sheets. The language that controls how a web page looks — colors, fonts, spacing, layout. HTML is the structure, CSS is the paint.
Database
Where your app stores data that needs to persist. User accounts, saved settings, purchase records — all live in a database.
Dependency
A library or package that your code relies on. Instead of writing everything from scratch, you install dependencies that other people already built.
Deploy
Putting your app on the internet so other people can use it. "I deployed to Vercel" means your app is now live at a public URL.
Environment variable
A secret value (like an API key or password) that your app needs but that you don't want in your code. Stored separately so they don't get pushed to GitHub.
Frontend
The part of an app that the user sees and interacts with — buttons, text, forms, animations. Runs in the browser.
Framework
A pre-built structure for building apps. React, Next.js, Django, Flask — these are frameworks. They give you a starting point so you don't build everything from scratch.
Git
The version control tool that tracks changes to your code. Not the same as GitHub — Git is the engine, GitHub is the website that hosts your Git repos.
GitHub
A website where developers store and share code. Your repos live here. DuckSubs uses your GitHub account for authentication.
HTML
HyperText Markup Language. The language that defines the structure of web pages — headings, paragraphs, images, links. Every website is HTML at its core.
IDE
Integrated Development Environment. A fancy text editor built for coding. VS Code is the most popular free one. Cursor is an AI-powered IDE.
JavaScript
The programming language that makes websites interactive. If a button does something when you click it, JavaScript is probably involved.
JSON
JavaScript Object Notation. A way to format data as text. Looks like { "name": "DuckSubs", "price": 15 }. APIs send and receive data in JSON.
Library
A collection of pre-written code that does something specific. Want to make charts? Install a chart library. Want to handle dates? There's a library for that.
Localhost
Your own computer, acting as a web server. When you run an app in development mode, it's usually at localhost:3000 — only you can see it.
Merge
Combining changes from one branch into another. "Merge this feature into main" means: take the work I did on this branch and make it part of the official version.
Node.js
A way to run JavaScript outside of a browser — on your computer or a server. Most modern web development tools run on Node.
npm
Node Package Manager. The tool you use to install JavaScript libraries. Run: npm install <package-name> to add a dependency to your project.
Package
Same as a library or dependency — a bundle of code someone else wrote that you can install and use. Packages are distributed through npm, pip, etc.
PR (Pull Request)
A formal proposal to merge code changes. On GitHub, you open a PR to say "here are my changes, please review and merge them." Common in team projects.
Push
Uploading your local commits to GitHub. Run: git push. Your code on GitHub is now up to date with your computer.
Python
A popular programming language known for being readable. Great for scripts, data work, and backend apps. A lot of AI tools are built with Python.
README
A file (usually README.md) in the root of your project that explains what the project is, how to install it, and how to use it. GitHub displays this on the repo's front page.
Repo (Repository)
A project folder tracked by Git. Contains your code, its history, and configuration. Every project you build gets its own repo.
Runtime
The environment that executes your code. Node.js is a JavaScript runtime. Python is both a language and a runtime. "What runtime are you using?" means "what's executing your code?"
Server
A computer that serves content to other computers over the internet. When someone visits your app, a server handles their request and sends back the page.
SSH key
A cryptographic key pair used to prove your identity. Some people use SSH keys instead of the GitHub CLI to authenticate with GitHub. Either works.
Terminal
The text-based interface to your computer. Where you type commands. Called Terminal on Mac, Command Prompt or PowerShell on Windows. This is where Git and Claude Code live.
TypeScript
JavaScript with extra safety checks. It catches bugs before you run the code by enforcing types (e.g., this variable must be a number, not a string). Most modern web apps use it.
URL
Uniform Resource Locator. A web address. ducksubs.com/tools is a URL. localhost:3000 is a URL. Your GitHub repo has a URL.
Version control
A system that tracks every change to your code over time. Git is version control. It lets you go back to any previous version, see who changed what, and work on features in parallel.
Vibecoding
Building software by describing what you want to an AI tool (like Claude Code) in natural language, rather than writing code manually. The AI generates the code; you guide the direction.