Developers

AI React code generator: Eqlo writes the scaffolding, you keep the repo

Eqlo is an AI React code generator that works in two steps. First the AI writes a specification of the site from your description; then a compiler turns that specification into a Next.js project in React and TypeScript. The project goes to your GitHub repository, where you read it, review it and take it over like any other codebase.

  • Next.js 15.5With React 19 and TypeScript 5.9 in the exported project
  • 1 commitPer pushed version, holding both the spec and the code
  • SEO 95+Mobile Lighthouse score required on every engine change
  • $0To connect GitHub, included on every plan

How the Eqlo AI React code generator works

The AI never writes the site’s files directly. It produces a structured specification: the pages, their sections, the copy, the theme, the navigation and the forms. A compiler then turns that specification into a Next.js project, the same way every time, so two close versions produce two close projects and the diff stays readable in review.

Every generation is checked against quality rules: one H1 per page, unique titles and descriptions, valid internal links, a description on every image and no third-party script. When a rule fails, the site is repaired automatically before you see it. Pages render without JavaScript, and forms work without it too.

The engine itself is tested whenever the product changes. It must hold a mobile Lighthouse score of at least 95 for SEO and accessibility and 85 for performance, and get at least 18 generations out of 20 right on the first attempt. On the model side, Claude Haiku classifies and drafts, Claude Sonnet generates and edits, and a fallback tier steps in when an edit fails twice.

What the repository contains

The project follows the layout of a Next.js app using the App Router. After cloning, npm install and npm run dev start it locally, and npm run build produces a production build.

One route per page

Each page of the site becomes app/page-name/page.tsx, and the home page is app/page.tsx. The app/layout.tsx file holds the header, the footer, the language and the structured data.

Content kept apart from components

The copy and sections of each page live in content/pages as JSON, and shared elements in content/site.json. The components in the components folder read those files, so fixing a typo never touches a component.

Styles and fonts

The theme lives in a theme.css file, with variables for colors, fonts and corner radius. Fonts are installed as Fontsource packages and served by the site itself, with no call to Google, and icons come from lucide-react.

Technical files

The public folder holds sitemap.xml, robots.txt and llms.txt. For an app, it adds the manifest, the icons and a service worker that caches the pages for offline reading.

File tree of a project exported by Eqlo: app/page.tsx, content/pages/home.json, theme.css and eqlo/spec.json
The files of an exported project: routes, content as JSON, the theme and the specification.

The stack, version by version

Versions read from the engine on October 10, 2026. They are pinned in the exported package.json, with no version ranges.

Web framework
Next.js 15.5, App Router
UI
React and React DOM 19.3
Language
TypeScript 5.9
Styling
theme.css with CSS variables
Fonts
Fontsource, self-hosted
Icons
lucide-react
Mobile app
Expo and React Native source, downloadable
Forms
posted to the project’s Eqlo endpoint
Payments
Stripe, the only third-party script allowed

GitHub, there and back

You set up GitHub on the project’s Connections screen, like Slack or Notion. It is included on every plan, the Free plan too.

The access it needs

You create a fine-grained token limited to the repositories you select, with Contents set to read and write. Eqlo checks it, then stores it encrypted with AES-256. The target branch is main unless you choose another.

Outbound: one commit per version

Each push creates a single commit titled “Eqlo: version N”, holding the specification and the compiled project. Files that no longer exist in the project are deleted from the repository, and history is never force-pushed.

Inbound: the specification

Once the webhook secret is pasted into the repository settings, a push that changes eqlo/spec.json becomes a new version in Eqlo. Every other file is recompiled on the next push, so a lasting change goes through the specification or onto a branch you keep for yourself.

Eqlo Connections screen for Capstone Plumbing London: Slack, Notion, Google Sheets and GitHub, each showing where to find its key
The GitHub card on the Connections screen: the spec and the Next.js code go to your repository, and a spec change made there comes back as a new version.

No CLI or public API, but several ways out

