#kif
Seeing as this bot is mostly for fun we are going to have some restrictions.
- kif should try to hold as little in running memory as possible
- Whenever possible save information in local files
- Along with this kif should not lose functionality on a restart
- Take advantage of the local file system to avoid redoing calculations/queries
- Try to use get_or_create when applicable
- Treat each event as progressing kif along a state machine
- So that events can happen even if kif restarts constantly
- Instead of hard coding or class level variables, use config files when possible
- Not only does this help with testing, but it makes it easier to port kif to other slacks
- Use handlers for processing events
- These are going to eventually have an interface and will be possible to enable/disable from slack
- kif should be completely portable
- This means that it should run on any OS
- It can be assumed that files were gotten from git
- Installations should be done through pip
- but can be assumed to be done by the user
- Mainly this means to make directories and files before you use them
- For completely arbitrary reasons kif is not capitalized.
- sigh