The DartCannon Technology Stack

Today we want to pull back the curtain on how we built DartCannon and share our appreciation on all the projects that have helped us get here.

The Core

The foundational piece of DartCannon is our custom-build proprietary Monte Carlo simulation engine, Thompson. Under development in some form for over 8 years, Thompson is what enables us to iterate quickly and provide such high quality simulations at an affordable price point. Over the development of DartCannon every other piece of technology has been swapped out for alternatives and likely will be again, but Thompson has been the constant we’ve built around.

Power Players

With Thompson powering the core of DartCannon, these are the components which drive the main user experience.

  • Firebase - Our database and authentication, firebase allows us to not worry about servers or infrastructure.
  • Stripe - For payments and subscriptions, stripe means we can be confident that security is all taken care of.
  • Vue - There are a lot of javascript frameworks, Vue happens to be the one our team knew and was comfortable using to build DartCannon.
  • Vuetify - Vuetify is a fantastic material design framework for Vue.

Supporting Roles

While not as central as our Power Players, these pieces all play important parts driving very specific features.

  • Chartjs - Powers all the pretty confidence intervals
  • Dagre - Enables process diagrams for projects
  • exceljs - The underlying tech for our excel import / export.

Extras

In addition to these components, we have a huge pile of additional pieces we depend on for testing, error handling, screen shots, and more. They are too numerous and detailed for this overview, but we owe them a lot.

Thanks

DartCannon would not exist without the rich open source ecosystem and we are deeply indebted to all of the projects mentioned here.

Photo by Chris Yang Unsplash