• R/O
  • SSH

monikabot: Repository summary

Recent Commits RSS

Rev. Time Author Message
c5016df2c8f9 2021-09-21 10:22:24 Remilia Scarlet v1.5.x-work tip Handle exceptions in MessageRule#run a bit more granularly
d1dee6b1e769 2021-09-16 19:48:42 Remilia Scarlet v1.5.x-work Add cutefoxes image source, and a random cuteanimal sourc...
34271f025236 2021-09-10 08:29:37 Remilia Scarlet v1.5.x-work Use RandomMsg for selecting a periodic rule message
4728fde36a60 2021-09-08 07:02:52 Remilia Scarlet v1.5.x-work Add a hack to fix imgur gif embedding
7561da17771d 2021-08-03 08:55:43 Remilia Scarlet 2.0-work Check for HTTP 200 code with !joke in v2.0
2d67effce55b 2021-08-03 08:45:06 Remilia Scarlet v1.5.x-work Check HTTP code with !joke
4af96a8a9f5a 2021-07-13 09:00:54 Remilia Scarlet 2.0-work Supply dew point in both celsius and fahrenheit. Also mo...
4f8595a86038 2021-07-13 08:57:18 Remilia Scarlet v1.5.x-work Report dew point in celsius and fahrenheit
7076be53699c 2021-07-13 08:54:24 Remilia Scarlet v1.5.x-work Calculate dew point using Magnus formula
620890c47871 2021-07-13 08:53:19 Remilia Scarlet 2.0-work Calculate dew point using Magnus formula

Recently edited Tags

Name Rev. Time Author
v0.1.0 abfe7a9ddedc 2020-06-21 17:45:23 alexa <alexa>
v0.2.0 9b39a1be28f5 2020-06-24 09:33:12 alexa <alexa>
v0.3.0 f65465310fa8 2020-06-25 20:31:45 alexa <alexa>
v0.4.4 c6bc0e1a2c2d 2020-06-30 22:37:33 alexa <alexa>
v0.4.5 80a1cfe2159a 2020-07-01 04:20:24 alexa <alexa>
v0.5.0 4436d8191bfd 2020-07-03 01:04:29 alexa <alexa>
0.5.2 76089df9527f 2020-07-08 00:24:12 alexa <alexa>
v0.5.3 69872a734bf1 2020-07-10 06:44:27 alexa <alexa>
v0.6.0 6b5786abacf4 2020-07-13 09:29:24 alexa <alexa>
v0.7.0 ec02877812da 2020-07-19 10:43:25 alexa <alexa>


Name Rev. Time Author Message
2.0-work 7561da17771d 2021-08-03 08:55:43 Remilia Scarlet Check for HTTP 200 code wit...
default 6c73b19263d8 2020-06-30 00:40:22 alexa <alexa> Added continueOn to message...
v1.5.x-work c5016df2c8f9 2021-09-21 10:22:24 Remilia Scarlet Handle exceptions in Messag...
v2.x 5c20b507bbc9 2020-12-05 11:46:20 Remilia Scarlet Account for a span less tha...



MonikaBot is a simple bot for Discord, written in Crystal. It is the spiritual successor to Sumomo-Go.

How do I get set up?

Clone this repository, then run make release=1 (or just make). The binary will be in the bin/ folder.

Certain commands need external programs to operate. On startup, if the required program(s) is not found, the command will be disabled:

  • !factor: factor
  • !ddate: ddate
  • !bigmoji: GraphicsMagick, Gifsicle
  • !bigavatar: GraphicsMagick, Gifsicle
  • !oblige: Oblige and 7z
  • !tts: espeak, SoX, and LAME
  • !cal: cal
  • !ascii: figlet
  • !spell: aspell


What's still missing in v1.x?

The whole permission system is not yet implemented.... but since I don't think it was ever really used, this shouldn't matter. However, non-admin users still cannot run admin commands! That has not changed.

The !forecast command is currently disabled. There's a little bit of information why in this checkin

Development Info

Coming (back) soon.

Style info

I use a slightly different style for my code.

  • Keep lines 118 characters or shorter. Obviously sometimes you can't, but please try. Use 115 characters for Markdown files, though.
  • Please use pascalCase for variable and method names. Use CamelCase for type names. Use UPPER_SNAKE_CASE for constants.
  • The type name for exceptions end with Error. For example, ExternalProgramError.

How do I contribute?

I do not use Git - if you're reading this on Gitlab, you're looking at a mirror. Let the Crystal folks know you'd like them to support other VCSs.

  1. Clone the repository.
  2. Add your feature and test it.
  3. Create a pull request on OSDN.
Show on old repository browser