Karen is a highly efficient, multipurpose Discord bot written in Golang.
Got any problems or just want to chat with me and other devs?
Join the Discord Server! :)
Public invite link is coming after the private beta ends.
Want access?
Register here: https://goo.gl/forms/9J9GYMg8c9IM6a5Z2
Short answer: No you can't.
Long answer:
No you can't because go get
sucks.
Huge projects like this need proper version locking.
gopkg.in is a nice try but not good enough.
I use https://glide.sh
Short answer: No you can't.
Long answer:
No you can't because go build
sucks.
I use a sophisticated and completely handcrafted build system that uses modular makefiles at it's core.
Thus this is most likely the only go-project that supports c-style macros in comments and conditional compilation.
Are we awesome yet?
No.
There will be neither guides nor setup help.
The code is provided for transparency and community-contributions only.
If you decide to fork Karen remember to comply with the LICENSE.
Why do we live in a time where it's acceptable that an EMPTY Java class consumes 10mb RAM?
Why does no one care about optimizing anymore?
That's why I'm building Karen.
I want to create a bot that:
- Can handle an almost infinite amount of joined guilds
- Is able to scale vertically and horizontally
- Can play music for free, forever. (Not like that freemium stuff Mee6 does)
- Will never use more resources than absolutely needed
- Never crashes (or to be precise: be able to recover from almost any
panic()
)
- Never exceeded 2% CPU usage at the time of writing.
- Never used more than 8MB of it's allocated heap.
Hancrafted guide soon (tm)
Until then use GoWalker/GoDoc for coding guides and the homepage for usage help.
This bot is still in a early stage.
Please expect (rare) crashes and minor performance problems until the bot is mature enough.
I've drawn a colorful picture just for you!