2018-2020
A web application for property managers and vacation rental owners.
Multitenancy - Single code base and database for multiple clients on separate domains. Domain based authorization and authentication.
Server - Ubuntu server running on an AWS EC2 instance. Automatic snapshots allow for easy rollbacks and data protection. Custom CloudWatch logs report valuable statistics needed for proper application resource scaling.
Domains - Integrates with the Namecheap API, which allows clients to purchase new domain names directly through the rails application.
Security - HTTPS certificates per domain automatically setup, and renewed with letsEncrypt from the front-end interface. Forced SSL on every request. Authentication handled by Devise. Authorization using CanCanCan. Sensitive environment variables are stored using Figaro.
Payments - Monthly subscription fee for clients, and all other payments from guests, are handled by the rails application. Payment information is sent, received, and stored on, a separate Braintree server.
Content management - The CMS is my own homegrown rails solution. I have made it into my own private gem on GitHub. I plan to release it soon to the public.
Amazon Web Services - Cloudflare Content Delivery Network delivers all assets of the application, SES for Sending Email and Forwarding Email to personal email addresses. Automatic verification of domains to ensure high email reputation, and to prevent deliveries to spam folder. Clients with large newsletter subscriber lists are able to send hundreds of thousands of emails in seconds. All emails are traceable. Using REST communication from Amazon, the application keeps track of every email that was sent, received, bounced, rejected, complained, etc. for proper email reputation balancing.
Google Analytics - Provides easy integration for clients so they can manage their advertising campaigns.