How to install Lunara on Android using a Mac

Lunara does what Flo does, and Flo costs $99.99/year. This guide gets you the free one.

What you end up with

Lunara running on your Android. It is free, and it stays free — there is no account, no trial and no subscription at the end of this.

Time
About 35 minutes
Steps
17
Cost
Free

Before you start

These are one-time installs. If you have used Terminal before, you may have them already — the first step checks.

  1. Install Git

    Apple opens a small installer.

    Type this into Terminal, then press Return.

    xcode-select --install

    You know this worked when: Git responds with a version number

  2. Install Node LTS

    Choose the macOS Installer (.pkg).

    Open download

    You know this worked when: Node responds with a version number

Install Lunara

  1. Open Terminal

    Keep it open beside this page.

    You know this worked when: Terminal is open

  2. Check Git and Node

    Git and the current Node LTS are required.

    Type this into Terminal, then press Return.

    git --version
    node --version

    You know this worked when: Git and Node respond with version numbers

  3. Install pnpm

    Lunara is a pnpm workspace.

    Type this into Terminal, then press Return.

    npm install -g pnpm

    You know this worked when: pnpm responds with a version number

  4. Copy Lunara to this Mac

    Type this into Terminal, then press Return.

    cd ~
    if [ ! -d lunara/.git ]; then
    git clone https://github.com/Blueturboguy07/lunara.git
    fi

    You know this worked when: A lunara folder appears

  5. Open the lunara folder

    Type this into Terminal, then press Return.

    cd lunara

    You know this worked when: Your terminal prompt is inside the lunara folder

  6. Use the reviewed version

    Type this into Terminal, then press Return.

    git checkout 197f66b4903de5b466938dbee3aa2bf97143eb0f

    You know this worked when: Git reports the reviewed commit

  7. Install dependencies

    Warnings — even red ones — are normal here. It only failed if the last line names an error.

    Type this into Terminal, then press Return.

    pnpm install

    You know this worked when: The command finishes without an error

  8. Build the app bundle

    This also copies the bundle into the phone project.

    Type this into Terminal, then press Return.

    pnpm --filter @lunara/app native:sync

    You know this worked when: The command ends with a sync summary

  9. Install Android Studio

    Accept the standard setup so it installs the SDK.

    Open download

    You know this worked when: Android Studio opens to its welcome screen

  10. Unlock Developer options

    On the phone: Settings → About phone → tap Build number 7 times. A toast says you are a developer.

    You know this worked when: The phone congratulates you — Developer options exists now

  11. Turn on USB debugging

    Settings → System → Developer options → USB debugging — it lets this computer install your build.

    You know this worked when: Developer options shows USB debugging on

  12. Open the Android project

    The first open downloads Gradle and takes a few minutes.

    Type this into Terminal, then press Return.

    pnpm --filter @lunara/app native:android

    You know this worked when: Android Studio opens with the Lunara project

  13. Plug in your phone

    Tap Allow. If nothing appears, try another cable — that is the usual cause.

    You know this worked when: Your phone appears in the device menu

  14. Press Run

    The ▶ button at the top of Android Studio.

    You know this worked when: Android Studio reports the app installed

  15. Open Lunara on your phone

    You know this worked when: Lunara opens on your phone

If something goes wrong

Nothing here can damage your computer, and every step can be run again safely. If a command fails, the usual cause is the step before it not having finished.

Still stuck? Tell us what happened and we will fix the guide. Include the step number and we can usually reproduce it.

Have a different setup?