This app is developed in three components, all unfortunately in different languages:
- The desktop app, in
src-tauri
, is using Tauri and is implemented in Rust. - The frontend, in
frontend
, is using Vue.js and is implemented in JavaScript. This is the UI that gets loaded in the native app. - The backend, in
backend.py
, is a Flask app, implemented in Python. This hosts an API that does all the AI magic.
The backend needs Python 3 and ffmpeg
installed (TODO: packaging).
Create a virtual environment and install deps:
python3 -m venv venv
. venv/bin/activate
pip install -r requirements.txt
Run the server (on port 52014):
python backend.py
You need Node.js to build this component.
Install dependencies:
npm install
Build the frontend:
npm run build
You generally won't have to build this yourself -- Tauri will do this for you when running the desktop app.
You need Rust installed. Tauri handles building the frontend for you.
Install tauri-cli
:
cargo install tauri-cli
Start the app:
cargo tauri dev
Recommended IDE setup: