metatables aren't that hard really and you don't have to think about them for a pretty long time. most of the time even when you do need it you're just setting __call for a constructor and __index to another table though to give you a class prototype
oop is also kinda beside the point though (basic classes != oop) and not correlated with good code (it is correlated with over-engineered bullshit though)
most of the relevant stuff for organizing code is just basic lua syntax sugar, like being able to write function some_table:whatever() and it passes self automatically if you also call with :whatever()
Sure! I just updated it to run in Docker so it shoudl be WAY easier to set up now. I knwo the code is pretty messy, I am hoping to sit down and clean it up now that I have a better understanding of Lapis.
Short term wants is to make the code cleaner and less buggy, long term I want lapchan to run on a RESTful API.