FreeNitori

module
v1.9.16 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 11, 2021 License: GPL-3.0

README

banner

An open source, general purpose modular Discord bot written in go.


Project is still in very early stages and documentation is incomplete/nonexistent in most parts, here will be a way to get started if you want to contribute.


Special Thanks

Rogue (artist)

Building

GNU make is required, FreeBSD's make implementation simply does not work. You also need the go compiler.

To build the project, just run make in the root of the project, binaries are produced in build/. After building for the first time you can skip the dependency part and have make automatically start Nitori by doing make run.

Running

Nitori produces a configuration file if not present and exits, make sure to edit that file and fill in your stuff before running again.

Discussion

We currently have a Discord guild for discussions on development of this project, however any topic is OK.

Directories

Path Synopsis
cmd
cli
server
Server program.
Server program.
server/db
Package db provides a wrapper around database backend.
Package db provides a wrapper around database backend.
server/discord
Package discord contains Discord-related services.
Package discord contains Discord-related services.
server/web
Package web contains stuff related to web services.
Package web contains stuff related to web services.
server/web/datatypes
Package datatypes primarily contains structs used for JSON operations.
Package datatypes primarily contains structs used for JSON operations.
nitori
config
Package config contains configuration related stuff.
Package config contains configuration related stuff.
database/badger
Package badger implements database backend based on badger.
Package badger implements database backend based on badger.
embedutil
Package embedutil deals with embeds.
Package embedutil deals with embeds.
emoji
Package emoji contains information on every emoji.
Package emoji contains information on every emoji.
log
Package log contains logging functions.
Package log contains logging functions.
multiplexer
Package multiplexer does command related stuff.
Package multiplexer does command related stuff.
state
Package state contains important variables.
Package state contains important variables.
plugins
feels
Plugin example.
Plugin example.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL