Papertrail is sent logs via Heroku log drains, and provides centralised logging of both the web and background workers for debugging errors and spelunking into logs. Papertrail
GitHub was where both technical and non-technical people collaborated on the source code, and was used with Buildkite and Heroku’s integrations for testing and deployment. Non-tecnical people on the project used GitHub’s web UI to update markdown files, replace images, and help edit typos and copy. GitHub
PostCSS handles compiling node-based CSS libraries, including BassCSS (the whole site is only ~85 lines of custom CSS). It also does auto-vendor-prefixing and support for CSS variables. PostCSS
Wistia provides absolutely pro video embedding. We could have multiple people uploading and managing videos, total player customization, built-in Google Analytics video event tracking, a Javascript API for posting our own Intercom events, and tools to protect the videos for paying customers only. Wistia
Background processing of Pushover push notifications to admins when sales occur, payments processing via Pin Payments, Campaign Monitor transaction email sending, and Intercom event API posting. Sidekiq
Rock solid transactional storage of user, purchase and course activity data. During development database dumps were easy to create and download locally for testing. Heroku Postgres
Heroku runs the web and background worker processes. Auto-deployments are triggered via GitHub commits and wait for the Buildkite test build to pass. Heroku pipelines with beta release phase execution (for automatically running database migrations) allowed for easy manual testing of big new releases. Web and worker logs are sent to Papertrail. Heroku