The Frontend Developer Toolkit

A friendly tour of the everyday tools a frontend developer relies on — code editor, browser and DevTools, terminal, version control, package managers, and a dev server — and what each one is actually for.

Published September 20, 202610 min readBy ACY Partner Indonesia
The Frontend Developer Toolkit cover with editor, browser, and CLI motifs
300 × 250Ad Space AvailablePlace your ad here

Every craft has its workbench. A carpenter reaches for a saw, a clamp, a tape measure — each one doing a job that the others can’t. Frontend development is no different. Before you write a single line of code that ends up on a real website, there’s a small set of programs that quietly sit underneath everything you do.

If you’re brand new, the names can feel like alphabet soup: editor, terminal, Git, npm, dev server. The good news is that none of them are mysterious once you see what problem each one solves. This article is a guided tour, not a tutorial. The goal is simply for you to walk away knowing what each tool is for, so that when someone mentions “just push it to the repo” or “run the dev server”, you nod along instead of panicking.

Let’s open the toolbox.

The code editor: where you actually write

A code editor is the program where you type your code. That sounds obvious, but a real code editor is far more than a fancy text box. It understands the kind of file you’re working with.

The most popular choice today is Visual Studio Code (usually shortened to VS Code), a free editor made by Microsoft. There are others — Sublime Text, WebStorm, Neovim — but VS Code is where most beginners and a huge slice of professionals live, so it’s a safe place to start.

What does a code editor give you that a plain notepad doesn’t?

  • Syntax highlighting — it paints keywords, strings, and numbers in different colors so your code is easier to read at a glance.
  • Autocomplete — as you type, it suggests the rest of a word, a function name, or a property. This saves time and prevents typos.
  • Error squiggles — it underlines mistakes (a missing bracket, a misspelled variable) before you even run the code.
  • Extensions — small add-ons you install to teach the editor new tricks, like formatting your code automatically or working with a specific framework.

Think of the editor as your home base. You’ll spend more time here than anywhere else.

Pick one and stick with it for a while

It’s tempting to chase the “best” editor, but they all do the same core job. Choose VS Code, get comfortable with the basics, and only explore alternatives once you have a reason to. Switching tools constantly just slows down your learning.

The browser and its DevTools: where your work comes alive

For frontend work, the browser isn’t just where you check your email — it’s the stage your code performs on. Whatever you build, a real person eventually views it in Chrome, Firefox, Safari, or Edge. So the browser is both your preview window and your testing ground.

But the browser hides a second, more powerful identity. Press F12 (or right-click a page and choose “Inspect”) and a panel slides open: the Developer Tools, almost always called DevTools. This is the frontend developer’s X-ray machine.

With DevTools you can:

  • Inspect the page structure — hover over any element and see the exact HTML and CSS behind it.
  • Tweak styles live — change a color or spacing and watch the page update instantly, without touching your files. Perfect for experimenting.
  • Read the console — see error messages and print-outs from your JavaScript, which is how you figure out why something broke.
  • Watch the network — see every file and request the page loads, and how long each one takes.

You’ll open DevTools dozens of times a day. It’s where you debug, measure, and understand what’s really happening.

DevTools deserves its own deep dive

There’s a lot packed into that little panel. If you want a proper walkthrough of each tab and what it’s good for, read our dedicated guide on Browser Developer Tools.

The terminal: typing commands instead of clicking

The terminal is a plain window where you type commands and the computer carries them out. No buttons, no menus — just text. If you’ve only ever used a mouse, it can look intimidating, like a scene from a hacker movie. In reality it’s just a different, faster way to tell your computer what to do.

On Windows this might be PowerShell or the Command Prompt; on macOS and Linux it’s usually called Terminal. Inside your code editor, there’s almost always a built-in terminal too, so you never have to switch windows.

Why bother with text commands when graphical apps exist? Because in development, so many tools are run from the terminal. You start your project, install libraries, and run Git all by typing short commands. A single line like the one below installs everything a project needs:

npm install

You don’t need to memorize hundreds of commands. In practice you’ll use the same handful over and over, and you’ll copy-paste the rest from documentation. The terminal isn’t a test of memory — it’s just the doorway most tools knock on.

The terminal is mostly muscle memory

Beginners worry they need to learn the terminal inside out. You don’t. Learn how to move between folders, run a command, and read what it prints back. That alone covers the vast majority of daily work.

Version control with Git: a time machine for your code

Imagine writing a long document and saving copies named final, final-v2, final-REALLY-final. That chaos is exactly what version control prevents. Git is the tool that records the history of your project: every change, who made it, and when.

Git lets you do a few profoundly useful things:

  • Save snapshots (called commits) at meaningful points, so you can always go back to a working version.
  • Try risky ideas safely on a separate branch, then merge them in only if they work out.
  • Collaborate without overwriting each other’s work, because Git knows how to combine changes from different people.

A repository (or repo) is simply the folder Git is tracking, history and all. You’ll often pair Git with an online home for your repo — a service like GitHub, GitLab, or Bitbucket — where teams share code and back it up off your machine.

Here’s the mental model:

your code ── commit ──▶ local history ── push ──▶ online repo (GitHub)
                              ▲                         │
                              └──────── pull ◀──────────┘

You commit changes locally, push them up to share, and pull down changes others have made. We’re staying conceptual here — Git has plenty of depth — but the core idea is just this: it’s a careful, searchable record of everything that’s ever happened to your code, and an undo button you can trust.

