Statictastic Tech Stack

19 Feb 2019

Inspired by Alex’s 2019 Tech Stack for Bootstrappers post, I decided to write about Statictastic tech stack in details.

What’s Statictastic

Statictastic is a tool created to help teams to publish and manage static sites. It handles hosting, custom domain, CMS, Contact Forms, CDN, SSL certificates, etc.

Check this short video below if you want to have a better idea about the features and how Statictastic works:

Marketing Website

Whenever someone is accessing www.statictastic.com they are accessing the product marketing website. The main goal of this website is to be fast and to include all the content that customers need to know about the product.

I’m eating my own dog food here. It’s a static site generated using Hugo and fully managed by Statictastic.

Elixir & Phoenix

Statictastic had the need to deal with concurrency since the beginning. For this reason, finding a language that offers such support was a “must have” feature.

Elixir was my choice to build Statictastic. Although I have been using the language for a few years, I keep getting impressed by its simplicity and powerfulness. In combination with the Phoenix framework, both the development and now the maintenance have been productive.

Application Hosting

Customers trust Statictastic to serve their websites. That means that Statictastic is responsible for their brand and there’s no space for messing up.

AWS was my choice to host and manage the application infrastructure. All the building blocks (DNS, load balancer, CDN, Auto Scaling, Database, Events, Emails) are managed by AWS, which make things easy to maintain and extremely resilient.

Database

The main application uses PostgreSQL as its main database. PostgreSQL is a battle-tested database engine and offers all the features needed by Statictastic up to now. As mentioned above, Statictastic PostgreSQL is managed by AWS (RDS).

Sending emails

Statictastic send emails in two specific cases: Account activity and Contact form submission.

AWS SES is the tool responsible for sending transactional emails. It’s quite simple and integrated with all the other AWS tools.

Receiving Emails

Here I just stuck to the basic: G-Suite. It handles all the contact and support emails at the moment.

Logging

Although AWS has its own tool to manage logs, I decided to go with Timber to manage Statictastic logs.

Timber is a new kind of cloud-based logging system designed for applications and developers. Spend less time debugging and more time shipping.

The tool is quite simple and has some neat features.

Error Tracking

I decided to use Sentry to get visibility about the errors. I have been using it for some time and it has never disappointed me.

Open-source error tracking that helps developers monitor and fix crashes in real time. Iterate continuously. Boost efficiency. Improve user experience.

Video

Currently Statictastic includes a single video in the “How It Works” section, but I have plans on adding more videos, covering features in details.

I’m using Wistia to manage and host videos. It makes things simple and also gives nice insights about the video plays and user behaviours.

Chat

I’m a big fan of real-time chats. I think they are a nice way to get in contact and to get quick answers.

Statictastic integrated Drift, which enables all the visitors to quickly chat with me in case they have any questions about Statictastic or related topic.

Payment Processing

After evaluating both Braintree and Stripe, I decided to go with Stripe, mostly because of its simplicity and developer-centric docs.

Project Management

I was developing Statictastic by myself, so although I needed something to organise and prioritise things, I didn’t need anything fancy. I’m using Trello to organise everything, from development to content creation.


Well, that’s it. I tried to cover all the tools and services currently being used to build and run Statictastic. If you have any questions or want to know more about a specific topic, feel free to get in touch.

Migrating from Ruby to Elixir

FREE e-mail course

By joining this free, 5-lesson course, you'll receive personalized & actionable lessons that cover:

  • Is Elixir the right choice?
  • Getting the team up to speed
  • How to start your first Elixir project
  • Delivering a successful project
  • Next steps