OpenFarm
An open-source platform for managing groups of 3D printers, developed in collaboration with Joshua Schell, Tyler Peters, and Matthew Elliott.
Engineering Overview
OpenFarm is a distributed microservices framework architected to orchestrate fleets of 3D printers. As a Lead Maintainer, I co-designed the system using a containerized approach (Docker) to ensure scalable deployment across heterogeneous hardware.
The backend utilizes C#/.NET for high-throughput G-code parsing and job scheduling, while communicating asynchronously via RabbitMQ message brokers. This architecture allows for fault-tolerant monitoring of print jobs and real-time resource allocation.
Technologies Used
- C#
- Python
- RabbitMQ
- OctoPrint
- Avalonia UI
- Google Forms
- Postgres
- Docker
- MinIO
Key Technical Features
- Microservices Architecture: Decoupled services for auth, job queueing, and telemetry using Docker Compose.
- G-Code Parsing Engine: Custom C# logic to analyze print files for duration estimates, material usage, and malicious/erroneous payloads.
- Asynchronous Messaging: RabbitMQ integration to handle high-volume status updates between microservice nodes.
- System Dashboard: Leverages the Avalonia UI framework to deliver metrics such as lifetime prints and service uptime to operators.