The Get Key path

From zero to a live.
Step by step.

No technical background needed. Each step tells you what you're doing and why — so you understand it, not just copy it. Estimated time: about 30 minutes the first time.

A colorful illustration representing the GitQi project

Build your first website.

On this page, you will get setup with the following...

A Live Website

Your website will be live at <user>.github.io/<site>, with the ability to customize your domain later.

💻

Local Editing

Your website lives on your computer, edit by clicking in your browser, or create content with AI.

🚀

One-Click Publishing

Click Publish to push the changes from your computer to the live site.

What you'll need

A short list of what you need.

All the pieces you need before you start. Everything is free, nothing requires a credit card, and each account is set up in the steps below.

🌐

A Chromium-based browser

Chrome, Edge, Brave, Arc — any Chromium browser works, as we depend on the File System Access API.  
Edits are made to local files through an editor in the browser.

💾

A free GitHub account

Where your site's files live and from which GitHub Pages serves your website, for free, forever. Setup below.
Li <username>.github.io/<site> (can customize)

A free Gemini account

Google AI Studio provides the free API key GitQi uses to generate new sections and pages for your site. Setup below.

🤖

A free Claude.ai account

Where you run the bootstrap prompt that generates the first version of your website's HTML. Setup below.

How it works

From zero to live.

Setup accounts and get keys

One-time setup for all required tools and security.

Setup the required tools and create a secrets.js file

One-time setup — create the accounts, generate the keys, save them into a single local file that never leaves your computer.

Build, edit and publish your site

Create and manage your website with AI, then publish with a click.

Iterate and Publish with AI-Powered creation and in-line editing

Leverage AI to generate your initial site structure from a prompt, then refine and expand its content directly in your browser with intuitive editing. Add new sections with AI prompts and publish your polished HTML to GitHub with a single click for instant deploys.

Setup the required tools

Make your accounts and gather your keys.

Four short setup tasks. Do each once, keep the credentials safe, and you're done with setup forever. The final sub-step collects everything into a single secrets.js file used in the next section.

Setup · GitHub

Setup a GitHub repo and get a token.

What you're doing: making a home on GitHub for your site's files to live, then giving GitQi narrow permission to push files into that one repository.

Why it matters

GitHub is where your site will live. GitQi publishes by pushing your HTML file to a GitHub repository, and GitHub then serves it as a live website through GitHub Pages — for free, forever, with no subscription. To push on your behalf, GitQi needs a Personal Access Token — scoped only to this one site repository, with no access to anything else on your account.

How to do it

Create the repository:

  1. Go to github.com and create a free account if you don't have one.
  2. In the top-right, click the + icon → New repository.
  3. Name it something simple and lowercase with hyphens, like my-pro-site.
  4. Set it to Public (required for free GitHub Pages).
  5. Leave every other option at its default. You do not need to add a README, a .gitignore, or a license — GitQi will populate the repository for you.
  6. Click Create repository. You'll land on a page that says something like "Quick setup — if you've done this kind of thing before". The repository exists but is empty. That's exactly what we want.

