A simply better way to make Discord bots.

Overview

Cognite

πŸš€ A simple blazingly fast language agnostic microservice driven Discord bot framework made in rust that leverages Apache Kafka and KeyDB to take care of the gateway and caching leaving the handling for you to do in your preferred programming language with toolings to help you bring in your preferred Database of choice and presets is some langauges to help you get started.

Everything in Cognite is a cog. Your bot is a cog, a web dashboard is a cog, even caching is a cog.

This way of functioning is aided by the modularity offered by the microservice architecture driven by using Kafka and provides several benefits, some of which are:

  • Everything is opt-in so you can have only what you need running at once.
  • Everything is extremely modular so you can mix, match, use and reuse cogs made by you and other without any additional hassle.
  • It's language agnostic which not only means you can use your preferred langauge but you can also use different langauges for different parts of your bot or even have a team of people who use different langauges work together on one thing.

...and much much more, the sky's the limit!

Requirements

  • Apache Kafka
  • KeyDB
  • Rust

Usage

  • Clone this repository via
git clone https://github.com/Eludris/cognite
  • Change the variables in .env.example to work for you and rename it to .env
  • Configure the init.lua file if you need to.
  • Start a Kafka instance which has a topic maching the one in your .env
  • Start cognite-gateway by running
cargo run --release --manifest-path=gateway/Cargo.toml

If you want to opt-in into caching must:

  • Start a KeyDB instance.
  • Start cognite-cache by running
cargo run --release --manifest-path=cache/Cargo.toml

Finally, start your cogs and you're all set!

Official Wrappers

You might also like...
CLI tool that make it easier to perform multiple lighthouse runs towards a single target and output the result in a "plotable" format.

Lighthouse Groupie CLI tool that make it easier to perform multiple lighthouse runs towards a single target and output the result in a "plotable" form

little brother of gnu-copypasta-maker To compile, use make.

UWU Maker little brother of gnu-copypasta-maker To compile, use make. To install, use sudo make install or if you are root make install To uninstall,

Macros to make writing proc-macro crates easy

proc-easy Macros to make writing proc-macro crates easy. This crate provides mainly macros and supporting types and traits to reduce amount of boilerp

Wayland clipboard manager that will make you clap πŸ‘

Clapboard - clipboard manager that makes you clap πŸ‘ Clapboard is a simple clipboard manager for Wayland, built in Rust. It saves a history of your cl

The simplest way to de-Google your life and business: Inbox, Calendar, Files, Contacts & much more
The simplest way to de-Google your life and business: Inbox, Calendar, Files, Contacts & much more

Bloom The all-in-one private workspace Try it for free! You no longer trust tech monopolies with your data? You are done with your privacy invaded by

Milho (corn in portuguese) is a toy dialect of Lisp written as a way to learn more about compilers

Milho (corn in portuguese) is a toy dialect of Lisp written as a way to learn more about compilers. There are implementations in rust and go

Display strings in a safe platform-appropriate way

os_display Printing strings can be tricky. They may contain control codes that mess up the message or the whole terminal. On Unix even filenames can c

kindly is a simple Rust implementation of a set-user-ID-root program, similar to sudo but in a much reduced way.

kindly is a simple Rust implementation of a set-user-ID-root program, similar to sudo but in a much reduced way.

Advent of Code 2015, done entirely in Rust both for the challenge and as a way to learn

Advent of Code 2015 In preparation for Advent of Code 2021, I wanted to go back and try some of the older challenges. I figured it made the most sense

Owner
Eludris
Eludris
Rust Keeper bots that run various functions, from liquidations, to orderbook cranks, and more.

The zo-keeper (pronounced "zoo keeper") repository runs large scale instructions that secure the 01 network, and allow it to operate in a fully decentralized manner.

Zero One Global Foundation 61 Dec 16, 2022
Utility to quickly setup Starcraft Broodwar matches between 2 or more bots

BWAIShotgun Utility to quickly setup Starcraft Broodwar matches between 2 or more bots Be aware that all bots will be executed directly, without any l

Dennis Waldherr 5 Nov 25, 2022
An abstraction build on top of discord-rich-presence that makes possible to use it in a more declarative way

Declarative Discord Rich Presence This library is an abstraction build on top of discord-rich-presence crate that allows you to use it in a more decla

null 2 Sep 7, 2022
A Discord bot focused on addressing the inherent problems with Discord, to allow a more socialist/anarchist organization of servers.

ACABot A Discord bot focused on addressing the inherent problems with Discord, to allow a more socialist/anarchist organization of servers (or "guilds

null 4 May 3, 2022
A rust(serenity) based discord bot for the hacksquad discord server

A Discord Bot for Hacksquad How to Deploy? Requirements Docker Docker Compose Steps To Run Copy the docker-compose.yml and .env.example files to your

HackSquad 5 Jan 4, 2023
A programming language. Better mantra pending.

Dusk Dusk is a programming language I've been working on on and off for the past while now. It's still very much in its infancy (... a quick look thro

Kaylynn Morgan 14 Oct 24, 2022
A better message queue built by rust

bettermq A better message queue built by rust I start this project to study Rust

Sun Junyi 13 Dec 16, 2022
Building a better screen reader for the Linux desktop, one step at a time.

Building a better screen reader for the Linux desktop, one step at a time.

Odilia 44 Dec 31, 2022
Better Valtrun with Aimbot and BhopπŸ”₯πŸ”₯πŸ”₯

BetterValthrun Better Valtrun with Aimbot and Bhop?????? The New Era Valthrun is an open source external Counter-Strike 2 read only kernel-level gamep

Jonas Zimmerman 8 Oct 20, 2023
Tool to make Solus packaging even easier.

A small tool to make packaging for Solus even easier. Features Remove all packages from the local solbuild repo.

null 5 Oct 19, 2022