Backend for ScribeAR. Handles transcribing audio stream and rebroadcasting transcriptions to multiple devices.
- See
README.md
in/node-server
and/whisper-service
folders for detailed instructions for installation, development, and usage.
Deploys node-server, whisper-service, and ScribeAR frontend to be running on the same system.
Setup
- Install Node 20, Python 3, and Google Chrome using official methods
- Clone this repository
git clone https://github.com/scribear/ScribeAR-NodeServer
- Setup whisper-service
cd ScribeAR-NodeServer/whisper-service
python3 -m venv .venv
. .venv/bin/activate
pip install -r requirements.txt
- Install requirements for the whisper implementations you want to use. See Installing Whisper Service Dependencies for details.
pip install -r models/{model_implementation}_requirements.txt
- Make a copy of
template.env
and name it.env
- Edit
.env
according to Whisper Service Configuration
- Edit
- Build node-server
cd ../node-server
npm install
npm run build
- Make a copy of
template.env
and name it.env
- Edit
.env
according to Node Server Configuration - Ensure port, api_key, and model_key match between whisper service and node server configurations.
- Edit
- The
aio-autostart.sh
script can then be used to start whisper service, node server, and google chrome automatically. Set this to automatically run on login with a user that is automatically logged in to have a hands free startup.- For Ubuntu, this can be achieved using by creating the following file at
~/.config/autostart/aio-autostart.desktop
[Desktop Entry] Type=Application Exec= { PATH TO aio-autostart.sh SCRIPT } NoDisplay=false X-GNOME-Autostart-enabled=true Terminal=true
- For Ubuntu, this can be achieved using by creating the following file at