Projects

Most of my projects can be found on my GitHub, but I also keep a bunch of random junk on there, so hopefully I can link to and point out some of my favorites (or most useful) here.

smartthings_logging

A fairly simple project with the goal/intent of pulling Samsung SmartThings sensor data into CloudWatch. CloudWatch Metrics are created for each sensor datasource and can be graphed to see historical data and trends. Recently updated to work in Lambda, and also leverage AWS Serverless Application Model with automatic deployments through CodePipeline.

Cloud-Fail2Ban

Python Lambda functions that can accept events from CloudWatch (such as from Linux Auth.log and Syslog), and check against Fail2Ban-like expressions, storing match records in DynamoDB in order to aggregate matches across multiple hosts. Once a threshold of matches is reached, bans are triggered via messages to an SNS topic with filters on the SQS subscriptions so individual hosts can pick which jails/bans are relevant to them. This is a future target to get updated with SAM.

Various Puppet Modules

As I use Puppet at home to manage my desktop, laptops, and various other hosts, I've had need to create a few Puppet Modules to help along the way, and have released a few on the Puppet Forge.

flatpak

Module to manage Flatpak remotes and applications. Needs some more attention and a rewrite, which I've started, but have yet to complete.

irssi

Module to install and manage user configuration for the irssi IRC client.

vim

Module to install and manage user configuration for vim.

Warhammer Army Browser

A quick little webapp I wrote a while back to play around with some serverless concepts and Javascript-based Single-Page Applications. Database is backed by DynamoDB, site is hosted out of S3, and the API is out of Lambda. It is very VERY rough (then again, who doesn't hate yesterday's code?) but it was fun and accomplished it's goal. Could be used for any tabletop gamming, and I might cycle back some day and improve it and convert it over to SAM as well.

This Site!

This very site's code is also up on GitHub. It is fully serverless and built with SAM/CloudFormation. Probably quite a bit overkill for what it is, but it was fun and a good learning experience. Might be useful to someone, if they're curious.