Thingport

Your personal 3D model library.

Collect, organize, preview, and manage your 3D printing models
from the places where you discover them.

Frontend Backend Slicer Bridge Docker React Three.js PostgreSQL

About

If you do 3D printing, you probably discover models across MakerWorld, Printables, Thingiverse, and other 3D model platforms.

Over time, those bookmarks, downloads, ZIP files, and random folders become a mess.

Thingport is your personal, self-hosted 3D model library.

Bring your models together in one place, keep them organized, and preview them directly in your browser.

Instead of having your collection scattered across different websites and your filesystem, Thingport gives you a single place to manage the models you actually want to keep.

Features

  • 🗂️ Personal model library — keep your 3D models in one organized place
  • 🌐 Import from model websites — bring models into your library from supported platforms
  • 🔎 Search & organize — find models in your collection quickly
  • 🧊 3D previews — inspect models directly in the browser
  • 📦 Archive your models — keep local copies of the models you want to preserve
  • 🖼️ Model metadata & previews — keep useful information together with the files
  • 🔗 Source links — retain the original model source
  • 🐳 Self-hosted — run your own instance and keep your collection under your control
  • 🌍 Multi-language ready — internationalization support built into the frontend
  • ⚡ Modern web interface — React + Three.js powered UI

Screenshots

Installation

Docker

Clone the repository:

git clone https://github.com/TautvydasDerzinskas/Thingport.git
cd Thingport
cp .env.example .env

Configure .env if needed, then start Thingport:

docker compose up -d

The application will be available at:

http://localhost

For a deployment using the published container images:

docker compose -f docker-compose.deploy.yml up -d

Components

Component Description
frontend React web application with Three.js 3D viewer
backend Node.js / Express API
db PostgreSQL database
flaresolverr Web request / anti-bot handling

Tech Stack

  • Frontend: React, TypeScript, Vite, Material UI, Three.js
  • Backend: Node.js, TypeScript, Express, Prisma
  • Database: PostgreSQL
  • 3D rendering: Three.js / OpenCTM
  • Deployment: Docker Compose
  • Testing: Vitest
  • Linting: Oxlint

License

See LICENSE for license information.

S
Description
Collect, organize, preview, and manage your 3D printing models from the places where you discover them.
Readme AGPL-3.0
101 MiB
0 Stars 1 Watchers 0 Forks
2026-10-20 01:36:59 -05:00
Languages
TypeScript 95.2%
Astro 1.9%
JavaScript 1%
Go 0.5%
SCSS 0.5%
Other 0.7%