Flint is packaged as a universal desktop application using Electron (for the frontend) and PyInstaller (for the backend AI agent). This means users can run Flint locally without needing to install Python or configure dependencies themselves.
To generate the desktop installer from the source code, you need:
- Node.js (v18+)
- Python 3
- pip
Before building the app for the first time, install the required frontend and backend dependencies:
# Install Node dependencies (including electron & electron-builder)
npm install
# Install PyInstaller (used to compile the Python backend)
pip install pyinstaller
# Install Python backend dependencies
cd agent
pip install -r requirements.txt
cd ..To package the app into a standalone desktop executable, run the universal build command:
npm run package- Builds the React Frontend: Runs Vite to create the optimized web assets.
- Compiles the Python Agent: Uses PyInstaller to bundle
agent.pyinto a single, standalone executable binary (agent.exeon Windows, oragenton Linux). - Packages the Electron App: Bundles the UI and the compiled Python agent into a final installer based on your operating system.
Once the command finishes, the native installer will be available in the dist_electron/ directory:
- Windows: You will find a file like
Flint Setup 1.0.0.exe - Linux: You will find an
.AppImageand a.debpackage.
Note: To build a Windows
.exe, you must run the package command on a Windows machine. To build a Linux.AppImage, you must run the package command on a Linux machine.
If you just want to run the app in development mode without building the full desktop package, simply run:
npm run dev