FlintTrade
Setup

FlintTrade on Windows

FlintTrade v0.0.1 is not production ready; use Practice and example data before connecting any live broker workflow.

Everything below runs in stock Windows PowerShell 5.1 — no WSL, no Git Bash, no make. Two Windows notes that apply to every command on this page:

  • Windows PowerShell 5.1 has no && operator. Put each command on its own line, or separate them with ;.
  • make is not installed on Windows. Use the cross-platform runner instead: python scripts/ft.py <start|stop|restart|status|dev|setup|test|lint|clean|version|help|desktop-test|desktop-build|desktop-package|desktop-dev>. After an install, the shim makes the same subcommands available as flinttrade <subcommand>. make <target> is the POSIX alias only.

The web-app installer needs nothing pre-installed: no Python, no Node, no git and no make. Open a normal (non-Administrator) Windows PowerShell window and run:

irm https://flinttrade.vercel.app/web-install.ps1 | iex

It downloads a pinned, checksum-verified toolchain (uv, Python 3.12, Node and pnpm) into ~\.flinttrade\tools, builds FlintTrade from a managed source checkout at ~\.flinttrade\web-src\FlintTrade, and installs a launcher at %LOCALAPPDATA%\Programs\FlintTradeWeb\flinttrade-web.cmd plus a FlintTrade Web Start Menu shortcut. The Electron desktop shell owns %LOCALAPPDATA%\Programs\FlintTrade and its own Start Menu entry, so the two installs never collide and can be run in either order. The install is per-user — no admin rights needed. An elevated Administrator PowerShell window is refused before installation begins.

If the site is unreachable (repo-direct fallback)

Use this whenever the command above fails: the hosted URL is only a redirect to the script in this repository, and a site outage or a deployment without an immutable source commit answers 503 instead of the installer. This form fetches the same script straight from GitHub and depends on no deployment:

irm https://raw.githubusercontent.com/navaneeshnagarajan/FlintTrade/main/scripts/install/flinttrade-web-install.ps1 | iex

To read the script before running it, clone the repository and run the file:

git clone https://github.com/navaneeshnagarajan/FlintTrade.git
cd FlintTrade
powershell -ExecutionPolicy Bypass -File scripts\install\flinttrade-web-install.ps1

Uninstall

The plain uninstall removes the application and its launcher integration and keeps your workspace and data:

irm https://flinttrade.vercel.app/uninstall.ps1 | iex

Add -Purge to also delete recognised FlintTrade data (workspace, managed source and tools). Purge is irreversible and asks for explicit confirmation:

& ([scriptblock]::Create((irm https://flinttrade.vercel.app/uninstall.ps1))) -Purge

If the site is unreachable, fetch the same uninstaller straight from GitHub — the hosted URL is only a redirect to it:

irm https://raw.githubusercontent.com/navaneeshnagarajan/FlintTrade/main/scripts/install/flinttrade-uninstall.ps1 | iex

Or run the same script from a clone or from the managed source checkout (~\.flinttrade\web-src\FlintTrade for the web app, ~\.flinttrade\src\FlintTrade for the desktop shell):

powershell -ExecutionPolicy Bypass -File scripts\install\flinttrade-uninstall.ps1

Electron installer status

The public download surface distinguishes the source-built web-app install above from Electron-shell installers. It withholds Electron commands and downloads unless one release contains the Windows x64 NSIS installer, the universal macOS DMG, both Linux AppImages, and SHA256SUMS.txt.

For a release that passes that gate, the one-command install is:

irm https://flinttrade.vercel.app/install.ps1 | iex

The script requires the canonical Windows asset and SHA256SUMS.txt from the same official release and verifies SHA-256 before running the installer. The install is per-user — no admin rights needed. The script lives at scripts/install/ — read it before piping to a shell if that is your policy (it should be). If the site is unreachable, run it repo-direct with irm https://raw.githubusercontent.com/navaneeshnagarajan/FlintTrade/main/scripts/install/flinttrade-install.ps1 | iex.

Manual .exe download (after release availability)

Windows 11 on ARM: the x64 build runs via emulation — install the same FlintTrade-<version>-win-x64.exe.

To build the installer locally (one command per line — PowerShell 5.1 has no &&):

pnpm install --frozen-lockfile
python scripts/ft.py desktop-test
python scripts/ft.py desktop-package

Output lands in packages/apps/desktop/release/electron/. Windows and Linux runtime package behaviour is owned by CI and contributor runs; a Mac build is not cross-platform proof.

WSL2 (native performance)

  1. Install WSL2: wsl --install
  2. Open Ubuntu terminal in WSL2
  3. Follow Linux setup instructions (docs/setup/linux.md)

Source development (advanced)

Requires: Python >=3.12, Node.js >=22.22.2, uv, pnpm 10.34.5, Git, and optionally Rust. Those floors come from [requirements] in flint.toml, which is the single source of truth for them. make is not required and is not available on Windows — use python scripts/ft.py <target> instead.

pnpm is pinned in the root package.json packageManager field, so install it directly (npm install -g pnpm@10.34.5) — Corepack still works if your Node bundles it, but Node dropped Corepack in 25.0.0, so it is an optional accelerator rather than a prerequisite.

To run the built web app from source:

git clone https://github.com/navaneeshnagarajan/FlintTrade.git
cd FlintTrade
uv sync
pnpm install
pnpm --filter @flinttrade/terminal build
python scripts/ft.py start

Then open http://127.0.0.1:5100. The terminal build step is not optional: the backend serves the UI only when packages/apps/terminal/dist/index.html exists, so skipping it leaves you with an API and no interface.

To run the Vite dev server alongside the backend instead:

python scripts/ft.py setup
python scripts/ft.py dev

Then open http://localhost:5173.

Note: systemd is not available on Windows. Use Task Scheduler or NSSM to run as a Windows service.

On this page