1 15 min

Setup: your repo and your tools

Block
Setup, before the first Role
Outcome
Your own repo, your tools installed, Antigravity IDE open
Time box
15 minutes

Eight short steps take you from a laptop with Chrome to your own repo, open in Antigravity IDE. Your site goes live early, before you have installed anything.

This page shows one step at a time, and a last page of help if you get stuck. Click Done & Next when a step works. The first three steps happen in Chrome, the next four on your laptop, and the eighth checks that you are ready.

Create your GitHub account

GitHub (the website that will hold your site's files) needs an account. It is free.

  1. Open github.com/signup.
  2. Enter your email address and a password.
  3. Choose your username with care: it becomes part of your site's address, https://USERNAME.github.io/portfolio/. Pick one you are happy to show an employer.
  4. Type in the code GitHub sends to your email.

You know it worked when you are signed in and see your profile picture in the top right corner of github.com.

Copy the Template repo

The Template repo has everything your agents need: one skill per Role, the rules, the tools and a sample site. You copy it into a repo of your own (your project folder on GitHub, with its history).

Open the Template repo

  1. Click the green button Use this template, then Create a new repository.
  2. Owner: your username. Repository name: portfolio, exactly like this, in lowercase.
  3. Choose Public.
  4. Click Create repository.

You know it worked when you are on github.com/YOUR-USERNAME/portfolio, and under the name it says "generated from fabkrum/portfolio-template".

Switch on GitHub Pages

GitHub Pages (GitHub's free website hosting) publishes your site. Every new repo needs this setting once.

  1. In your new repo, click the tab Settings. In a narrow window it hides behind the … menu.
  2. In the menu on the left, click Pages.
  3. Under Build and deployment, set Source to GitHub Actions. GitHub then suggests workflows with Configure buttons: do not click them. Your repo already has its own.
  4. Click the tab Actions. You see a run called Deploy to GitHub Pages with a red cross: it ran before Pages was on. That is expected. Ignore a run called CI: it tests the template and does nothing in your copy.
  5. Click the Deploy to GitHub Pages run, then Re-run jobs, then Re-run all jobs, and confirm.
  6. Wait until the run shows a green tick, usually a minute or two.
  7. Open https://YOUR-USERNAME.github.io/portfolio/ in Chrome, with your own username.

You know it worked when you see the portfolio of Ada Example, a person who does not exist. Your site is already live. The Analyst replaces Ada with you.

No run in the Actions tab? Click Deploy to GitHub Pages in the list on the left, then Run workflow, and confirm with the green Run workflow button.

Create your Google account

Antigravity IDE, the editor you install next, signs you in with a Google account. It has to be a personal one: a work or school account may be blocked. The account is free.

  1. Open accounts.google.com/signup.
  2. Enter your name, then your birthday.
  3. Pick a new Gmail address and a password.
  4. If Google asks for a phone number to confirm it is you, type in the code it sends.
  5. Accept the terms.

You know it worked when you are signed in and see your initial or your picture in the top right corner of google.com.

Install Antigravity IDE

Antigravity IDE is Google's code editor with an AI agent built in. You see your files on the left and talk to the agent on the right.

Already installed? Continue with signing in, below the tabs. Otherwise install the file you started downloading in step 1. No download yet? Open antigravity.google/download and download Antigravity IDE for your system.

Pick your system. The guide has opened the one it detected; check that it is yours.

  1. Open the downloaded file and drag Antigravity IDE into your Applications folder.
  2. Open it: press Cmd+Space, type Antigravity IDE and press Enter.
  3. The Mac asks whether to open an app downloaded from the Internet. Click Open.

Sign in with your personal Google account, not a work or school account. If it asks how much the agent may do on its own, keep the recommended setting.

You know it worked when Antigravity IDE is open and you are signed in with your personal Google account.

Then quit Antigravity IDE completely: on a Mac press Cmd+Q; on Windows and Linux close its window. The Install script in the next step opens it again, with your repo.

Run the Install script

The Install script is one line that prepares your laptop. It asks for your GitHub username, checks Chrome and Antigravity IDE, and installs Git and Node where they are missing. Then it copies your repo into a folder called portfolio in your home folder (your own folder on the laptop, the one with your Documents and Downloads), and opens it in Antigravity IDE.

The line also tells the script which workshop you are at, so that your site can say at the bottom where you built it.

Open a terminal (the window where you type commands), paste the line for your system and press Enter. Each system has its own line: a line from another tab fails.

Pick your system. The guide has opened the one it detected; check that it is yours.

Open Terminal: press Cmd+Space, type Terminal and press Enter. Paste with Cmd+V.

curl -fsSL https://raw.githubusercontent.com/fabkrum/portfolio-template/main/install.sh | WORKSHOP_EVENT="DevFest Milano 2026" WORKSHOP_DATE=2026-10-10 WORKSHOP_CITY="Milan" sh

If a window asks you to install the command line developer tools (Apple's package that brings Git), click Install, not "Get Xcode". Wait until it is done: five minutes or more on busy Wi-Fi. Then run the same line again.

If the developer tools ask for an administrator password you do not have, click Cancel. You can still take part: the script continues without Git, and at Ops you publish in the browser.

It asks What is your GitHub username? Type it and press Enter. Then it works through four parts: Apps, Tools, Your repo and Summary.

What you see on a Mac (example)

Setting up your laptop for the portfolio workshop.
What is your GitHub username? luca-bianchi

Apps
  [ok]    Google Chrome is installed.
  [ok]    Antigravity IDE is installed.

Tools
  [ok]    Git is installed (git version 2.39.5).
  [ok]    Node is installed (v24.11.0).

Your repo
  [ok]    Copied your repo to /Users/luca-bianchi/portfolio.
  [ok]    Opened your repo in Antigravity IDE.

Summary
Everything is ready.
Run this command again any time; it only does what is still missing.

You know it worked when the summary says Everything is ready. and Antigravity IDE opens your portfolio folder.

Does the summary say Still to do? Do each numbered item, then run the same line again. It is safe to run as often as you like: it only does what is still missing.

Two to-dos you may leave open: Antigravity IDE is not installed when you did install it, and Git when you have no administrator rights. Stuck?, at the end of this page, says what to do instead.

Open your repo in Antigravity IDE

Usually the Install script has opened it for you. You see your files on the left, such as AGENTS.md, site and tools, and the agent panel on the right.

Not open? Start Antigravity IDE, choose File → Open Folder and pick the folder portfolio in your home folder:

In the dialog, press Cmd+Shift+H: it jumps to your home folder. Click portfolio, then Open.

If Antigravity IDE asks whether you trust the authors of the files in this folder, say yes: it is your own repo.

There is nothing to configure. Antigravity IDE gives the agent the rules in AGENTS.md and finds one skill (a folder of instructions) per Role in .agents/skills/ by itself.

Open the terminal of Antigravity IDE once, so you know where it is: menu Terminal → New Terminal. It opens at the bottom, already in your portfolio folder. You can tell by the line before the cursor: it ends in portfolio, for example PS C:\Users\luca\portfolio> on Windows, luca@MacBook portfolio % on a Mac or luca@laptop:~/portfolio$ on Linux.

You use this terminal when you fall behind. To paste into it, press Cmd+V on a Mac, Ctrl+V on Windows and Ctrl+Shift+V on Linux, or right-click and paste.

Pick the smallest Gemini Flash model

The model is the AI behind the agent. Today you use the smallest, fastest one.

  1. In the agent panel, click the model name under the chat box.
  2. Pick Gemini 3.8 Flash, the smallest and fastest model in the list. Not a model called Pro.

You choose the model in Antigravity IDE only; no file can set it for you. So check the name under the chat box each time you start a fresh chat.

Check that you are ready

Do-confirm checklist: do the work, then confirm each item

Stuck?

Ask AI first: copy the exact error message into Gemini and ask what to do. Once Antigravity IDE runs, ask its agent instead: in a chat, type Where am I? Still stuck? Raise your hand, or ask your neighbour. Setup has no checkpoint: your repo is the outcome. These are the usual problems:

"I could not find your repo at https://github.com/…"

Cause: the username is wrong, or the repo is not called portfolio, or it is private.

Fix: open your repo on GitHub and check two things: its name is portfolio, and it is Public. Then run the Install script again.

"That does not look like a GitHub username"

Fix: run the line again and type only your username, for example luca-bianchi, without spaces.

"irm is not recognized" on Windows

Cause: you are in Command Prompt, not PowerShell.

Fix: click Start, type PowerShell, open Windows PowerShell and paste the Windows line there.

"A parameter cannot be found that matches parameter name" or "'sh' is not recognized" on Windows

Cause: you pasted the Mac or the Linux line. They do not work on Windows.

Fix: open the Windows tab in Run the Install script and paste its line, the one that starts with irm, into Windows PowerShell.

"command not found: wget" or "curl: command not found"

Cause: the line is for another system, or your system lacks the download tool it uses.

Fix: it depends on your system and the message:

  • Mac, zsh: command not found: wget: that was the Linux line. Paste the one from the Mac tab.
  • Linux, curl: command not found: that was the Mac line. Paste the one from the Linux tab.
  • Linux, wget: command not found: your system lacks wget. The Mac line runs the same script with curl, so paste that one.
The script says Antigravity IDE is not installed, but you installed it

Cause: you installed Antigravity 2.0 instead (the script then says so), or Antigravity IDE sits in a place the script does not look.

Fix: if you have Antigravity 2.0, download Antigravity IDE and install it. On a Mac, drag Antigravity IDE into your Applications folder if it is still in Downloads, then run the line again. If Antigravity IDE opens when you start it, you are ready, as long as this is the only to-do: open it yourself and open your repo with File → Open Folder, as in Open your repo in Antigravity IDE.

An administrator password you do not have, or "Git could not be installed"

Cause: installing Git needs administrator rights. A work or school laptop often does not give them to you.

Fix: click No on Windows or Cancel on a Mac. The script continues without Git: it downloads your repo instead, and every Block works. If Git is the only to-do left, you are ready. At Ops you publish in the browser: see If something goes wrong on the Ops page.

"command not found: node" or "node is not recognized"

Cause: the terminal was open while Node was installed.

Fix: close the terminal and open a fresh one. In Antigravity IDE, quit the app completely and open it again.

"There is already a folder … portfolio, and it is not your portfolio repo"

Fix: rename or move that old folder, then run the Install script again.

Antigravity IDE does not let me sign in

Cause: usually a work or school account, the age check, your region, or a used-up quota.

Fix: sign in with a personal Google account. If that does not help, pair with your neighbour: see If Antigravity IDE does not work for you.

My site shows "404" or nothing

Fix: wait a minute and reload. On a new GitHub account, the first publish can need as long as ten minutes. Check that Settings → Pages → Source says GitHub Actions and that the newest Deploy to GitHub Pages run in the Actions tab has a green tick.

If Antigravity IDE does not work for you

Sometimes Antigravity IDE will not run for one person: a work or school account, the age check, a region where it is not offered, or a used-up quota. You still leave with your own repo and your own live site. You learn the Roles on your neighbour's laptop, and your own laptop moves with the room through one command per Block.

  1. Tell the Instructor.
  2. Run the Install script anyway, as in Run the Install script. Ignore its to-do about Antigravity IDE. It copies your repo into the folder portfolio in your home folder (your own folder on the laptop, the one with your Documents and Downloads).
  3. Open a terminal in that folder. Open a fresh terminal: Terminal on a Mac and on Linux, Windows PowerShell on Windows. It starts in your home folder. Paste this (Cmd+V on a Mac, Ctrl+V on Windows, Ctrl+Shift+V on Linux) and press Enter. It prints nothing; the line before the cursor now ends in portfolio.

Terminal · same on Mac, Windows and Linux

cd portfolio
  1. Sit with your neighbour. In every Block, follow the Role on their laptop: read each read-back with them and help them decide.
  2. In the Analyst Block, write your content by hand. Open site/content.json in a plain text editor:

In Finder, press Cmd+Shift+H, then open portfolio and site. Right-click content.json, then Open With → TextEdit. In TextEdit, untick Edit → Substitutions → Smart Quotes, so your quotes stay straight.

Replace Ada Example's words between the quotes with yours: your name, headline, bio, links and CV. Leave the words before each colon as they are, and keep mailto: in front of your email address. No phone number and no home address: your repo is public. A project needs a link to its GitHub repo. No such project yet? Delete everything between the square brackets after "projects":, so the line reads "projects": []. Save the file, then check it:

Terminal · same on Mac, Windows and Linux

node tools/check-content.mjs

It names what to fix, such as a missing comma. Fix it, save, and run the check again until it says site/content.json is ready.

  1. Each time a Block's time is up, run the room's checkpoint on your own laptop, with the Block that has just ended. After the Analyst Block, that is:

Terminal · same on Mac, Windows and Linux

node tools/checkpoint.mjs analyst

After the next Blocks, replace analyst with designer, developer, qa and lawyer. Your content file stays yours; from developer on your site has the default design, and lawyer writes your privacy page with your name and email address.

  1. In the Ops Block, publish by hand. Paste these commands one at a time, press Enter after each, and read what it prints before the next.

See what would be published. Only files in site/, and maybe design/brief.md or docs/spec.md, belong in the list. Anything else, such as a CV, you move out of the folder first:

Terminal · same on Mac, Windows and Linux

git status

Add the changes:

git add -A

Save them in a commit:

git commit -m "Publish my portfolio"

Does it say Please tell me who you are? Then run these two, with your GitHub username in place of YOUR-USERNAME, and the commit again. The noreply address keeps your own email address private:

git config user.name "YOUR-USERNAME"
git config user.email "YOUR-USERNAME@users.noreply.github.com"

Send the commit to GitHub. The first time, GitHub asks you to sign in: follow your system's tab in Sign in if GitHub asks.

git push

Wait until your site is online:

node tools/live.mjs

Done when it prints Your site is live, and your address shows your name. Once Antigravity IDE works for you, at home, open the same folder and run the Roles for real, each in a fresh chat.