Skip to content

mauriciobraz/discord.ts-monorepo

Repository files navigation

DiscordTsMonorepo

This monorepo contains a Discord bot built with discord.js and discordx, featuring decorator support and localization with typesafe-i18n. For the web application, it uses Next.js, SWR and Tailwind CSS.

Why?

I wanted to learn about monorepos and how to use them. I chose to use pnpm as the package manager and turbo as the build tool because of their speed and simplicity.

Applications

For more information about some of the apps, see their README files.

The client is a powerful Discord bot built using Discord.js. It also has a localization system built-in using typesafe-i18n and a command handler using discordx.

The web application is a Next.js application that is used to interact with the Discord API. It is written in TypeScript and uses SWR for data fetching and Tailwind CSS for styling.

Packages

This package contains a Prisma schema and client for the database that can be shared between all applications.

This package contains some common TypeScript configurations files (tsconfig.json).

How to use

# Clone the repository
git clone

# Install dependencies
pnpm install

# Build the packages
pnpm build

Docker Support

This template is also configured to run in a Docker container using Docker Compose. To run the bot in a container, fill all the .env files with the correct values and run the following command:

docker-compose up -d