How to install FreeHarmony on Mac

FreeHarmony does what FaceHarmony does, and FaceHarmony costs $107.88/year. This guide gets you the free one.

What you end up with

FreeHarmony running in your browser, on your own computer. It is free, and it stays free — there is no account, no trial and no subscription at the end of this.

Time
About 10 minutes
Steps
12
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 FreeHarmony

  1. Open Terminal

    Keep it open beside this page.

    You know this worked when: Terminal is open

  2. Check Git and Node

    Use Terminal. Node 20.9 or newer is 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

    FreeHarmony 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 FreeHarmony to this Mac

    Type this into Terminal, then press Return.

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

    You know this worked when: The freeharmony folder exists

  5. Open the FreeHarmony folder

    Type this into Terminal, then press Return.

    cd freeharmony

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

  6. Use the reviewed version

    Type this into Terminal, then press Return.

    git checkout 420374370549f7e90603f030820128bfc9f62fc0

    You know this worked when: Git reports the reviewed commit

  7. Install dependencies

    Type this into Terminal, then press Return.

    pnpm install --frozen-lockfile

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

  8. Run FreeHarmony

    Keep Terminal open.

    Type this into Terminal, then press Return.

    pnpm dev

    You know this worked when: localhost:3000 responds

  9. Open FreeHarmony

    If Next.js printed a different port, open that one instead.

    Open localhost:3000

    You know this worked when: FreeHarmony loads in the browser

  10. Try one scan

    Allow the camera or upload a photo — a second later you get your Harmony score and metrics.

    You know this worked when: A Harmony result is displayed

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?