Awesome polyglot framework for building distributed discord bots built on cloud native technologies, rust and containers.
Find a file
2023-01-16 14:04:17 +04:00
.devcontainer restructure project 2023-01-02 18:59:03 +04:00
.github/workflows add debug info in the makefile and revert to gcc 2023-01-16 13:30:47 +04:00
cmd/nova better ratelimit, new go structure and better build system 2023-01-13 22:23:19 +04:00
docs use clang64 2023-01-16 01:24:20 +04:00
exes clean dependencies 2023-01-16 13:14:40 +04:00
internal/pkg/all-in-one fix go linking 2023-01-16 12:06:41 +04:00
libs clean dependencies 2023-01-16 13:14:40 +04:00
otel base for tracing 2023-01-05 18:33:53 +04:00
proto/nova/ratelimit better ratelimit, new go structure and better build system 2023-01-13 22:23:19 +04:00
.deepsource.toml Add .deepsource.toml 2021-10-12 11:19:33 +00:00
.dockerignore updates and bazel removal 2022-12-31 17:07:30 +04:00
.env base for tracing 2023-01-05 18:33:53 +04:00
.gitattributes fix line endings 2021-10-14 20:49:58 +00:00
.gitignore better ratelimit, new go structure and better build system 2023-01-13 22:23:19 +04:00
Cargo.lock add debug info in the makefile and revert to gcc 2023-01-16 13:30:47 +04:00
Cargo.toml clean dependencies 2023-01-16 13:14:40 +04:00
docker-compose.yaml add muliti arch 2023-01-15 19:47:03 +04:00
Dockerfile add metrics and jemalloc 2023-01-15 17:03:29 +04:00
go.mod add all in one binary 2023-01-03 00:14:27 +04:00
go.sum add all in one binary 2023-01-03 00:14:27 +04:00
LICENSE update apache v2 licence 2023-01-02 21:40:45 +01:00
Makefile remove tree command 2023-01-16 14:04:17 +04:00
nats.config merge conflicts 2023-01-08 21:56:15 +04:00
README.md fix build badge 2023-01-04 13:38:26 +01:00
shell.nix migrate to clang 2023-01-16 02:03:18 +04:00

Nova

Build

What is nova ?

Nova is a complete framework for building reliable and stable discord bots using a services based system to operate all the components needed to operate a discord such as the discord gateway, new discord webhooks for receiving interactions. Using a traditional infrastructure (sharder / process), we can quickly reach bottlenecks when we scale to multiple thousands of shards. Nova is a way to avoid these problems by building a scale-first discord framework that creates an environment that allow better testing, reliability and operations easier.

Advantages

With the help of Nova, you can achieve a number of things, such as

  • Scaling of workers independent of the number of shards
  • zero-login updates
  • Automatic shards scaling
  • Shared cache for the whole bot (without broadcastEval and other unsafe methods)
  • Stateless workers, easier to test
  • Distributed rest rate-limiting
  • Easier fine-tuned monitoring using cloud-native technologies
  • Languages agnostic apis

How did we solve this ?

Nova separates the gateway into multiple smaller components corresponding to each discord apis

FOSSA Status