Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/qelli/rozetta

A Discord bot to progressively build communities.
https://github.com/qelli/rozetta

discord-bot discordjs docker mysql necordjs nestjs redis typescript

Last synced: 15 days ago
JSON representation

A Discord bot to progressively build communities.

Awesome Lists containing this project

README

        



Luma

Rozetta


An Open Source Discord bot.



Version
Coverage
License
Discord

## Setup

1. Duplicate `.env.example` and rename to `.env`. Provide all the values.

| Key | Description |
| --------------------- | ------------------------------------------------------------------------- |
| DISCORD_API_TOKEN | Obtained from https://developer.discord.com |
| DISCORD_MAIN_GUILD_ID | Based on Discord's API docs, provide a `GUILD_ID` to be the "main server" |
| SHARDING_TOTAL_SHARDS | Number of shards for the application to be split on |
| SHARDING_INITIAL_PORT | Starting port for the exposed HTTP API, usually `5000` |
| SHARDING_PORT_INCREMENT | Number to add to the HTTP API port count. Recommended value is `1` |

2. Run `npm run setup`.

## Building Dockerfile

This project is ready to be run with Docker, the command is the following:

```bash
npm run docker:build
```

This will create the required containers for the application on an empty state, database needs to be prepared next.

## Database migration

To initialize the database on a new instance, the following command must be executed before running the application:

```bash
npm run database:init
```

## Running

Once all previous steps are done, you can start the application with the following command:

```bash
npm start
```

## Testing

```bash
# unit tests
$ npm run test

# e2e tests
$ npm run test:e2e

# test coverage
$ npm run test:cov
```

## Contributing

Read `CONTRIBUTING.md`.

## License

Rozetta is [MIT licensed](LICENSE).