Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/maseshi/shioru
π§Έ (Discord) Your personal assistant that will make your discord never lonely again.
https://github.com/maseshi/shioru
bot command-handlers discord discord-bot discord-js discord-js-bot discord-js-v14 firebase games interaction-handlers languages music nodejs slash-commands thailand
Last synced: 1 day ago
JSON representation
π§Έ (Discord) Your personal assistant that will make your discord never lonely again.
- Host: GitHub
- URL: https://github.com/maseshi/shioru
- Owner: Maseshi
- License: mit
- Created: 2020-07-01T12:15:22.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-12-20T19:30:37.000Z (1 day ago)
- Last Synced: 2024-12-20T23:07:08.221Z (1 day ago)
- Topics: bot, command-handlers, discord, discord-bot, discord-js, discord-js-bot, discord-js-v14, firebase, games, interaction-handlers, languages, music, nodejs, slash-commands, thailand
- Language: JavaScript
- Homepage: https://shiorus.web.app
- Size: 15.6 MB
- Stars: 164
- Watchers: 3
- Forks: 24
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
Shioru
Personal assistants in Discord that will help make your guild a better place.
Add App
Β·
Switch Languages
Β·
Status
Β·
Improve Translation
Β·
Rate It
Your best personal assistants will help your guild look more lively. She can do so many things that you can easily see detailed information on all commands by typing `/help`.
## β¨ Outstanding features
- [x] Worked on [Discord.js](https://discord.js.org/) v14
- [x] Easy to read, easy to use and highly effective
- [x] You can customize many things you want
- [x] Contains all commands including 100+ available subcommands
- [x] Can play music both from [YouTube](https://www.youtube.com/), [Spotify](https://www.spotify.com/), [SoundCloud](https://soundcloud.com/) and [900+ more Website](https://github.com/yt-dlp/yt-dlp/blob/master/supportedsites.md) along with an automatic music playback system
- [x] Supports multiple languages. You can check the supported languages ββfrom the [Language File](https://github.com/Maseshi/Shioru/blob/main/source/configs/languages.json) of this repository.
- [x] Tier system (Level and experience)
- [x] Support for customizing server notifications
- [x] You can talk by typing `@Shioru` followed by the message you want to communicate
- [x] Supports working on Shards or supports working in various guilds
- [x] You can use application commands (`/`)
- [x] Simulate the database system for testing.And many other interesting features...
## 𧩠Prerequisites
- [Node.js](https://nodejs.org/) v18.0.0 or higher
- [Firebase Tools](https://firebase.google.com/docs/cli) (requires [Java](https://www.oracle.com/java/technologies/downloads/) v11.0.0 or higher)
- [Build Tools](https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2022) (requires [Python](https://www.python.org/downloads/) v3.12.0 or higher)
- [FFmpeg](https://ffmpeg.org/download.html)
- [Git](https://git-scm.com/downloads)## β Installation
### 1. Clone the bot and install the components.
- Launch a terminal and run the following command.
```bat
git clone https://github.com/Maseshi/Shioru.git
cd Shioru
npm install
```
- Change the file name `.env.example` to `.env` and enter all required values.> [!NOTE]
> You can edit some data in **config** at [./source/configs/data.js](./source/configs/data.js).### 2. Setup bot and invite to join.
- Go to [Discord Developer Portal](https://discord.com/developers/applications)
- Click **"New Application"** and name your bot and accept the Discord policy rules.
- Go to the **"Bot"** page and enable all options in the **Privileged Gateway Intent** section.
![](https://raw.githubusercontent.com/Maseshi/Shioru/main/assets/images/discord-developer-portal-privileged-gateway-intents.png)
- Invite your bot to the server by going to the **OAuth2 > URL Generator** page, selecting `bot` and `applications.commands`, selecting `Administrator`, then copy the link and paste it in the browser address bar. Your sir
![](https://raw.githubusercontent.com/Maseshi/Shioru/main/assets/images/discord-developer-portal-scopes.png)### 3. Setup database
- Go to https://firebase.google.com/ and start setting up the project.
- Add a new project and follow the steps.
- Add your first application with **Website** Name your app without needing to select the **"Also set up Firebase Hosting for this app."** option and register the app.
![](https://raw.githubusercontent.com/Maseshi/Shioru/main/assets/images/firebase-setup-web-application.png)
- Firebase will provide you with information about its configuration. Apply these values to the file. `.env`
- Go to **Build > [Realtime Database](https://console.firebase.google.com/u/0/project/_/database/data)** to create a database for storing data.## π₯ Get started
There are several options available. If you are using [Visual Studio Code](https://code.visualstudio.com/), you can choose your method directly via the Run and Debug tab (Ctrl + Shift + D). For other operations, see Tasks (Ctrl + Shift + B and Ctrl + Shift + P type `>Tasks: Run Task`)
### πͺ Development
- Open a terminal and run the command `npm run dev`.
### β Serve
Test the actual use by performing tasks similar to real use. The system will automatically calculate the split of the work fraction according to the number of guilds.
- Open the terminal and add all the necessary environmental variables.
- For Windows, use commands `set variable=example`
- For Linux or MacOS, use the command `export variable=example`
- Run the command `npm run serve`.> [!NOTE]
> You will enter automatic development mode because it is a real use. All data will not be recorded.### π΅ Production
For actual use, the prepared command or set of commands can be used normally as follows:
- On Linux or MacOS
```sh
sh start.sh || sudo sh start.sh# or
npm start
```- On Windows
```bat
./start.bat@REM or
npm start
```### π³ Running on Docker
This operation requires [Docker](https://www.docker.com/products/docker-desktop/)
- Open the terminal and add all the necessary environmental variables.
- For Windows, use commands `set variable=example`
- For Linux or MacOS, use the command `export variable=example`
- Create an image using the command `npm run docker:build` or `npm run docker:build:serve` for the serve mode and wait until the process is finished.
- After creating the images successfully, run by using the command `npm run docker:build` or `npm run docker:build:serve` for the serve mode.[Learn more about commands Docker](https://docs.docker.com/reference/)
## π Improve Translate
You can help us translate existing languages or languages that are not currently available on [Crowdin](https://crowdin.com/project/shioru).
## β οΈ Found a problem
If you encounter any problems from your current job You can let us know through the tab. [issue](https://github.com/Maseshi/Shioru/issues) of this repository.