A Discord bot with server moderation tools and various entertaining commands.
Bento 🍱 is a TypeScript rewrite of Bento. Bento 🍱 uses the Discord.js node.js module, that interacts with the Discord API, and stores data in a PostgreSQL database.
Want to give feedback or got any questions? Join the support server here.
- Gfycat API features such as create, check user feeds etc.
- LastFM API features
- Make scheduled and repeating announcements in a specific channel
- Advanced moderation tools that include a comprehensive case-based logging system.
- Custom user profiles
- Create Streamables
- Fun features such as rock paper scissors, 8ball, roll a number or pick an option
- Database that saves server info such as feature settings and welcome message, and user data such as XP/Levels and command info
- Unlimited custom commands (for the server only) that saves name for recall and content
- Horoscope
- Weather and time at a specific city, provided by OpenWeather
- Chat XP/levels and "bento" leaderboard
- Custom welcome and goodbye messages, customisable by server
- Urban Dictionary search
- A PostgreSQL Database
- Docker if you want to deploy it with Docker
- LastFM, Spotify, Tenor and OpenWeather API keys.
git clone https://github.com/thebentobot/bentoTS.git
or download ZIP.- Create a dotenv file with the environment variables as listed here
npm install
assuming you have installed node.js
- Either locally run/install PostgreSQL or get a PostgreSQL database elsewhere. Other SQL databases may be possible considering Bento uses Sequelize, but is not tested and isn't recommended because the code may use PostgreSQL specific features, and it requires additional changes to the code.
- The creation of the database tables. An SQL DDL schema file can be found here
docker build -t [NAME] .
docker run [NAME or ghcr.io/thebentobot/bentots:master]
version: '3.8'
services:
bot:
image: ghcr.io/thebentobot/bentots:master
container_name: bento
restart: unless-stopped
env_file:
- .env
ports:
- '6969:6969'
networks:
- bento_net
- web
sushii-image-server:
image: ghcr.io/sushiibot/sushii-image-server:latest
container_name: sushii-image-server
restart: unless-stopped
init: true
cap_add:
- SYS_ADMIN
expose:
- "3000"
networks:
- bento_net
networks:
web:
internal: false
bento_net:
external: false
npm start
The bot is mainly developed by Christian.
Pull requests are very welcome if the features/changes makes sense and are up to par in quality.
This project is licensed under the AGPL-3.0 License
The avatar illustration is done by Freepik.