← Docs

Create an app from GitHub

Import a repository: an Expo or React Native app stays synced with GitHub, any other app is rebuilt in React Native by the AI.

Already have an app on GitHub? Bloxks can turn it into a Bloxks project in a few clicks. If it's written in Expo or React Native, your code is imported as is and stays connected to its repository. If it's written in another language (Swift, Kotlin, Flutter, React for the web…), the AI reads it and rebuilds it in React Native, as close to the original as possible.

Before you start

  • A GitHub account that owns the repository (or has write access to it). Bloxks reads the code with this account and, for Expo / React Native apps, saves your changes back to the same repository.
  • A paid Bloxks plan, like every builder feature.
  • A repository of reasonable size: up to 3,000 files and 150 MB. Files over 3 MB are skipped.
  • Nothing to clean up first. Build folders (node_modules, ios/Pods, dist…), hidden files and secrets (.env, private keys, google-services.json) are never imported.

Step by step

  1. Open the import window. On the builder home page, click + in the message box, then Import from GitHub.
  2. Paste your repository's link in the field (https://github.com/you/your-app). If GitHub is already connected, Bloxks reads it straight away and tells you the number of files, the kind of app detected (Expo, React Native, Swift, Kotlin, Flutter, React…) and what's going to happen.
  3. Click "Import and start". The first time, a GitHub window opens and asks you to authorise Bloxks: accept with the account that owns the repository. It's then remembered for all your projects.
  4. Let Bloxks work. It downloads the repository, creates the project (named after the repository) and starts working.

If your app is in Expo or React Native

Your code becomes the project, file for file. The AI's first pass doesn't rewrite your app, it makes it run on Bloxks:

  • it aligns your dependencies with the Expo version Bloxks uses;
  • it fixes whatever prevents the preview from starting;
  • it wires your repository's images and fonts back where the code uses them.

The project then stays connected to its repository, in both directions:

  • every change made in Bloxks is saved as a commit in your repository;
  • every change you push from somewhere else (your computer, another editor, a teammate) is picked up when you open the project or come back to the tab;
  • if the code changed on both sides, Bloxks doesn't overwrite anything: a banner asks you which version to keep, and the other one stays in your history.

Images, fonts and other non-code files of the repository always stay in the repository, even though the project itself only keeps the code.

If your app is in another language

Swift, Kotlin, Flutter, React for the web or anything else: Bloxks can't run that code as is, so the AI rebuilds the app in React Native.

  1. Analysis first. The AI reads the whole repository and lists the screens, features, data and colours it found, plus what can't be carried over (home-screen widgets, Apple Watch apps, Live Activities, augmented reality, system extensions…).
  2. You approve the plan. Nothing is built before you agree.
  3. Rebuild. The AI reproduces the app as closely as possible: same design, same logic, same texts.

Your original repository is never modified. The new project is a separate React Native app; you can save it to its own GitHub repository at any time from the account menu (Save to GitHub).

Good to know

  • Repository already connected to another project: a repository serves one project at a time. Bloxks warns you before importing: disconnect the old project (it keeps its code, but stops saving to GitHub), or let the new one save to a separate repository.
  • "Repository not found": you're probably connected with a different GitHub account, or the repository belongs to an organisation that hasn't allowed Bloxks yet. On GitHub, go to Settings → Applications → Authorized OAuth Apps → Bloxks and grant access to the organisation.
  • Imported without sync: if your account can read the repository but not write to it, the app is imported but not kept in sync. Ask the owner for write access, or fork the repository and import your fork.
  • Your secrets are not imported: add your API keys again in Connections so the app can use them safely.
  • Monorepos work: Bloxks looks for the package.json up to two folders deep to recognise an Expo or React Native app.