Überblick
Panda3DPrints
Custom 3D printing + ready-made catalog.
Upload an image and we turn it into a precision-printed resin piece. Or upload a 3D file you already have and we print it directly. Or browse our unified catalog of finished pieces ready to ship today — every item also supports optional STL download.
Website: panda3dprints.com
Shipping: US only
What It Does
Three Customer Flows
Custom Prints (Image): Upload a photo, pick size (S/M/L), choose resin, finish, and optional base. Airbrush painting with color picker, shipping speed, and inline Stripe Payment Element. Every order goes through admin review before production.
Custom Prints (3D File): Upload an STL, OBJ, or 3MF file you already have (up to 100 MB). We validate the file, then print it directly. Same finishing options, lower base price — no conversion work.
Catalog Purchases: Browse the unified gallery/catalog, pick a size, and check out. Items in the catalog support optional STL downloads: disabled, paid (behind checkout), or free (direct download).
For the Customer
- No Accounts: Order confirmation and tracking delivered by email with a private public-ID link.
- Full Transparency: Every price is shown before payment, including add-ons and shipping.
- Contact Options: Public contact form, plus a "request a different base coat" link from any catalog item.
- STL Downloads: Signed 7-day links for paid purchases; free direct downloads when the shop owner enables them.
For the Admin
- Approval Workflow: Every paid custom order lands in an
awaiting_reviewqueue. Approve for production or reject with a reason (with optional automatic Stripe refund). - Unified Item Management: One admin UI for the entire catalog. Each item can be a portfolio piece, a purchasable print, or both. Supports before/after flip images, hero image, gallery images, and optional video.
- 3D File Management: Download customer-uploaded STL/OBJ/3MF files directly from the order detail page (streamed, resumable, audit-logged).
- Contact Inbox: View, mark replied, and archive. Auto-acknowledgement email sent to the customer; admin notified on new submission.
- STL Download Modes Per Item: Disabled / Paid / Free.
- Analytics: Custom-print charts, source-type charts, store charts, STL charts, and contact charts.
- Observability: Admin audit log, application error log, live system metrics, and in-memory live logs.
- Team Management: Invite admins/staff, change roles, and revoke access.
- Referral Program: Auto-generated codes, credit on both sides.
- Site Settings: Every pricing/config value editable without a deploy, including two separate base-price sets for image-source and 3D-file-source orders.
Technology Stack
| Layer | Choice |
|---|---|
| Framework | Flask 3 (app factory + blueprints) |
| ORM | SQLAlchemy + Alembic (Flask-Migrate) |
| Database | SQLite (development), PostgreSQL (production) |
| Authentication | Password + optional TOTP for admin/staff |
| Payments | Stripe Payment Element (embedded) + webhooks |
| Resend (transactional + notification) | |
| Frontend | Jinja2, Tailwind CSS (compiled), Vanilla JavaScript |
| Charts | ApexCharts (CDN) |
| System Metrics | psutil |
| 3D File Validation | Custom memory-safe magic-byte sniffing |
| Package Manager | uv |
| Hosting | Render — Web + PostgreSQL + Persistent Disk |
| File Storage | Render persistent disk (/var/data/uploads) |