Install
Two paths in. Most people only need the one-line install — no Docker, no manual setup.
curl -fsSL https://gitlab.com/eim_opensource/gravity/-/raw/master/scripts/install.sh | bash
install.sh --statusis it running?install.sh --logstail the server loginstall.sh --theme=clarityswitch themes and restartinstall.sh --stopstop the servergit clone https://gitlab.com/eim_opensource/gravity.git && cd gravity cp .env.example .env make dev
make editorrebuild with admin unlocked, sample content seededmake upstart without rebuildingmake theme-listlist available themesgitrequired either wayPython 3.10+for the one-line install (no Docker)Docker + Docker Composefor the Docker path insteadNode.jsoptional — only for Vercel or Cloudflare deploysgcloud CLIoptional — only for Google Cloud Run deploysAn Adhara accountoptional — only if you want the real CMS backend instead of local JSONPrompt an AI coding agent
Point one at the folder the install created. It reads the theme system and file layout on its own.
Claude Desktop or the ChatGPT desktop app (Codex). No terminal — point it at
~/projects/opensource/gravity (or wherever you installed it) through a
filesystem extension or local environment, and it edits files there directly, asking
you to approve each change.
Open a terminal in the repo and start claude or codex. Same idea,
but it can also run commands, install packages, and carry a multi-step task through to a
working, tested result — not just edit files.
Edit the homepage
Three ways in, from “just ask an AI” to point-and-click, no code at all.
The homepage lives at views/clarity/index.j2, styled entirely from
public/themes/clarity/main.css. Tell an agent what to change in plain
language and it edits both.
Update the homepage hero headline, subtitle, and eyebrow badge to describe my business, then reorder the sections below it to put the feature grid first.
The built-in Visual Editor lets you click text on the live page and type, add or reorder
whole sections, and upload images — no code. Set GRAVITY_DEV_ADMIN=1 in
.env locally (or sign in as a real admin once Adhara is connected), then open
/admin/editor.
Colors, shadows, opacity, and the gradient headline text can be dragged and dropped without
touching CSS — changes preview instantly, then Publish to make them permanent. Set
GRAVITY_DEV_THEME_TWEAKS=1 alongside admin access, and look for the palette icon
in the corner of any page.
Build a new form
Every form on a Gravity site talks to the same one endpoint. Copy a working example and change what it asks.
/forms has live, working examples of single-step and multi-step forms — open it, view source, and copy the markup you need. Every one of them submits the same way:
The form_slug has to exist in your Adhara workspace first — create it and its
fields from the Adhara dashboard, or ask an agent with the AdharaFormsManage skill to set it
up from the CLI.
Add a /contact page with a form (name, email, message) styled like the ones on /forms, that posts to /api/forms/submit with form_slug "contact". Show a success state when it submits.
Build a landing page
Not a special mode — a page like any other, just built for one job instead of ten.
A landing page is a route, a controller, and a template, exactly like every other page on the site — it just leaves out the full site nav and everything else that isn't the one thing you want a visitor to do. A good one usually has:
Add a new /webinar landing page: a route, a controller, and a template extending this theme's base.j2. A full-bleed hero with one headline and one CTA button, three benefit bullets below it, and a lead-capture form (name + email) posting to /api/forms/submit with form_slug "webinar-signup". Don't add it to the main nav.
Deploy to the web
One command, once you're ready. Pick a platform — all three work from the same repo.
The most production-tested path. Requires the gcloud CLI and Docker.
make deploy-gcp
No Docker — runs as a Python serverless function. Requires Node.js.
make deploy-vercel
Same Dockerfile, proxied by a small Worker. Requires Docker and Node.js.
make deploy-cloudflare