Skip to content

Commit 4de87b0

Browse files
authored
Update README.md
1 parent 5122113 commit 4de87b0

1 file changed

Lines changed: 24 additions & 25 deletions

File tree

‎README.md‎

Lines changed: 24 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,14 @@
11
# quick-look-step
22

3-
> QuickLook & Finder thumbnail support for STEP (`.step` / `.stp`) 3d model files on macOS.
3+
> **_Fast_** QuickLook & Finder thumbnail support for STEP (`.step` / `.stp`) 3d model files on macOS.
44
>
5-
> Built with Swift + SwiftUI, SceneKit, and [foxtrot](https://github.com/Formlabs/foxtrot).
6-
7-
https://github.com/user-attachments/assets/339781d5-3b7b-41c0-b411-d992e49ae5bc
5+
> Built with Swift + SwiftUI, SceneKit, and [Formlabs/foxtrot](https://github.com/Formlabs/foxtrot).
86
97
## ✨ What does it do?
108

11-
* **Quick Look Preview** – Press spacebar in Finder to open an interactive 3d preview of the file (similar to the built-in preview for STL files).
12-
* **Finder Thumbnails** – Generates a raster thumbnail for every STEP file in Finder.
13-
* **STEP viewer app** – A tiny SwiftUI host app lets you drag-and-drop a STEP file to view it. This mostly exists because the preview and thumbnail extensions need to be bundled inside a `.app`.
9+
This allows you to **quickly** preview STEP files from Finder before opening them in your CAD tool. It will not render your STEP files as well as your CAD tool, but it will almost certainly open them faster!
1410

15-
Because [foxtrot](https://github.com/Formlabs/foxtrot) is neat and very fast, even fairly complex assemblies can be previewed quickly.
11+
https://github.com/user-attachments/assets/339781d5-3b7b-41c0-b411-d992e49ae5bc
1612

1713
## 🚧 Requirements
1814

@@ -22,30 +18,33 @@ Because [foxtrot](https://github.com/Formlabs/foxtrot) is neat and very fast, ev
2218
## 💻 Installing
2319

2420
* Download the latest verison from [Releases](https://github.com/johnboiles/quick-look-step/releases) and unzip it
25-
* Move QuickLookStep.app to Applications
26-
* Open the QuickLookStep.app
27-
* After a few seconds, a macOS notification appears saying an extension has added. Click this notification.
28-
* If you miss the notification, open System Settings > General > Login Items and Extensions, then click the (i) next to QuickLookStep.
21+
* Move `QuickLookStep.app` to Applications
22+
* Open the `QuickLookStep.app`
23+
* After a few seconds, a macOS notification appears saying an extension has added. Click this notification
24+
* If you miss the notification, open System Settings > General > Login Items and Extensions, then click the (i) next to QuickLookStep
2925
* Turn the switch on for both options under QuickLookStep and click Done
30-
* Open a Finder window and select a `.step` or `.stp` file. You should be able to preview it with Quick Look (using spacebar) it or see the thumbnail in the sidebar in column view.
26+
* Open a Finder window and select a `.step` or `.stp` file. You should be able to preview it from Finder with Quick Look (using spacebar) or see the thumbnail in the sidebar in column view
3127
* Close the app (it doesn't need to be open for the plugins to work)
3228

33-
## 🛠️ How it works
29+
## 🐞 Known issues
3430

35-
1. A small Rust crate (shipped pre-built as `libfoxtrot_universal.a`) parses the STEP file and exposes raw vertex/index buffers via a C-compatible FFI declared in `foxtrot.h`.
36-
2. `SceneBuilder.swift` converts those buffers into a `SCNScene`, applies reasonable lighting, and positions a camera so the whole model fits on screen.
37-
3. The scene is consumed by three targets:
38-
* **`StepThumbnail.appex`** – Renders the scene off-screen to produce the Finder thumbnail.
39-
* **`StepPreview.appex`** – Embeds an interactive `SCNView` for the Quick Look preview.
40-
* **`QuickLookStep` macOS app** – Convenient wrapper around the same scene useful during development and as a fallback viewer.
31+
* Some STEP files don't load. The underlying [Foxtrot](https://github.com/Formlabs/foxtrot) library doesn't like them.
32+
* Some STEP files have holes. Probably this is also a [Foxtrot](https://github.com/Formlabs/foxtrot) thing, but I could also be making a mistake in how I'm loading geometry to SceneKit. More testing against [Foxtrot](https://github.com/Formlabs/foxtrot) is needed. For this app, it's always better to be fast than perfect, but ideally it can be both 😀
33+
* The examples in the [Foxtrot README.md](https://github.com/Formlabs/foxtrot/blob/master/README.md) suggests Foxtrot supports textures. I don't have that hooked up in SceneKit yet.
34+
* Very large assemblies can take a long time to load and the extensions get stuck for a bit. Better timeouts could probably protect against this.
4135

42-
This app is intentionally very simple. macOS has similar built-in support for previewing STL files and I tried to keep this app as-similar-as-possible to that in appearance and feel.
36+
## 🔫 Troubleshooting
4337

44-
## 🐞 Known issues
38+
Mostly when I'm developing I sometimes get a stale version of the extension, or the extension doesn't load at all. When that happens I run this to do everything I know to do to clear the macOS cache.
4539

46-
* Some STEP files don't load. The underlying [foxtrot](https://github.com/Formlabs/foxtrot) library doesn't like them.
47-
* Some STEP files don't render perfectly. Probably this is also a foxtrot thing, but I could be making a mistake in how I'm loading geometry to SceneKit. More testing against foxtrot is needed. For this app, it's always better to be fast than perfect, but ideally it can be both 😀
48-
* Very large assemblies can take a long time to load and the extensions get stuck for a bit. Better timeouts could probably protect against this.
40+
```sh
41+
pluginkit -r -u com.johnboiles.QuickLookStep.StepThumbnail
42+
pluginkit -a /Applications/QuickLookStep.app
43+
qlmanage -r
44+
qlmanage -r cache
45+
killall QuickLookUIService
46+
killall Finder
47+
```
4948

5049
## 🤝 Contributing
5150

0 commit comments

Comments
 (0)