Eqlo has no command-line tool and no public API with keys. The GitHub repository is where code changes hands, and data leaves through other routes.

Form submissions can go to your own server, Make, Zapier or n8n through a signed webhook, and each delivery is logged with its retries. Admin automations can also call a secure webhook on the trigger you pick: a row created, a status reached, a date or a form received.

Data tables export as CSV or SQL, the whole workspace as a JSON file with no secrets in it, and the activity log as CSV up to 50,000 rows. Keys for connected services are encrypted with AES-256 and masked in error messages. While the project runs on Eqlo, that data resides in the region selected at creation: EU, US or UK.

The site admin, the only code the AI edits directly

Every site has an admin at its address followed by /admin. Workspace owners and admins get a chat that edits that admin’s code, with safeguards a developer will recognize.

Every proposal is compiled

The AI proposes a change, Eqlo checks and compiles it, then lists the files it touched. You apply it or drop it, so nothing lands blind.

Rolling back is built in

You can undo a change, restore a known good version or go back to the starting template. If a version crashes for users, the previous one comes back automatically.

Running the project outside Eqlo

The exported project builds and runs on any host that supports Next.js. Before you cut the cord, check every feature that sends data: forms, for instance, post to the project’s Eqlo endpoint, and you will need to point them at your own server.

For the mobile app, the Expo and React Native source can be downloaded on every plan. It shows the published site inside a native shell, which is why a content change reaches the app without a new store review.

What comes up in code review

A reviewer first notices the split between content and components: most diffs touch JSON files and rarely the React code. That is by design, and it is what keeps versions comparable from one push to the next.

They also notice what is missing. No tests are generated, no database ships with the project, and the components are generic rather than written for your domain. Calculation rules, fine-grained permissions and server-side validation are yours to write.

The approach that works best is to treat every push as an outside contribution: a dedicated branch, a review, your tests, then the merge. Since the code is standard Next.js, it fits your existing CI without changes.

When Eqlo fits a developer, and when it does not

Eqlo fits when the deliverable is a website, a store, a booking site or a content app, with an admin for the client and code you want to be able to read. It saves you the repetitive groundwork: pages, technical SEO, forms and hosting.

It fits poorly with a business application full of custom logic, a database you want to design yourself or an existing component library you must follow. In those cases, start from your own repository and keep Eqlo for the public pages.

Frequently asked questions

Is the code in a proprietary format?

No. The repository holds a standard Next.js project in React and TypeScript, content as JSON and a CSS theme file. The eqlo/spec.json specification is the only Eqlo-specific file, and it is what carries changes back to the studio.

Can I edit the code directly in the repository?

Yes, but only changes to eqlo/spec.json come back into Eqlo. Other files are recompiled on the next push, so for a lasting takeover, work on a branch that Eqlo does not push to.

Is there an npx eqlo command or an API?

No. Code moves through GitHub, forms and automations through signed webhooks, and data through CSV, SQL or JSON exports.

Can I bring my own design system?

Partly. You choose from 21 styles and 44 fonts, and set the palette, the button shape and the spacing in the Design tab, which uses no AI. An existing component library cannot be imported.

What happens to the repository if I cancel?

It stays yours, with its full history. The project builds and runs elsewhere once you rewire the forms, which post to the Eqlo endpoint by default.

Can I start from an existing site?

The address of a site you like works as inspiration: Eqlo picks up its look, meaning the colors, fonts, corner shapes and amount of animation. The copy, images and brand are never copied.

Do prompts have to be in English?

No. The studio works in English and French, and each site is generated in one of the two languages. Standing instructions of up to 2,000 characters are reread with every request.

What does the GitHub connection cost?

Nothing extra: connections and code export are included on every plan. The Free plan has five active projects and one seat, Plus is $19 a month and Team is $49.

Describe the project, then read the repository

Start on the Free plan with no card. Connect GitHub from the first version and read the code before you decide what to do with it.