Installation

DartNative ships as the dn CLI plus the dartnative package. The official demos — the playground, every tutorial, and every plugin example — run free with no account and no key (including release builds, so you can benchmark real performance). To build and ship your own apps, pick a plan at dartpub.dev.

Before you start (Android)

You need the Android SDK 36 and its build-tools — dn refuses to build against older platforms. If you have Android Studio, install “Android 16 (API 36)” from its SDK Manager; from the command line:

sdkmanager "platforms;android-36" "build-tools;36.0.0" "platform-tools"

Run dn doctor at any point: it tells you exactly what is missing.

Install the CLI

macOS / Linux — one command; it unpacks the SDK to ~/zero and adds ~/zero/bin to your PATH:

curl -fsSL https://cdn.dartnative.com/install.sh | sh

Windows — open PowerShell and run:

curl.exe -fsSL https://cdn.dartnative.com/dn_infra/sdk/latest/dn-sdk.tar.gz -o dn-sdk.tar.gz
tar -xzf dn-sdk.tar.gz -C $HOME

This unpacks the SDK to a zero folder in your home directory. Two more steps for Windows:

  1. Search Windows for “environment variables” and add %USERPROFILE%\zero\bin to Path.
  2. Install Git for Windows if you don’t have it — dn needs it.

Open a new terminal and verify:

dn --version

The first run downloads the prebuilt engine (a few hundred MB) into ~/zero/bin/cache/. Re-run the install command any time to update — your engine cache is kept, so updates are quick.

Try it free — run a demo

The fastest way to see DartNative is to run an official demo — no account, no key, nothing to configure:

git clone https://github.com/DartNative/dartnative
cd dartnative/playground   # or any tutorials/* or plugins/*/example
dn run

The playground, the tutorials, and every plugin example are free to build and run.

Create your own project

To build and ship your own apps, pick a plan at dartpub.dev. Then copy your license key (dnk_…) from the Framework panel. Run the dn config command once — then dn run just works as usual. Keep the key private, and regenerate it on the Framework panel if it ever leaks.

One thing you never need to worry about: if your subscription ever lapses, apps you’ve already shipped keep working for their users — only your own building and shipping pause until you renew.

Activate and run:

dn config --license-key dnk_...
dn create my_app
cd my_app
dn run

Or run without storing the key — same command, the key just rides the invocation:

dn run --dart-define=DN_LICENSE_KEY=dnk_...

dn run builds and launches a true-native app — real UIKit views on iOS, real Android views on Android — from the same Dart codebase.

IDE setup

Already a Flutter developer? Your IDE is ready as is. Coming from something else, like React Native? Install the Flutter extension (VS Code) or plugin (Android Studio). Either way, hot reload, autocomplete, and debugging all run through DartNative.

There’s nothing to configure. Your IDE now runs DartNative under the hood — the installer arranged that when it added zero/bin to your PATH. To confirm, run which flutter in a terminal — the path it prints leads into your zero folder.

Have both Flutter and DartNative on your machine? DartNative wins by default. To keep a Flutter project on stock Flutter, point its SDK setting — dart.flutterSdkPath in its .vscode/settings.json — at your Flutter folder.

Coming from Flutter?

Your knowledge transfers as-is: same widgets, same layout system, same Dart. The only change is the import:

import 'package:dartnative/dartnative.dart';

Continue with Your first DartNative app.