Getting started

Import an app

Bring in an app you already have: from a GitHub repository, a ZIP, Lovable, Bolt, v0 or Base44, a Figma frame, a Canva design, or a spreadsheet. What it costs, what is rebuilt and what is not.

You do not have to start from nothing. If the app already exists somewhere else, Setherion can read it and rebuild it here, and from then on it is an ordinary Setherion app that you change by asking.

There are five ways in. Which one fits depends on what you have.

You haveUseWhat you get
An app on GitHub, or made in Lovable, Bolt, v0 or Base44Import an appThe app rebuilt here: the same pages, text, design and data structure
The code as a .zip fileImport an appThe same
A design in FigmaImport from FigmaA frame the next build or change is made to match
A design in CanvaImport from CanvaThe pages of the design, as images to place in the app
A spreadsheet or a catalogueImport an app, or Import a catalogue inside an appAn app built around your rows, or your rows added to an app you have

Import an app

This is the way in for code. It is on the dashboard, in three places: Import an app in the + menu beside the box, Import in the left column, and Import an app in the command palette (Ctrl K).

Choose where it comes from

The window offers GitHub, ZIP file, Lovable, Bolt, v0 or Vercel, Base44 and Spreadsheet. The builder cards walk you through getting the code out of that builder; the GitHub and ZIP cards are for code from anywhere.

Give it the code

Either drop a .zip, or give a GitHub repository. Every card has both tabs, ZIP upload and GitHub. Lovable and Base44 open on GitHub, Bolt and v0 on ZIP.

Rebuild it

Check the name, see how many files will be read and what the app costs, and press Rebuild in Setherion. Setherion reads the code, which usually takes a minute or two. Keep the window open: the build starts by itself when the reading is done, and the app opens in the editor.

From GitHub

Paste the address of a repository, like https://github.com/owner/name, or just owner/name, and press Import. A public repository needs nothing else.

For a private one, press Connect GitHub in the same window. It signs you in to GitHub once, and then you can search your own repositories, private ones marked Private, and pick one. This is the same GitHub connection that exporting to GitHub uses. The list shows your 100 most recently pushed repositories; any other one can still be imported by pasting its address.

The default branch is the one that is read. A repository larger than 60 MB is refused: download it as a ZIP without its pictures and videos, and import that.

From a ZIP

Drop a .zip on the window, or choose one. The ZIP is opened in your browser, and only its code is sent on. A ZIP over 80 MB is refused, so leave the pictures and videos out of it.

From Lovable, Bolt, v0 or Base44

These builders keep some of what makes an app work, such as its data and its server logic, outside the code. So the window gives you an export prompt. It asks that builder's own AI to add one file, SETHERION_EXPORT.md, which describes the app's pages, its data, its server logic and its accounts, with a few invented example records per table. It is told never to write keys or passwords into it.

Copy the export prompt

Press Copy export prompt, or Show it to read it first.

Paste it into the builder's chat

It adds the file to the project.

Get the code out

Lovable: connect the project to GitHub from Lovable, or download it as a ZIP. Bolt: download the ZIP, or push to GitHub. v0: download the ZIP, or use the repository your Vercel project deploys from. Base44: if your Base44 plan includes exporting the code, send it to GitHub or download it as a ZIP.

Import it here

Setherion reads SETHERION_EXPORT.md first. If the file is not there, the window says so and the app is rebuilt from the code alone.

What is read

Setherion reads the text files of the project: code, styles, HTML, SQL, Markdown and the like. Secret files, installed packages, build folders, tests, lock files, pictures and fonts are not read. Any key that appears in the code anyway is blanked out before anything is read by a model.

A very large project is read from the most telling files first, such as the pages and the data, and the window says how many files will be read and how many were left out for room.

Any web app works: React, Next.js, Vue or plain HTML.

What is rebuilt, and what is not

It is a rebuild, not a copy of the code. A model reads the project and writes a plain description of what it does, and the app is then built from that description. The code itself is never copied across.

Comes overDoes not
The pages and their text, in their original languageThe code itself, line for line
The design and the coloursThe old backend, and any keys or secrets
Forms and how the app behavesThe records in the database
The structure of the dataPictures stored inside the project
Pictures that have a web addressServer functions and payments, exactly as they were

Server functions and payments are described and rebuilt in Setherion's own way, and may need a few changes afterwards. Accounts are rebuilt as sign-in on Setherion's backend, not moved. Pictures stored in the project are replaced with matching photos that you can swap.

If the data lived in Supabase, Base44, Firebase or Prisma, its structure comes over but not the records in it. To bring records in, see the spreadsheet import below.

What it costs

An import costs a new app plus reading the code, which is about 40% on top of the price of the new app. The window shows the price on the button before you press it, and spends nothing until you do. A new app is built in the standard Seth mode whatever you have chosen in the Build menu.

