Cryptocurrency Tracker docs
v2.0.0
Live demoConsole demo Get help
● Start · About 2 minutes

Quick start
the app in your browser.

Run the API on your computer and the app in Chrome in demo mode, with live market data and no accounts. Then look at the operator console with its sample data.

No accountsLive public market data

01Web demo with live data

You need Flutter and Node.js 22 (Requirements). Open two terminals in the source/ folder of the download (it holds app/, firebase/ and admin/).

  1. Start the APIIn the first terminal:
    cd firebase/functions
    npm ci
    npm run dev:api        # http://localhost:8787 - in-memory store, demo settings, keyless CoinGecko
    The log says Cryptocurrency Tracker API (dev, demo mode) on http://localhost:8787/v1/markets. Open that address in a browser: you see live market data as JSON.
  2. Start the appIn the second terminal:
    cd app
    flutter pub get
    flutter run -d chrome --dart-define=DEMO_MODE=true --dart-define=API_BASE_URL=http://localhost:8787
    Chrome opens the app.

Explore the markets, open a coin, add coins to the watchlist, add an alert, look at the sample portfolio, the news and the market brief. Demo mode has no Firebase, so:

  • your watchlist, portfolios, alerts and wallets are kept in the browser;
  • the portfolio starts with a "Sample portfolio — demo data" you can delete;
  • alerts are checked in the page on each price refresh and shown as a banner marked "Demo: on a phone this is a push notification";
  • ads are simulated and labelled, purchases are simulated ("Demo — no charge"), affiliate links and sponsored items are labelled samples;
  • the brief and coin reports are the labelled Automatic summary (no AI key).
Demo mode is not a product

The web build exists only as a demo. The real app targets Android and iOS; ads, store purchases, push and widgets do not run on the web. If port 8787 is busy, start the API with PORT=8788 npm run dev:api and use that port in API_BASE_URL.

02The console with sample data

In a third terminal:

cd admin
npm ci
ADMIN_DATA=sample ADMIN_SECRET_KEY=$(openssl rand -hex 32) npm start   # http://localhost:8790/admin

The log prints a one-time setup code. Open http://localhost:8790/admin, choose Create the owner, enter the code, an e-mail and a password of 12 or more characters. You now see every settings section and product page with built-in sample data, labelled "Sample", and no Firebase at all. The sample has no revenue. Nothing you do here reaches an app.

03Or look at the hosted demo

The same demo is online: the app at cryptotracker-demo.mikodes.com and a read-only console at cryptotracker-demo.mikodes.com/admin.

04Next