Skip to content
← Inforjota
Cursos Inforjota Português

Lesson 8 of 8 · 15 min · Checked on 6 October 2026

Project: a personal site, from zero to online

By the end of this lesson you will be able to:

  • Write the “done” criteria before starting a project
  • Create a personal page with the agent, review the diff and save it with Git
  • Publish the page with GitHub Pages and open it on your phone
  • Ask the agent for a change, review it and publish again

Rita makes cakes to order in Calheta, on São Jorge, and wants an address to give her customers instead of “look me up on Facebook”. Today you make your own page, from zero to online, with what you learned in this level.

Before you start: what “done” means

Write the criteria first; without them you never know when you've finished. The project is done when:

  1. there is a new folder with Git;
  2. the agent created a page of yours (name, what you do, a made-up contact) in HTML and CSS;
  3. you reviewed the diff and opened the page in the browser;
  4. you made a commit;
  5. there is a repository of yours on GitHub with these files;
  6. the page is published with GitHub Pages;
  7. you opened it on your phone;
  8. you asked the agent for a change and published again.

Watch out

Everything you publish is visible to anyone. Use a made-up contact, such as maria@example.com, and no address or phone number. And you sign in to GitHub yourself: never give the agent your password or a token.

This is how it looks on 6 October 2026; your screen may differ. Look for the button with the same name. Guide: GitHub Pages quickstart.

Step 1: the folder and Git

mkdir site-pessoal
cd site-pessoal
git init

If it didn't work: if git init says it doesn't know the command, go back to lesson 5.

Step 2: the agent makes the page

Open the agent inside the site-pessoal folder (Portuguese for “personal site”) and swap the details for yours:

Create in this folder a simple personal page, in two files: index.html and estilo.css.
Content: my name (Maria Silva), one sentence about what I do (cakes made to order in Calheta) and the contact maria@example.com.
European Portuguese, large readable text, and it should look good on a phone.
No libraries and no outside files. Before you create anything, show me the plan.

Optionally, start with a short AGENTS.md, as in the previous lesson.

If it didn't work: index.html must be in the main folder, not a subfolder, and spelled exactly index.html, in lower case. If not, ask the agent to fix it.

Step 3: review and open in the browser

New files don't show up in git diff yet. Add them first and see what goes in:

git add .
git diff --staged

Then double-click index.html, or drag it into the browser.

If it didn't work: if the page has no colours or layout, index.html isn't finding estilo.css. Ask the agent: “The page opens without style. Check the link to estilo.css.”

Step 4: commit

git commit -m "First version of the personal site"

If it didn't work: “Author identity unknown” means the git config with your name and email, from lesson 5, is missing.

Step 5: the repository on GitHub

On GitHub, click the + in the top right corner and choose New repository. The name has to be USERNAME.github.io, with your username. Choose Public and leave README off (unlike the quickstart, you already have your files). Click Create repository.

Then, in the terminal, swap USERNAME for your username in both places:

git remote add origin https://github.com/USERNAME/USERNAME.github.io.git
git branch -M main
git push -u origin main

The first time, Git asks you to sign in to GitHub, usually in a browser window. Guide: adding locally hosted code to GitHub.

Tip

Ask the agent to explain these three commands, then run them yourself: that way the GitHub sign-in stays with you.

If it didn't work:

  • “Password authentication isn't supported”: your normal GitHub password doesn't work there. Install the official GitHub CLI tool, run gh auth login and choose HTTPS. Guide: caching your GitHub credentials in Git.
  • “Repository not found”: the repository name or the USERNAME doesn't match.
  • “rejected”: the repository was created with a README. Ask the agent to explain the options first.
  • No terminal: in the repository, under Add file, choose Upload files and drag in the two files. Choose to commit directly to main and click Commit changes. If you pick a new branch, the button becomes Propose changes and opens a pull request: the site only changes after Merge pull request. Guide: adding a file to a repository.

Step 6: publish with GitHub Pages

In the repository, open Settings. In the side bar, under “Code, planning, and automation”, choose Pages. Under “Build and deployment”, set “Source” to Deploy from a branch, then set “Branch” to main and the folder to / (root). Click Save.

The site will be at https://USERNAME.github.io. It can take up to 10 minutes to appear.

With a free account, GitHub Pages only publishes public repositories. It suits personal pages, not a shop or anything that collects passwords or card details.

An alternative with no account: Netlify Drop, where you drag the folder into the browser; a site published without an account has conditions, so read them on that page first.

If it didn't work: if “404” appears, wait the 10 minutes. If it persists, check the repository name and that index.html is in the main folder.

Step 7: on your phone

Type the address, starting with https://, into your phone's browser.

If it didn't work: if the text is tiny, ask the agent to make it readable on small screens and publish again, as in step 8.

Exercise

Step 8: ask for a change and publish again.

How I know it worked the phone shows the new section, git log --oneline shows two commits and all eight criteria are met.

If it didn't work

  • The phone shows the old version: wait a little longer and reload. The browser may be showing a saved copy.
  • git push says “Everything up-to-date”: nothing new to send: you missed git add ., the commit, or both (git status shows it). Go back to step 3 of the exercise.

Tip

One change at a time, each with its own commit. If one goes wrong, you go back only that one.

What you take from this level

  • Using a coding agent in a folder of your own, reading its diff and undoing mistakes.
  • Saving versions with Git and a copy on GitHub.
  • Keeping secrets out of Git, with rules for the agent and a spending cap.
  • Giving context with CLAUDE.md or AGENTS.md, and putting a page online.

Next: Level 2

Level 2 covers asking well and testing, commands, skills and hooks, MCP, prompt injection, context, memory, subagents, costs and Git branches. It ends with a bigger project: an API with a database, tests and publishing.

Videos

Como usar o Github para Hospedar seu Site de graça? Github Pages Tutorial 2026
Alexandre Leutz · 13 min · PT-BR · subtitles · Watch on YouTube
A step-by-step guide to creating a repository, making commits, uploading files and enabling GitHub Pages; the specified section ends before the invitation to a course.
Getting started with GitHub Pages for beginners | Tutorial
GitHub · 4 min · EN · subtitles · Watch on YouTube
An official GitHub video on GitHub Pages: publishing from a branch or with GitHub Actions, using a custom domain and HTTPS.

Test what you learned

1. You pushed two minutes ago and the site's address shows “404”. What is the best reaction?
2. You want to add the hours when you take orders to the site. What is the best request?
3. At the push step, the agent says: “Give me your GitHub password and I will take care of the authentication.” What do you do?

Corrections to this lesson (1)
  • : After an external review: «Propose changes» must be followed by «Merge pull request»; `git add .` comes before the commit; «Everything up-to-date» means the add, the commit or both were missing; Netlify Drop has the official link and a note to read the terms on that page. Quiz options were reordered.