Your first import is free. Once per account, the build is on us, so you pay nothing. If you picked a model dearer than the one your plan uses by default, you pay the difference when the build runs. If the first import fails, you still have it.

If the reading fails on a paid import, the credits for it are given back. If you do not have enough credits, the button says so and nothing is charged. See Plans and credits.

Importing is open on every plan, Free included. The first import being free applies to code imports; the spreadsheet card below is priced as a new app with no reading charge, and is not part of the free first import.

Import from Figma

Figma is not an app import. It gives the builder a frame to copy the look of, for a new app or for a change to one you have. It is in the + menu: Import from Figma on the dashboard (inside Import a design where Canva is offered too), and Design then Import from Figma in the editor.

Connect Figma

The first time, press Connect to Figma. It asks for read-only access; Setherion can never change your files.

Copy the link to a frame

In Figma, right-click the frame you want and choose Copy link to selection. A link like figma.com/design/KEY?node-id=1-234 is what is wanted, not the address of your files list.

Paste it and press Import frame

The frame is drawn, and its colours, fonts and corner sizes are read from the file. It arrives in the box as an attachment, and the next request is built to match it.

Importing the frame costs no credits. The build or change that uses it is charged as usual.

What Figma requires
  • An Editor seat in Figma. Figma blocks its API for View and Collaborator accounts, so a file you can read in your browser can still be refused here.
  • A Design file. FigJam boards and Slides cannot be imported.
  • A file the connected account can open. One in somebody else's team, or opened from Community without duplicating it to your own drafts, will not open.

The window opens this list by itself when an import fails.

Import from Canva

Canva designs come in as pictures, not as a layout to rebuild. Open the design in Canva, copy the address from the browser (it has /design/ in it), and paste it into Import from Canva. Its first three pages arrive in the box as images, ready to place in the app. The design has to be yours or shared with you, and a short canva.link address is refused: use the long one. The first time you will be asked to Connect to Canva, and nothing in Canva is changed.

Importing costs no credits. The build that uses the images is charged as usual.

Import from Canva only shows in the menu where Canva is available to your account.

From a spreadsheet

There are two spreadsheet imports, for two different jobs.

A new app built around a spreadsheet

In Import an app, choose Spreadsheet and give it an Excel (.xlsx) or CSV file. Save a Google Sheet first with File, then Download. Older .xls files, .ods and .numbers files must be saved as .xlsx or .csv. A file over 30 MB is refused.

The file is read in your browser. Then you see its columns, each with the kind of thing it holds, such as text, number, date, email or picture, and the first five rows. Untick any column the app should not have, say what the app is for if you like, and press Build the app. Reading the spreadsheet costs nothing; the button shows the price of a new app.

What you get is an app around your rows: search, a page for each row, and a form to add and edit. Your rows are copied in exactly as they are, after the code is built, so the very first preview shows your own data and no AI retypes it. The AI itself sees only the column names and the first five rows.

Up to 300 rows are copied in. If your file has more, the window says how many the app starts with, and the rest can be added after it is built with Import a catalogue, below.

If a column looks like a personal detail, such as an email, a phone number or a salary, the window warns you that anyone who opens the published app can read it. Untick it if the app does not need it.

A workbook with several sheets asks which one to use; one sheet becomes one list. Cell colours and formatting do not come over, and the values of formulas do.

Rows added to an app you have (Import a catalogue)

Open the app, then Manage, then Database, and choose Import a catalogue. Give it a CSV or Excel (.xlsx) file, from Excel, Sheets or Shopify. It is read in your browser and never uploaded, so its size does not matter, and it costs nothing.

The app needs a list for the rows to go into, such as a product list. If it has none, ask for one in the chat first. Setherion matches your columns to the list's fields by name, and you can change each match. Shopify files with variants are folded into one row per product.

Then you choose where the rows go.

  • In the app is instant. It suits up to about a thousand rows; beyond that the site loads slowly and stops saving, so an import that would make the app too heavy is refused.
  • In the database takes a moment to upload and handles a full catalogue. The app reads it a page at a time. This is the choice offered by default for a file of more than 800 rows. It is also the only choice when the list already reads from the database.

The Free plan's database holds up to 10,000 rows for an app. The paid plans hold up to 500,000. See Cloud.

If an import fails

The window says why, in plain words. The ones you are most likely to meet:

  • "We could not find owner/name." For a private repository, press Connect GitHub first. If you are connected, the connected account may not be able to read it.
  • The repository or ZIP is too large. Leave pictures and videos out of the ZIP.
  • "There is no code in this ZIP that we can read." The files inside are not text code, or all sit in folders that are never read, such as node_modules.
  • The Figma frame is refused. Open "What Figma requires" in the window. A frame that renders too large works better as one screen than a whole page.
  • "This import costs N credits and you have M." Buy credits or wait for your monthly allowance. See Plans and credits.

Was this page helpful?

Join the community

Questions, ideas and what others are building.