Repository navigation
Releases
3D Viewer 4.0.1
3D Viewer 4.0.1 gives the Admin page a cleaner layout.
Changed
- Admin page in tabs: instead of one long page, the settings are grouped by subject, one group at a time:
- Library: libraries, network shares, trash, duplicates, import from link
- Accounts: accounts and private server, single sign-on, two-factor sign-in, access and the admin password, API tokens, share links
- Printing: printers and print cost
- Viewer: viewer defaults and the app icon
- Thumbnails: thumbnails and previews, storage, size limits
- Notifications, Backup, and Support & ideas
- On a phone the tabs are a scrolling row at the top.
/admin#accounts(or any tab) opens it directly, and the ↑ ↓ ← → keys move between tabs. - Tidier forms: all fields look alike and fit narrow screens.
Security
- Updated three libraries (body-parser, multer, zod) to fix denial-of-service issues: specially made requests could tie up the server.
Update
Pull the new image and redeploy (or docker compose pull && docker compose up -d), then hard-refresh your browser (Ctrl+Shift+R, or Cmd+Shift+R on a Mac).
Image: ghcr.io/vincentflagg/3dviewer:4.0.1 (or :4.0, :latest), for amd64 and arm64.
❤️ Support
3D Viewer is free. If it's useful to you, please consider a donation at 3dview.ittechshop.com or buy me a coffee (write 3D Viewer in the message to get a supporter key). Thank you!
3D Viewer 4.0.0
3D Viewer 4.0.0 is the biggest update yet: it sends prints to your printers, keeps a shared To print list, speaks Spanish, and adds two-factor sign-in, single sign-on, notifications, statistics and more.
New
Printing
-
Send to printer: sliced files (G-code,
.bgcode, a sliced 3MF) go straight from the viewer or the To print list to a printer on your network, and can start right away. Each printer shows whether it is free or printing.- Klipper via Moonraker (Mainsail, Fluidd), and Creality K1/K2/Hi/Ender-3 V3 with Moonraker reachable
- OctoPrint (API key)
- Prusa MK4, XL, MINI, Core One via PrusaLink
- Bambu Lab X1, P1, A1 in LAN mode (send a 3MF saved with “Export plate sliced file”)
Add printers in Admin → Printers (with Test connection) and tick Can print for the accounts that may use them.
-
To print: a shared list of what to print next, with copies, material and a note. Reorder it, tick off printed copies (they go into your print log), and send from it.
-
3MF plates and colours: projects from Bambu Studio, OrcaSlicer and PrusaSlicer show their plates (one at a time or all) and their filament colours.
Library
- Similar models: the viewer lists models from the whole library that look like the open one (copies, versions, remixes), by shape, whatever their names, size or position.
- Edit many models at once: select models or folders and set the series, description, licence and your tags in one go.
- Licence field for each model (for example CC BY-NC 4.0).
- Statistics (signed-in accounts): models and space, added, opened and printed per month, by type and by library, the largest and the most used models.
Staying informed
- Notifications when new models turn up, an import finishes, someone opens a share link or a backup fails: Telegram, Discord, e-mail, ntfy and Gotify (Admin → Notifications).
- API tokens (read-only or full access) for scripts and Home Assistant:
GET /api/stats/summarywithAuthorization: Bearer <token>. The README has a ready-made sensor.
Sign-in and safety
- Two-factor sign-in with any authenticator app, with recovery codes. Optional for everyone; the admin can require it.
- Single sign-on with your OpenID Connect provider (Authelia, Authentik, Keycloak, Zitadel, Pocket ID…). Passwords keep working; accounts are made on first sign-in.
- Automatic backups of the settings into a folder every day or week, keeping as many as you choose (Admin → Backup).
Languages
- 3D Viewer now speaks English and Spanish (Español). It follows your browser; the globe button at the top changes it.
- Help translate: corrections and new languages are welcome as translation issues. See Languages and translations in the README.
Faster and lighter
- The 3D view only draws while something moves (turning, zooming, a tool), and uses no CPU or GPU while you just look at it: easier on laptops and phones.
- Card pictures load as you scroll to them, not all at once: big folders open faster and use less memory and network.
- Thumbnails drawn in your browser give their graphics memory back when done.
- On the server, the thumbnail renderer replaces its pages every 50 models to free memory, and starts Chromium without background services it does not need.
Update
Pull the new image and redeploy (or docker compose pull && docker compose up -d), then hard-refresh your browser (Ctrl+Shift+R, or Cmd+Shift+R on a Mac).
Image: ghcr.io/vincentflagg/3dviewer:4.0.0 (or :4.0, :latest), for amd64 and arm64.
❤️ Support
3D Viewer is free. If it's useful to you, please consider a donation at 3dview.ittechshop.com or buy me a coffee (write 3D Viewer in the message to get a supporter key). Thank you!
3D Viewer 3.2.0
3D Viewer 3.2.0 can be installed as an app on your computer, phone or tablet.
New
- Install app (the phone icon at the top of the page): 3D Viewer gets its own icon and opens in its own window, without the browser's bars.
- Chrome, Edge and Android install it from an https:// address. Over plain http, the button explains the options: HTTPS through your NAS's reverse proxy, Tailscale or a tunnel, or Chrome's Create shortcut → Open as window on a computer.
- iPhone and iPad: Share → Add to Home Screen (works over http too); the button shows the steps.
- Two app icons: a shaded 3D cube (the default) or a flat 2D one. Choose in Admin → Install as an app. The browser tab, the top-left logo and the supporter screen use it too.
- When the server cannot be reached, the installed app shows a short message instead of the browser's error page.
Update
Pull the new image and redeploy (or docker compose pull && docker compose up -d), then hard-refresh your browser (Ctrl+Shift+R, or Cmd+Shift+R on a Mac).
Image: ghcr.io/vincentflagg/3dviewer:3.2.0 (or :3.2, :latest), for amd64 and arm64.
❤️ Support
3D Viewer is free. If it's useful to you, please consider a donation at 3dview.ittechshop.com or buy me a coffee (write 3D Viewer in the message to get a supporter key). Thank you!
3D Viewer 3.1.1
3D Viewer 3.1.1 makes it easy to send ideas and bug reports.
New
- Ideas and bug reports on the Admin page: links to the public GitHub page to:
- suggest an idea or vote for one (Ideas);
- open a feature request;
- report a bug, with a form that asks for the version, NAS and browser.
Update
Pull the new image and redeploy (or docker compose pull && docker compose up -d), then hard-refresh your browser (Ctrl+Shift+R, or Cmd+Shift+R on a Mac).
Image: ghcr.io/vincentflagg/3dviewer:3.1.1 (or :3.1, :latest), for amd64 and arm64.
❤️ Support
3D Viewer is free. If it's useful to you, please consider a donation at 3dview.ittechshop.com or buy me a coffee (write 3D Viewer in the message to get a supporter key). Thank you!
3D Viewer 3.1.0
3D Viewer 3.1.0 adds export with repair, print orientation, AR, share links, import from a link and a better compare.
New
In the viewer
- Export (Tools): download the model as STL, 3MF or OBJ, standing on the bed as shown.
- Scale in %, or a Height in mm.
- Repair (on by default): closes holes, turns flipped faces the right way, and removes faces with no area or stored twice. It then says what it fixed and what is left.
- Admins can Save a copy here, next to the original (for example
benchy-fixed.3mf). The original is never changed.
- Lay flat on a face (Orientation): click a face and the model turns to lie on it.
- Auto-orient for printing (Orientation): finds the position that needs the fewest supports, then the biggest footprint. Save it with Save orientation.
- View in AR on phones and tablets: the model at its real size, on your table or floor.
- iPhone and iPad use AR Quick Look.
- Android uses Google's Scene Viewer. The phone must reach the server at its address, and Scene Viewer may need HTTPS.
- Compare with…: pick a second model from the folder or by searching the library.
- Overlay in Compare: the two models on top of each other, each in its own see-through colour, to see what differs.
Sharing and importing
- Share links: Share link in the viewer, or Share above a folder.
- Choose how long it works: 1 day, 7 days, 30 days or until removed.
- Whoever opens it sees only that model, or that folder and its sub-folders, and can view and download. This also works on a private server, without an account.
- Remove links in the dialog, or all of them in Admin → Share links.
- Import from link: Import at the top of the page, for signed-in accounts and the admin.
- Printables, Thingiverse or MakerWorld model page: a new folder with the files, the pictures (the first one becomes the folder picture) and a README with the description.
- Thingiverse needs a free app token: add it in Admin → Import from link.
- MakerWorld only lets its members download files, so usually only the pictures and description come in. Download the 3MF there and upload it.
- A link to a file (.stl, .3mf, .zip…): saved in the open folder; archives are unpacked.
Update
Pull the new image and redeploy (or docker compose pull && docker compose up -d), then hard-refresh your browser (Ctrl+Shift+R, or Cmd+Shift+R on a Mac).
Image: ghcr.io/vincentflagg/3dviewer:3.1.0 (or :3.1, :latest), for amd64 and arm64.
❤️ Support
3D Viewer is free. If it's useful to you, please consider a donation at 3dview.ittechshop.com or buy me a coffee (write 3D Viewer in the message to get a supporter key). Thank you!
3D Viewer 3.0.2
3D Viewer 3.0.2 shows what is inside the folders the search finds.
Changed
- Folders in search results show their folder picture (a
coverimage or the model chosen as the folder thumbnail). - Without a folder picture they show a 2×2 collage of model thumbnails: the folder's own models first, then models from its sub-folders. Models without a thumbnail yet are left out.
Update
Pull the new image and redeploy (or docker compose pull && docker compose up -d), then hard-refresh your browser (Ctrl+Shift+R, or Cmd+Shift+R on a Mac).
Image: ghcr.io/vincentflagg/3dviewer:3.0.2 (or :3.0, :latest), for amd64 and arm64.
❤️ Support
3D Viewer is free. If it's useful to you, please consider a donation at 3dview.ittechshop.com or buy me a coffee (write 3D Viewer in the message to get a supporter key). Thank you!
3D Viewer 3.0.1
3D Viewer 3.0.1 makes the search look inside sub-folders.
Changed
- Search now covers the open folder and all its sub-folders. At the top level it searches the whole library.
- What it matches: file names, folder names, display names, descriptions, series names and your own tags (when signed in). Every word you type must match.
- Results: one list, matching folders first, each model showing the folder it is in.
- Using the results: a click opens the model or folder. Esc, the × in the search box, or clearing the box goes back to the folder.
Update
Pull the new image and redeploy (or docker compose pull && docker compose up -d), then hard-refresh your browser (Ctrl+Shift+R, or Cmd+Shift+R on a Mac).
Image: ghcr.io/vincentflagg/3dviewer:3.0.1 (or :3.0, :latest), for amd64 and arm64.
❤️ Support
3D Viewer is free. If it's useful to you, please consider a donation at 3dview.ittechshop.com or buy me a coffee (write 3D Viewer in the message to get a supporter key). Thank you!
3D Viewer 3.0.0
3D Viewer 3.0.0 adds print checks to the viewer: wall thickness, overhangs, a mesh check, and weight and cost. Measuring and the cross-section get new tools too.
New
Wall thickness
Tools → Wall thickness colours the whole model by how thick its walls are.
- Red is below Thin below (0.8 mm by default). Thicker walls go orange, yellow, green and then blue.
- The thinnest spots are labelled on the model with their thickness.
- It runs in the background, with progress, on models of up to 6 million triangles.
Overhangs
Tools → Overhangs shows in red the faces that will need supports.
- The Angle slider is the slicer's overhang threshold, 45° by default.
- It says how much of the surface needs supports. Faces on the bed don't count.
Mesh check
Tools → Mesh check finds and highlights:
- open edges (holes), in orange;
- non-manifold edges, in purple;
- flipped faces, in red.
It counts each kind and the separate parts. A hollow inside a part is recognised as such, not as flipped.
Weight & cost
Tools → Weight & cost shows the volume, plastic used, weight, filament length and cost.
- Materials: PLA, PETG, ABS, ASA, TPU, Nylon, PC, PLA-CF and resin.
- Settings: infill, number of walls, and 1.75 or 2.85 mm filament.
- Prices: the admin sets the currency and the price per kg of each material in Admin → Print cost. Each person can change a price for themselves in the viewer.
- Accuracy: it is an estimate without slicing, usually within 10–15 % of a slicer, without supports.
Measure
- Distance now shows its ΔX, ΔY and ΔZ parts.
- Circle: click three points on the edge of a hole or a round part to get the radius, diameter and centre.
- Angle: click three points to get the angle at the middle one.
Cross-section
- Type the exact cut height, or the distance from the left side or front.
- The cut face is hatched. This can be turned off with Hatched cut faces.
Fixed
- The cross-section's red cut face could be hidden behind the model's own inside faces. It shows again.
Update
Pull the new image and redeploy (or docker compose pull && docker compose up -d), then hard-refresh your browser (Ctrl+Shift+R, or Cmd+Shift+R on a Mac).
Image: ghcr.io/vincentflagg/3dviewer:3.0.0 (or :3.0, :latest), for amd64 and arm64.
❤️ Support
3D Viewer is free. If it's useful to you, please consider a donation at 3dview.ittechshop.com or buy me a coffee (write 3D Viewer in the message to get a supporter key). Thank you!
3D Viewer 2.1.7
3D Viewer 2.1.7 can fit the whole picture in a folder card, with black or white borders.
New
- Fill or Fit whole picture, in the Folder picture dialog and in its full-size preview:
- Fill (the default) crops the picture to the 4:3 folder card. You choose the part with the frame, as before.
- Fit whole picture keeps all of the picture, shrunk to fit the card. The empty sides (left and right, or top and bottom) are filled with Black or White borders.
- The small preview and the full-size preview show the card exactly as it will be saved.
- Each picture keeps its own choice while you step through them with the arrows.
- GIFs keep Fill, because they are saved as they are, still animated.
Update
Pull the new image and redeploy (or docker compose pull && docker compose up -d), then hard-refresh your browser (Ctrl+Shift+R, or Cmd+Shift+R on a Mac).
Image: ghcr.io/vincentflagg/3dviewer:2.1.7 (or :2.1, :latest), for amd64 and arm64.
❤️ Support
3D Viewer is free. If it's useful to you, please consider a donation at 3dview.ittechshop.com or buy me a coffee (write 3D Viewer in the message to get a supporter key). Thank you!
3D Viewer 2.1.6
3D Viewer 2.1.6 adds Fit to screen and Actual size to the folder picture's full-size preview.
New
- Fit to screen (the default): every picture fills the screen. Small pictures and model thumbnails are enlarged, and big ones are shrunk.
- Actual size shows the picture at 100 %, starting where the frame is. Scroll, or drag beside the frame, to look around; dragging the frame and its corners works as before.
- Switch between them with the button at the top right, next to the X. The choice stays while you step through the pictures with the arrows.
Update
Pull the new image and redeploy (or docker compose pull && docker compose up -d), then hard-refresh your browser (Ctrl+Shift+R, or Cmd+Shift+R on a Mac).
Image: ghcr.io/vincentflagg/3dviewer:2.1.6 (or :2.1, :latest), for amd64 and arm64.
❤️ Support
3D Viewer is free. If it's useful to you, please consider a donation at 3dview.ittechshop.com or buy me a coffee (write 3D Viewer in the message to get a supporter key). Thank you!