Before touching Svelte, you need to master HTML, CSS, and modern JavaScript, understand reactive programming and component concepts, and feel at home with the command line and a package manager. In this episode you set up Node.js LTS, the VS Code editor with the Svelte extension, and verify your first tooling.

Welcome to the Learn Svelte series! This series will take you through mastering Svelte — the compiler-driven JavaScript framework that turns declarative components into lean, imperative code at build time — from conceptual foundations to production readiness. There are 24 episodes organized into six phases: prerequisites, operations, workloads, networking, advanced topics, and the modern ecosystem.
But before you touch any Svelte code, there are a few fundamental skills and software tools you must have. Why do these prerequisites matter? Because Svelte is a compiler: every line of a component you write is transformed into plain JavaScript at build time. If your JavaScript foundation is shaky, all the reactivity syntax will feel like magic, when in fact it is all ordinary JavaScript.
Episode 0 is your roadmap: we will confirm your baseline skills, set up Node.js, your editor, and your tooling, and then run a first verification. Once this episode is done, the whole series can be followed comfortably.
A .svelte component is essentially HTML, CSS, and JavaScript in a single file. You must be comfortable with semantic markup, layout with Flexbox and Grid, and ES6+ syntax: let and const, arrow functions, template literals, destructuring, async/await, and ES modules.
const name = "Svelte"
const version = 5
const greet = (name, version) => `${name} v${version}`
export default greetconst greet = (name, version) => ... is an example of an arrow function combined with a template literal that you will see constantly in modern Svelte code. If the syntax above still feels unfamiliar, take some time to practice it in the browser console before moving on.
Reactive programming means the UI automatically follows changes in state. You write declarations rather than imperative DOM manipulation. When a variable changes, the view that depends on it updates on its own — no document.querySelector and manual updates required.
You also need to understand component-based UI: an application is broken down into small components, each with three parts — script for logic, markup for display, and style for appearance. Components can be reused and receive data through props. This is the same pattern as React and Vue, but with a different compiler-driven philosophy.
As a first exercise, try sketching a simple component on a piece of paper: a search box, a results list, and a delete button. Mapping parts of an interface to components is a skill you will keep using throughout this series.
The entire Svelte workflow runs from the terminal: creating a project, running the dev server, and deploying. You should be comfortable moving between directories, running commands, and reading error messages. Git is also a must, because every serious project needs version control.
git init
git add .
git commit -m "chore: init project"
git push origin maingit init creates a local repository, then git add . stages all files for commit. As for package managers, this series uses npm, but the same concepts apply to yarn and pnpm — all three read the same package.json file.
Svelte and SvelteKit run on top of Node.js, so the first step is to install the latest Node.js LTS from the official site or via a version manager like nvm. The LTS release is always the most stable choice for development. Once installed, verify:
node --version
npm --versionnode --version should print version 20 or later, and npm --version should print the npm version bundled with it. npm ships automatically with Node.js, so there is no need to install it separately.
For your editor, the top recommendation is VS Code with the official Svelte for VS Code extension from the Svelte team. This extension provides syntax highlighting, autocompletion, and diagnostics right inside .svelte files. Also install Prettier and the ESLint extension so your code formatting stays consistent.
After the extensions are installed, create a test file named Coba.svelte and make sure the editor recognizes the syntax. If syntax highlighting appears, your editor is ready for the entire series.
If you have never used VS Code, spend ten minutes learning the basic shortcuts, such as the command palette and switching between files. Editor comfort has a big impact on your long-term productivity.
Use a modern browser such as Chrome, Firefox, or Edge. The most important features: DevTools for element inspection, the console for debugging, and the Network tab for examining requests. Svelte does not require any special browser, but DevTools is your main ally when troubleshooting.
For hardware, Svelte is lightweight: a laptop with at least 8GB of RAM and an SSD is enough for the entire series. The operating system is up to you — Windows, macOS, or Linux — as long as Node.js and your editor run normally. Build tools like Vite and SvelteKit will be covered in depth in episode 3.
Also use incognito mode when testing your applications — some browser caches and extensions can hide bugs that really exist.
Before moving on to episode 1, make sure everything is ready with a quick verification. Open your terminal and run these three commands:
node --version
npm --version
git --versionIf all three print their versions without errors, your base environment is ready. To confirm the toolchain works, create one test directory and initialize Git inside it as in the example above — this also practices the workflow you will use throughout the series.
Write down the installed versions. If a project stops working at some point, these versions are the first information requested when you seek help.
Tip
Keep your Svelte projects in one dedicated folder and do not forget git init from day one. Version control from the start lets you experiment freely without fear of breaking working code.
One more thing: get into the habit of reading error messages all the way through, not just the last line. Most failures in the early episodes are simply Node or npm not installed correctly — and the terminal error message always gives you a clue.
Key takeaways:
node --version runs normally.node, npm, and git before stepping into the next episode.In the next episode 1 we will discuss the history, background, and why you need Svelte — from the birth of Svelte as a compiler-driven framework, its comparison with React, Vue, and Angular, to the rise of SvelteKit for full-stack applications. Make sure your environment is ready, because the Learn Svelte journey is just beginning!