A native app built with Tauri v1 that spawns a Python sub-process (sidecar) which starts a FastAPI server.
Important
Tauri v2 example is now available 👇
example-tauri-v2-python-server-sidecar
More features and documentation with example app.exe.
This example app uses Next.js as the frontend and Python (FastAPI) as the backend. Tauri is a Rust framework that orchestrates the frontend and backend(s) into a native app experience.
Tauri takes your frontend UI written in html/javascript and displays it in a native webview. This makes the resulting file size smaller since it does not need to include a web browser.
Install dependencies for javascript:
pnpm install
To install python dependencies listed in requirements.txt:
pnpm dev-reqs
In case you dont have PyInstaller installed:
pip install -U pyinstaller
To run the app in development mode with hot-reload (js):
pnpm tauri dev
Run this at least once before running pnpm tauri dev
and each time you make changes to your python code. This command is also called by pnpm tauri build
:
pnpm build:fastapi
pnpm tauri build
This creates an installer located here:
- <project-dir>\src-tauri\target\release\bundle\nsis
- Tauri Framework - learn about native app development in javascript and rust.
- NextJS - learn about the popular react framework Next.js
- FastAPI - learn about FastAPI server features and API.
- PyInstaller - learn about packaging python code.