The EM•porium serves as a central repository for open-source firmware written in EM•Script – a novel programming language targeting resource-constrained embedded systems and often outperforming comparable code written in C/C++. To flatten the learning curve, our EM•Builder extension for VS Code brings EM•Script language support to this ubiquitous and ever-popular development environment.
Before installing the EM•porium, you'll need VS Code, Node.js, a Wokwi account, and Git available from your command-line shell.
Important
Windows users should first install Git for Windows, which includes the Git Bash shell – a command-line environment comparable to those found on Linux and macOS. Use Git Bash for all shell commands presented throughout the EM•porium.
🟠 download VS Code
If already installed locally, enter code --version from the shell and verify VS Code version 1.90 or later.
🟠 download Node.js
If already installed locally, enter node --version from the shell and verify Node.js version 22 or later.
Important
Windows users should now configure the Node.js npm utility to use Git Bash as its default shell. Enter the following command, which reflects the default installation directory for Git Bash:
npm config set script-shell 'C:\Program Files\Git\usr\bin\bash'🟠 register at Wokwi
This sophisticated simulator supports several popular MCUs. You'll obtain a free license key later during the Getting Ready tour.
Enter git --version from the shell and verify Git version 2.50 or later.
Note
If git --version fails on macOS, enter xcode-select --install to install Apple's Command Line Tools.
If git --version fails on Linux, install Git through your distribution's package manager.
As you work through the steps presented here, click each ▶︎ arrow to reveal the details. When finished with each step, click its ▼ arrow to hide the details.
✅ clone the emporium repository
Clone the public EM•porium repository into your current folder:
git clone https://github.com/em-foundation/emporium.git✅ start the EM•porium environment
Enter the newly-created emporium folder and launch the environment:
cd emporium
npm start☕ The first launch may take several minutes to download required packages and tools. Subsequent launches normally complete much faster.
Use npm start whenever you return to the EM•porium.
💡 For convenience, add this alias to your shell's initialization file – replacing /path/to with the folder containing your emporium clone:
alias emp='pushd /path/to/emporium && npm start && popd'You can then launch the EM•porium from any folder with:
empWith your EM•porium environment now running, we'll continue inside EM•Tours – self-paced guides that lead you through its workspace of EM•Script programs and introduce the tooling you'll use along the way.
Start with Getting Ready, which completes a few one-time setup tasks before moving directly into our First Programs.
From EM•Home, click Take your first EM•Tour and we'll take it from there.
👀 a quick heads up…
When you launch your first EM•Tour, the TOUR GUIDE may initially appear in the left sidebar.
Follow the on-screen steps to move it into the secondary sidebar before continuing.
Have a question, found something confusing, or have an idea for improving the EM•porium? Start a conversation on our GitHub Discussions page – the best place to ask questions, offer feedback, or explore possible contributions.
If you find the project useful, please also consider starring or watching the repository. We’ll cover the mechanics of creating your own fork and contributing changes later within our Source Control tour.


