This is a submission for the GitHub Finish-Up-A-Thon Challenge
What I Built
I built a platform called StlFactory for small 3D print shops and individual users to create customized STL models to print at home. The inspiration was "Canva", but for creating 3D models.
Demo
The project is live at https://stlfactory.net. Here's a quick demo video - and yes, I added a keychain model especially for DEV:
The Comeback Story
The project started as just a public GitHub repository with customizable OpenSCAD models and some glue bash scripts to generate customized STLs.
Since I started building these programmatic 3D models one year ago, I wanted to create "an interface" for final users. I never got to actually work on it (until now) because I knew it would be a lot to cover, and I wasn't confident about how the backend would work to process the OpenSCAD model rendering. Disclaimer: Copilot helped me figure out all the details.
I built a backend in Python to turn the models into an API. I built a frontend in Laravel because that's the framework and language (PHP) that I'm most comfortable with, and it would allow me to build even faster using Copilot. So we went from a CLI-only experience to an online platform where users can create accounts and generate custom 3D models to print at home - no need to know about CAD, OpenSCAD, or even the command line interface.
My Experience with GitHub Copilot
GitHub Copilot helped me define the "contract" for the project with two independent parts (frontend in Python and backend in PHP). Then, we started building together every feature. The full application was built with prompts. Yeah, I maxxtokened during the last 2 weeks of May building this app.
Copilot also helped me define a plan for production. I already knew what I wanted (GCP / Google Cloud Run with workers for the render queues, Google S3-compatible storage), so I was very direct with my prompts. Took some back-and-forth to configure service accounts, but I was able to get everything up and running with a live domain in a couple days.
Of course, this infra is not very cheap! But I really wanted to learn and experiment with a more complex setup. My plan is to offer a subscription model, with some models being available for free. To gauge interest, I decided to start with a closed beta. Users can register for free and request beta access to try out the premium features. Copilot also helped me plan and implement the closed beta feature.
Update: after two weeks, the infra costs where going up so I decided to migrate to DigitalOcean, I have now one big droplet running the infra on Docker Compose and the costs is 3 times cheaper :) it was a good experiment with GCP, but I would need much more traffic to justify that investment.
Wrapping Up
I am very satisfied with the result of this experiment and quite impressed with what I was able to build in this short period, and Copilot helped me all the way through the process.
Disclaimers
A few disclaimers: I am part of the GitHub Stars program, but I didn't have any privileged information about this DEV challenge. In fact, I only found out about it a few days ago - this motivated me to finally ship it. I am happy for this opportunity to share about my project, even if it doesn't qualify for the challenge =) cheers and good luck to all participants!


Top comments (5)
Awesome work on this as always! ๐๐ฏ
Thank you!!! <3
Great, well done
thank you! \o/
Parametric OpenSCAD behind a Canva-style form is the right product for print shops โ the customer never has to see the script. The last mile after the worker compiles the STL is still printability: watertight/manifold, units, wall thickness on the customized dimensions, and whether a keychain or plate still slices after someone maxes a parameter. I run that check before a shop queues the file. luphra.com is where I send those compiled STLs when I need a real printability judgment after OpenSCAD has done its job. Nice ship from a git repo of models to a live renderer.