Create the access token:

  1. Click your profile photo (top-right) → Settings.
  2. Scroll to the bottom of the left sidebar → Developer settings.
  3. Click Personal access tokensFine-grained tokens.
  4. Click Generate new token.
  5. Give it a name like gitqi-my-pro-site so future-you remembers what it's for.
  6. Set expiration to Never expire, or expire in 1 year (in which case you'll repeat this step once a year).
  7. Under Repository access, choose Only select repositories and pick the repository you just created.
  8. Under Permissions → Repository permissions, find Contents and add it, then set it to Read and write.
  9. Click Generate token and copy the token immediately — GitHub only shows it once. It starts with ghp_.

Done when

You have an empty repository created and a token string starting with ghp_ copied somewhere safe (a notes app is fine — you'll move it into secrets.js shortly).

🔒 Your repository is public, which means anyone can see your site's HTML — that's normal and expected for GitHub Pages. Your credentials (API keys, tokens) will never be in the repository. The token itself is scoped to this one repo, cannot access anything else on your account, and you can revoke it with one click if it's ever exposed.
Setup · Gemini

Setup Gemini and get an API key.

What you're doing: grabbing a free key from Google AI Studio so GitQi can generate new sections and pages for your site.

Why it matters

GitQi uses AI to help you add new content — describe a section and it appears, styled to match your site. Google AI Studio provides a free API key with a generous usage limit — no billing, no credit card, no payment details required. It's the easiest free AI key on the internet.

How to do it

  1. Go to aistudio.google.com and sign in with your Google account (Gmail works fine).
  2. Accept the terms of service if prompted.
  3. Click Get API key in the left sidebar (or go directly to aistudio.google.com/api-keys).
  4. Click Create API key. If AI Studio asks you to pick a Google Cloud project, let it create a new one for you — you don't need to configure it.
  5. Copy the key that appears. It starts with AIza.

Done when

You have a key string starting with AIza copied somewhere safe.

🔒 Google will never ask you for a payment method to create this key. If you see a prompt about "enabling billing", you're in the wrong place — step back to AI Studio (not Google Cloud Console) and try again.
Setup · Claude.ai

Setup Claude.ai for the bootstrap prompt.

What you're doing: creating a free Claude.ai account — the AI you'll use to build the first version of your website from the GitQi bootstrap prompt.

Why it matters

GitQi doesn't use templates. Instead, it uses your ideas plus an AI to generate an HTML file (or multiple) that matches your business, your tone, and your visual taste — from the ground up. Claude.ai's free tier is well-suited to running the GitQi bootstrap prompt and producing a complete starter page. You describe it; Claude builds it. Everything it produces, you can edit word-by-word on the page later.

How to do it

  1. Go to claude.ai.
  2. Click Sign up and register with your email (or continue with Google).
  3. Verify your email if prompted, accept the terms of service, and complete the brief onboarding.
  4. That's it — you're logged in and ready to paste prompts. No API key, no billing, nothing to copy.

Done when

You're signed in at claude.ai and can see the chat interface. You'll come back here in the Building & Editing section to paste the GitQi bootstrap prompt.

💡 You'll use Claude.ai once to generate your starter HTML, then occasionally afterwards if you want to bootstrap a whole new page from scratch. Day-to-day editing and new-section generation happens inside GitQi itself, using your Gemini key.
Setup · secrets.js

Create your secrets.js file.

What you're doing: saving your keys into one small file that lives only on your computer. It is never published.

Why it matters

GitQi needs to know your GitHub token, your Gemini key, and which repository to publish to. Rather than asking you every time, it reads these values from a file called secrets.js that sits next to your HTML. This file is the only thing you configure. It never gets uploaded — GitQi is specifically designed to strip it out before publishing.

How to do it

  1. Create a new folder on your desktop for your site (for example, my-pro-site/). This is where secrets.js and your index.html (and any other html files) will live side by side.
  2. Open a plain-text editor (Notepad on Windows, TextEdit on Mac — on Mac, switch to plain-text mode under Format → Make Plain Text).
  3. Paste the following exactly:
// secrets.js — lives beside your HTML, never published
window.SITE_SECRETS = {
  geminiKey:   "AIza...",              // your Google AI key
  githubToken: "ghp_...",              // your GitHub token
  repo:        "username/my-pro-site", // your GitHub username / repo name
  branch:      "main"
};
  1. Replace the placeholder values with your actual Gemini key, GitHub token, and username/repository.
  2. Save the file as secrets.js in the folder you created.

Done when

Your folder contains secrets.js with your real keys in place. You'll add index.html next to it in the first sub-step of Building & Editing.

🔒 This file never leaves your computer. GitQi publishes by stripping secrets.js entirely before pushing anything to GitHub. Your credentials are never in your repository and never on the internet.
Building & editing the site

Build it, edit it, ship it.

With setup done, everything from here on is just editing and publishing. Generate your starter HTML, link the folder, click to edit, and publish when you're ready.

Build · Bootstrap prompt

Use the bootstrap prompt to create the initial site.

What you're doing: writing a description of your site so Claude can build the first version for you.

Why it matters

This is the creative spark — a single prompt that becomes your starting HTML. Don't try to make it perfect here; establish a starting theme you're happy with. Everything it produces, you can edit word-by-word on the page later.

How to do it

  1. Open the Bootstrap Prompt from the GitQi repository, and copy into a text editor (eg: Notepad, TextEdit, etc).
  2. Replace the [bracketed] content - your name, your business, a tagline, the sections you want, and the vibe or feel you're going for. Be specific — "warm, earthy, handcrafted" is more useful than "nice".
  3. Gather 2–5 screenshots or photos of sites, palettes, or designs you like. These are attached to the prompt, not uploaded anywhere permanent.
  4. Open Claude.ai (the account you set up above), paste customized prompt, attach your images, and send it.
  5. Copy the HTML it produces and save it as index.html, along with any other pages that may have been generated.

Done when

You have an index.html file — your site's starting point.

💡 The AI-generated HTML is a starting point, not a final product. You can edit every word of it directly on the page — that's what GitQi is for.
Build · Folder

Put secrets.js and index.html in the same folder.

What you're doing: placing the two files next to each other so GitQi can find your keys when the page loads.

Why it matters

GitQi activates only when it finds secrets.js sitting next to your HTML file. This is how it stays local-first — there's nothing to configure in a dashboard, no server to talk to. Your folder is the whole setup.

How to do it

  1. Move the index.html and any additional pages you just saved into the same folder that holds secrets.js (the folder you created in Setup, for example my-pro-site/).
  2. Make sure both files are at the same level — not in sub-folders, not zipped.

Done when

Your folder looks like this:

my-pro-site/
├── index.html
└── secrets.js    ← stays on your machine, forever
Build · Open

Open the HTML file in your Chromium browser.

What you're doing: loading your local index.html in a Chromium-based browser so the GitQi toolbar appears.

Why it matters

GitQi runs entirely in the browser. When it detects secrets.js next to your HTML, it turns the page into an editor — a toolbar appears at the top, and every element becomes clickable. No install, no build step.

How to do it

  1. Open Chrome, Edge, Brave, or another Chromium-based browser. Safari and Firefox don't yet support the File System Access API GitQi uses.
  2. Drag your index.html file into a browser window — or use File → Open File, or right-click the file and choose Open With.
  3. You'll see the GitQi toolbar appear at the top of the page.
  4. Click Select Folder in the toolbar and choose your my-pro-site/ folder. This links GitQi to your files so changes save automatically as you edit.

Done when

The GitQi toolbar is visible at the top of the page and your folder is linked. You're now in edit mode.

Build · Inline editing

Edit the content with the inline editor.

What you're doing: changing text, formatting, and images directly on the page — no forms, no dashboards, just the page itself.

Why it matters

The AI-generated HTML is a starting point. Almost nothing on the page will match your voice perfectly out of the gate, and that's by design. GitQi lets you adjust it in place — see your change, keep what works, change what doesn't.

How to do it

  1. Click any text to put the cursor in it and start typing.
  2. Select text to bring up formatting options — bold, italic, fonts, colors, links.
  3. Click any image to swap it for one from your computer.
  4. Changes save to your folder automatically as you edit — no "save" button.

Done when

The page reads the way you want it to read, in your own words.

Build · AI sections

Create new content and sections with AI.

What you're doing: using your Gemini key to generate new sections, reformats, or whole pages — styled to match the rest of your site.

Why it matters

Adding "a testimonials section" or "an FAQ about shipping" usually means fighting a template or writing HTML by hand. In GitQi you describe it in a sentence and a matching section appears. The site grows with your business, not against it.

How to do it

  1. Use + Add Section (between sections) to append a new zone, or ⟳ Reformat on any existing section to rework it.
  2. Use + Add Page in the toolbar to create an entirely new HTML file that inherits the same nav, footer, and styles.
  3. Describe what you want in plain language — "a three-column pricing section with an annual / monthly toggle" works better than one-word prompts.
  4. Review the generated section inline. Keep editing with the inline editor, or undo and prompt again.

Done when

The site has the sections and pages you need, styled consistently with the rest of the page.

💡 Your Gemini key is used directly from your browser to Google's API. Nothing is logged or relayed through a GitQi server — there isn't one.
Build · GitHub Pages

Update GitHub Pages to deploy main.

What you're doing: telling GitHub to serve the main branch of your repository as a live website. A one-time step.

Why it matters

GitHub Pages is the free service that turns the files in your repository into a live website. You tell it which branch to serve from — we'll point it at main, which the first publish (next sub-step) creates. Once configured, every subsequent publish automatically redeploys.

How to do it

  1. Go to your repository on GitHub.
  2. Click Settings (in the repository's own menu bar — not your account settings).
  3. In the left sidebar, click Pages.
  4. Under Source, choose Deploy from a branch.
  5. Set Branch to main and Folder to / (root).
  6. Click Save.

Done when

Pages is set to deploy from main. If main doesn't exist yet (brand-new repo), Pages will start serving the moment your first publish creates it.

💡 This is a one-time setup per repository. You never have to touch Pages settings again — future publishes redeploy automatically.
Build · Publish & live

Publish and view it live.

What you're doing: clicking Publish, which pushes your clean HTML to GitHub. GitHub Pages serves it as a live website.

Why it matters

This is the moment everything becomes real. GitQi strips the editor code and your secrets.js, then pushes the clean HTML to GitHub. The first publish also creates the main branch Pages needs to serve from — so the very first click is what brings the site online.

How to do it

  1. In the GitQi toolbar, click Publish.
  2. Wait for the "Published ✓" confirmation. The first publish takes a little longer because it creates main in your repo.
  3. Visit https://<username>.github.io/<my-pro-site>/. The first deploy takes about a minute — refresh if it's not live yet.
  4. For every future edit: click Publish, wait a few seconds, refresh.

Done when

Your site loads at the GitHub Pages URL. 🎉

🔑 You're in. You have the key now. From here, everything is just editing. Open your local index.html in Chrome whenever you want to change something — click, type, click Publish.
Advanced · Custom Domain (optional)

Add a custom domain.

What you're doing: using your own domain (e.g. my-pro-site.com) instead of the free username.github.io URL.

Why it matters

Using a custom domain enhances your site's branding and professionalism, making it more memorable and potentially improving SEO.

How to do it

  1. Add CNAME file: Create a file named CNAME (no extension) in your src folder. This file should contain only your domain name (e.g., my-pro-site.com). If you want www.my-pro-site.com, put www.my-pro-site.com in it.
  2. Publish: Click the Publish button in GitQi. This will push your site, including the CNAME file, to GitHub Pages.
  3. Configure DNS (Registrar): Go to your domain registrar (e.g., GoDaddy, Namecheap, Cloudflare, etc.) and configure your DNS settings:
    • Apex Domain (my-pro-site.com): Create an A record pointing to GitHub Pages IP addresses: 185.199.108.153, 185.199.109.153, 185.199.110.153, 185.199.111.153.
    • www Subdomain (www.my-pro-site.com): Create a CNAME record pointing www to <username>.github.io (e.g., swill.github.io).
    • Note: It might take some time for DNS changes to propagate globally (up to 48 hours, though often faster).
  4. Enforce HTTPS (GitHub Pages): After DNS propagation, go to your GitHub repository settings, navigate to the Pages section, and check Enforce HTTPS. This ensures your site is served securely. Important: This option will only appear once your DNS records have successfully propagated and GitHub has recognized your custom domain.

Done when

Your site loads at your custom domain (e.g., https://my-pro-site.com or https://www.my-pro-site.com). 🚀

⚠️ Heads up: DNS changes can take time to propagate, so your custom domain might not be live instantly. Be patient and keep an eye on your GitHub Pages settings for the 'Enforce HTTPS' option.
What's next

You've got the key. Where next?

Explore every feature

The editor has more tricks — reformatting, AI-generated sections, multi-page sync, favicon swap. A guided tour of what's possible.

Get the Qi

You've got the key — now go deeper. The local-first philosophy, self-hosting gitqi.js, the OSS source you can read and fork.