opensourceprojects.dev

A broadsheet for software that doesn't ask for your email

A fast, minimalist 3D viewer with a CLI and C++/Python bindings
GitHub RepoImpressions5

Project Description

View on GitHub

F3D: A Fast, Minimalist 3D Viewer That Plays Nice With Your Terminal

You've got a 3D file—maybe a glTF model, a scientific dataset, or some STEP file from a colleague—and you just want to look at it. Not fire up a heavyweight DCC tool, not wrestle with a web viewer, just open it and see what's inside. F3D is a fast, minimalist 3D viewer built for exactly that, and it happens to be fully controllable from the command line.

What It Does

F3D is a desktop application for viewing 3D files, maintained by the F3D-APP Foundation (pronounced /fɛd/). It supports a wide range of formats spanning digital content and scientific datasets: glTF, USD, STL, STEP, PLY, OBJ, FBX, and Alembic. Beyond just displaying geometry, it can show animations, generate thumbnails, and apply rendering and texturing options including real-time physically based rendering and raytracing.

The application is designed around the command line. You can drive it entirely through CLI flags, use configuration files, set up interactive hotkeys, drag and drop files, and integrate it into your file manager. If you'd rather not install anything locally, there's even a browser-based viewer available.

Under the hood, F3D also ships libf3d, a library for rendering meshes. It exposes a C++17 API with bindings for C, Python, Java, and JavaScript—so if you're building something that needs to render 3D content, you can embed the same engine rather than starting from scratch.

Why It's Cool

  • Format coverage that spans disciplines. Most viewers pick a lane—either graphics assets or scientific visualization. F3D handles both. You can throw a glTF at it in the morning and a PLY or STEP file at it in the afternoon without switching tools. That's a practical win if you work across domains.

  • The CLI is the interface, not an afterthought. Running f3d /path/to/file.ext is the whole quickstart. And appending --output=/path/to/img.png saves the render straight to an image file. That means you can script it—batch-convert renders, generate thumbnails in a pipeline, or wire it into a build step. A lot of viewers treat the command line as a fallback; here it's the primary way in.

  • Physically based rendering and raytracing in a minimalist viewer. This is the part that stands out. You don't usually associate "minimalist" with real-time PBR and raytracing, but F3D offers both as rendering options. So you're not sacrificing visual quality for the sake of a lightweight tool.

  • libf3d makes it a building block. The fact that the viewer is backed by a library with bindings across C++, C, Python, Java, and JavaScript means you're not locked into the app itself. If you need mesh rendering in your own project, libf3d is a legitimate option, and the viewer doubles as a reference for what the library can do.

  • It meets you where you already work. Configuration files, hotkeys, drag and drop, file manager integration—these aren't flashy features, but they're the kind of thing that decides whether a tool actually gets used day to day. F3D seems built with that in mind.

How to Try It

  1. Head to the download page, which lists the latest release packages and installation options for supported platforms. Once installed, the f3d command should be available from your terminal.

  2. Open a file directly:

f3d /path/to/file.ext
  1. Want to save the result instead of just viewing it? Add an output flag:
f3d /path/to/file.ext --output=/path/to/img.png
  1. For more detail on getting started, check the quickstart guide. If you're interested in the library rather than the app, the libf3d documentation is the place to look.

  2. If you want to build it yourself, the contribution guide covers that.

You can also just try it in your browser if you want to kick the tires before installing anything. The repository lives at github.com/f3d-app/f3d, and there's a Discord if you need help or want to talk to other users and developers.

Final Thoughts

F3D is best suited for developers and technical users who deal with 3D files regularly and want a viewer that stays out of the way. If you're scripting renders, working across graphics and scientific formats, or building something that needs mesh rendering via libf3d, it's worth a look. It's not trying to be a full modeling suite, and it doesn't pretend to be—it's a focused tool that does viewing, rendering, and scripting well, and exposes itself as a library when you need more. The project is actively maintained and asks for sponsorship to cover its recurring maintenance costs, which is a reasonable ask for something you might end up using daily.


Follow @githubprojects for more developer tools and open source projects.

Back to Projects
Project ID: dc047a2f-711f-454b-b77b-b86620f2b04dLast updated: October 9, 2026 at 07:14 AM