mirror of
https://github.com/kirameki-cafe/Yumi.git
synced 2026-09-13 10:49:20 +00:00
46 lines
1.9 KiB
Markdown
46 lines
1.9 KiB
Markdown
# 🍭 Yumi
|
|
|
|
Multipurpose Discord Bot
|
|
|
|
## 👜 Prerequisites
|
|
|
|
- [NodeJS](https://nodejs.org/)
|
|
- [FFmpeg](https://ffmpeg.org/)
|
|
- [Python2](https://www.python.org/downloads/) (For building dependencies)
|
|
- C++ compiler (For building dependencies)
|
|
|
|
## 🔧 Building for production
|
|
|
|
1. Clone this repository
|
|
2. Install dependencies with ``yarn`` for yarn, or ``npm install`` for npm
|
|
3. Run the script ``yarn build`` or ``npm run build``
|
|
|
|
The output will be at ``/dist``, use ``node index.js`` to start
|
|
|
|
## 🔧 Building for production (Docker)
|
|
|
|
1. Clone this repository
|
|
2. Run ``yarn docker-build`` for yarn, or ``npm run docker-build`` for npm to build the image
|
|
|
|
Image will be tagged as ``ghcr.io/yuzuzensai/yumi:latest``
|
|
|
|
## 🔧 Debugging for development
|
|
|
|
1. Clone this repository
|
|
2. Install dependencies with ``yarn`` for yarn, or ``npm install`` for npm
|
|
3. Run the script ``yarn development`` or ``npm run development``
|
|
|
|
## 🌳 Environment Variables
|
|
|
|
Take a look inside [.env.example](https://github.com/YuzuZensai/Yumi/blob/main/.env.example) for example
|
|
|
|
- ``NODE_ENV`` Environment type, ``development`` or ``production``
|
|
- ``DATABASE_URL`` Connection URL to your database. [More info](https://www.prisma.io/docs/getting-started/setup-prisma/start-from-scratch/relational-databases/connect-your-database-typescript-postgres)
|
|
- ``DISCORD_TOKEN`` Your discord bot token
|
|
- ``DEVELOPER_IDS`` List of Discord Snowflake User ID that can access developer only modules, separated by ``,``
|
|
- ``PRIVATE_BOT`` Should the bot invite be public? ``true`` or ``false``
|
|
- ``OSU_API_KEY`` [osu! API v1 key](https://github.com/ppy/osu-api/wiki)
|
|
- ``YOUTUBE_COOKIE_BASE64`` YouTube cookies encoded in base64 [How to get cookies?](https://github.com/play-dl/play-dl/tree/main/instructions#youtube-cookies=)*
|
|
|
|
\* Encode the cookies from the request headers base64 and put it in here instead of creating new file with ``play.authorization();`` code
|