Welcome to the repository for Yapper, a Discord bot created to transcribe Discord voice messages.
Please duplicate .env.example
to .env.prod
and .env.dev
, then modify all the values accordingly and do the same for ./prisma/.env
.
The default fields here are already configured for running in Docker.
Then: docker compose up
:)
To run this bot you will need Node.js v18.20.2
or higher. Then, using a system installed pnpm
(or, pnpm
provided by corepack with corepack prepare
) run pnpm install
to install the bot's dependencies.
Then, please duplicate .env.example
to .env.prod
and .env.dev
, then modify all the values accordingly and do the same for ./prisma/.env
.
This bot uses PostgreSQL! The format for a DATABASE_URL
is:
postgresql://[user[:password]@][host][:port][/dbname]
Using RunPod
You will be asked for an RUNPOD_API_KEY
, RUNPOD_LQ_ENDPOINT_ID
, and RUNPOD_HQ_ENDPOINT_ID
.
From the RunPod Console, select "Serverless", then "Quick Deploy" and select "Faster Whisper". RunPod will recommend a 24 GB GPU, this is perfectly fine. However, feel free to switch to the "16 GB GPU".
For many developers, you may set your RUNPOD_LQ_ENDPOINT_ID
and RUNPOD_HQ_ENDPOINT_ID
to the value under the name "Faster Whisper", or whatever custom name you've provided:
Next, select "Settings", expand "API Keys" and create a new API Key with "Read" permission. Write permissions will allow this API key to modify your account, which is probably not what you want. This key is your RUNPOD_API_KEY
.
- Ready the Database with
pnpm prisma migrate dev
.
Then, to run the bot in production mode use pnpm start
.
Or, to run the bot in development mode use pnpm build
.
Tip
Using development mode will provide you with more detailed logs and push guild commands in the specified DEVELOPMENT_GUILD_ID
instead of global commands.
If you run into any problems with either please create an issue.
Follow the instructions here: https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/get-started/create-local-tunnel
After that's complete, use pnpm tunnel
!