One reason for this project was to get experience with: Using Shrine for file attachments Hosting files on AWS Polymorphic relationships The publish-subscribe pattern using Wisper