Learn Git early, not 'later'

Many beginners postpone Git because it feels like a separate subject. Don’t. Even on a solo project, having a real history saves you the day you break something and can’t remember what you changed. Start committing from your very first project.

Package managers: borrowing code you didn’t write

You rarely build a website entirely from scratch. The community has already written tools for dates, forms, animations, data fetching, and a thousand other needs. These reusable bundles of code are called packages (or libraries, or dependencies).

A package manager is the tool that fetches those packages, installs them into your project, and keeps track of their versions for you. In the frontend world the dominant one is npm (Node Package Manager), with popular alternatives like Yarn and pnpm that do the same job slightly differently.

When you install a package, your project records it in a file so anyone can recreate the exact same setup:

{
  "dependencies": {
    "react": "^18.3.0",
    "date-fns": "^3.6.0"
  }
}

That little list means a teammate can clone your project, run one install command, and get the identical set of libraries you used. No emailing zip files, no “it works on my machine”.

Term What it means
Package A reusable bundle of code someone else wrote
Dependency A package your project relies on to run
npm The most common tool that installs and manages packages
Registry The giant online library packages are downloaded from

The takeaway: a package manager lets you stand on the shoulders of the whole community instead of reinventing every wheel.

The dev server: previewing as you build

When you change your code, you want to see the result immediately. A development server (almost always shortened to dev server) makes that happen. It runs your project on your own computer at a local address — something like http://localhost:3000 — that only you can see.

Two things make it special:

  • It serves your work in the browser exactly as a website would, so you can interact with what you’re building.
  • It auto-refreshes the moment you save a file. Many dev servers even update the page without a full reload, a feature called hot reloading, so you see changes in a blink.

You start one with a short command, then leave it running in the background while you work:

npm run dev

The dev server is strictly for development — it’s fast and convenient but not meant for the public. When your site is ready for the world, it gets built into optimized files and hosted elsewhere. While you’re creating, though, the dev server is the tight feedback loop that makes frontend work feel alive.

How the pieces fit together

None of these tools work in isolation. A normal afternoon of frontend development weaves all of them together, often without you thinking about it:

1. Open the EDITOR and write some code
2. Use the TERMINAL to run the DEV SERVER
3. View the result in the BROWSER, debug with DEVTOOLS
4. Pull in a library with the PACKAGE MANAGER when needed
5. Save your progress as a commit with GIT
6. Repeat

Each tool covers a gap the others leave open. The editor is where ideas become code. The terminal is the launchpad. The dev server and browser form your preview-and-inspect loop. The package manager brings in outside help. And Git keeps a safety net under all of it.

Recap

Frontend development looks complicated from the outside, but the daily toolkit comes down to a handful of tools, each with a single clear purpose:

  • Code editor (VS Code) — where you write and read code, with help like highlighting and autocomplete.
  • Browser + DevTools — where your work runs, and the X-ray panel where you inspect and debug it.
  • Terminal — the text window from which you run almost every other tool.
  • Git — version control that records your project’s history and lets you collaborate safely.
  • Package manager (npm) — fetches and tracks the reusable libraries you build on top of.
  • Dev server — runs your project locally and refreshes it instantly as you work.

You don’t need to master all of these at once. Install a code editor, open the browser’s DevTools, and get one project running on a dev server — that already covers most of your day. The rest will become second nature the more you build. Welcome to the workbench.

Tags:frontendtoolstoolkitbeginnersdevtoolsworkflow
728 × 90Ad Space AvailablePlace your ad here

Related Articles

See All Articles

You Might Also Like

Arrays and Tuples in TypeScript cover
Frontend / TypeScript

Arrays and Tuples in TypeScript: Typing Lists the Right Way

Learn how to type arrays and tuples in TypeScript. Understand string[] vs Array<number>, when a fixed-length tuple is the right tool, and how readonly keeps your data safe.

Sep 20, 20269 min read
Basic Types in TypeScript cover with string, number and boolean tokens
Frontend / TypeScript

Basic Types in TypeScript: The Building Blocks You Use Every Day

A beginner-friendly tour of TypeScript's basic types — string, number, boolean, null, undefined, plus any, unknown, void, and never — with lots of small, practical examples.

Sep 20, 20268 min read
Classes in TypeScript cover with a typed class snippet
Frontend / TypeScript

Classes in TypeScript: Typed Fields, Access Modifiers, and More

Learn how TypeScript upgrades JavaScript classes with typed fields, access modifiers, readonly, parameter properties, interfaces, and abstract classes — explained plainly for beginners.

Sep 20, 20268 min read
Declaration Files dot d dot t s cover with declare module code chip
Frontend / TypeScript

Declaration Files (.d.ts): Types for Untyped Code

Learn what TypeScript declaration files (.d.ts) are, how ambient declarations and the declare keyword work, and why you consume @types packages far more often than you write them.

Sep 20, 20269 min read
Decorators in TypeScript cover with an @Component code chip
Frontend / TypeScript

Decorators in TypeScript

A beginner-friendly introduction to decorators in TypeScript: what the @something syntax means, where you meet it, a simple example, and why it keeps evolving.

Sep 20, 20268 min read
Enums in TypeScript cover illustration
Frontend / TypeScript

Enums in TypeScript: A Friendly Guide to Named Constant Sets

Learn how enums in TypeScript group related constants under readable names. We cover numeric vs string enums, when they help, and the union-of-literals alternative.

Sep 20, 20269 min read