I've received almost a dozen messages from different people asking to take Niarja over. I'm not against the idea, but it may not be as straightforward as some people assume and I want to make sure they understand what they'd be taking on. Here's an explanation of the tech which you can ignore if you're not into that kind of thing.
Niarja isn't a single host that can be handed over. It runs on a variety of different AWS offerings. The Niarja website itself is Ruby on Rails and runs on EC2 instance(s) (there is a Beta instance for manual testing), and it doesn't do much more than render views. Niarja's database uses RDS (MySQL) and contains all of the processed tweet data, population data, and character skill data. The rest is "serverless" - all processing of tweets, population snapshots, and character data happens through AWS Lambdas written in Java, and fronted by API Gateway. Raw skill dump files live in S3. Both the backend and frontend packages push to CodeCommit. The frontend uses CodePipeline to deploy through the Beta and Production environment stages. The backend uses serverless (because this was pre-the AWS CDK being any good) to perform infrastructure updates via CloudFormation and while the tweet-consuming process contains decent unit tests it's otherwise very manual. You'll also need to know a little bit about VPCs and communicating in and out of private subnets. Oh right, the frontend EC2 instances are actually set up via Elastic Beanstalk for some reason I can't remember.
If you know what at least 80% of those words mean, you're probably in a decent position to take over Niarja. But, you will have to deal with these problems:
- I use the overall AWS account for other projects (best practices be damned) and can't simply hand it over to you. This isn't that big of a deal, but just FYI.
- Everything is within limits of AWS's free tiers, except any EC2 instances I'm currently running & the MySQL database. Those end up net-free for me for various reasons, but they wouldn't be free for you.
- I created Niarja to learn more about AWS, back before I started using it in my professional life. It's scrappy, poorly tested, and doesn't follow best practices. Ruby on Rails is an opinioned framework and I...kinda followed that? I guess Niarja would be fun to own if you enjoy refactoring bad code that other people wrote. Niarja was my testing ground and the next thing I would have done would be converting the frontend to React, and the backend to DynamoDB.
- I also wouldn't want to give you any character skill data, because that's all linked to existing email addresses of registered users. I'd never expose those to another owner, those will die with "Niarja 1.0" and will need to be re-created.
So that's what you'd be in for. This isn't very complicated if you've ever managed cloud-based infrastructure before, but if you haven't then this would probably be discouraging.
If you didn't feel like dealing with that, I could also just upload stuff to GitHub. The logic for parsing tweets and skill dump files would be useful. I also have a full archive of "unprocessed" and "processed" tweets, though you'd have to keep in mind that manual corrections were often necessary so replaying the "unprocessed" tweets has a lot of edge cases.
Just let me know