Armadillo Additive Manufacturing
Titanium 3D printing order management for customers and admins.
See it live: https://armadilloadditive.com
About the project
Armadillo Additive Manufacturing is a Titanium 3D printing company which focuses on medical- and aerospace-grade manufacturing.
I designed and built a web dashboard to let customers and admins create and manage print orders, including a custom invoice flow.
The main functionality of the web app includes:
- Customers can create orders including uploading CAD files
- View uploaded parts in an interactive 3D file viewer
- Admins can create quotes and invoices
- Admins can send order status updates
- Two marketing pages including a Spanish translation
Process
Design
I designed mockups for the marketing pages, device and dashboard pages in Figma. I went through several iterations with the client to identify a style that worked well for the marketing and app pages.
Development
After settling on the design, I built the app using Elixir, Phoenix, TailwindCSS, Alpine.js, and PostgreSQL.
I built an interactive 3D file viewer using Three.js which supports STL files. Customers and admins can preview uploaded files and even interact with them to pan and zoom around the uploaded part.
I built a custom quote and invoicing workflow using Stripe.
I deployed the app and database using Fly.io. I also used AWS for object storage and email.
Screenshots
Handoff
After thorough testing and a multi-month support period, I documented the app architecture and tech stack and handed off the code and all other info needed to maintain and operate the web app.
Conclusion
This was a great opportunity to learn Elixir and Phoenix, as well as learn a ton more about Stripe. This was a very form- and file-heavy app that required handling images, videos, and CAD files. It also included a good amount of email work to handle notifications between customers and admins.