ThiersLabs
<- All projects

SAT Explorer

A faster, more original file explorer

SAT Explorer is my own Windows file explorer: all the features of the built-in one, but faster, with tabs and split panes, and a look that adapts to the machine it runs on.

Not public yet
  • C#
  • .NET 10
  • WPF
  • MVVM
  • Win32

At a glance

3
layers, dependencies in one direction only
4
quality modes, picked from your GPU
0
lines of WPF in the engine
.NET 10
C#, WPF and MVVM

The story

  1. 01

    Why build a file explorer

    I spend all day in folders, and the built-in Explorer often makes me wait. I wanted something in the spirit of Total Commander: split panes, tabs, custom commands and columns such as git and SVN status, with every feature of the original still there.

  2. 02

    Core and skin

    The app is three layers: App (the WPF interface), Core (the engine) and Shell (the Win32 calls). Dependencies only point down. The engine never touches WPF, and the look lives in swappable skins, so a feature built once in Core works in every skin.

  3. 03

    Speed pillars

    Folders are read with native FindFirstFileEx calls instead of the slower .NET helpers. All reading happens off the UI thread and navigation can be cancelled, so fast clicking never piles up. The file list is virtualized, so only the rows on screen are ever drawn, no matter how big the folder is.

  4. 04

    Scales with your hardware

    On start-up the app checks how well the GPU can render. A gaming PC gets shadows, rounded corners, animations and live thumbnails. An old laptop or a remote desktop gets a flat, instant interface. One build, no separate lite version.

Screenshot

Inside the app

A real screenshot of SAT Explorer: two panes with their own tabs, quick access, drives and a toolbar for everyday file work. A few personal folder names were changed before publishing.

SAT Explorer with two panes side by side, a sidebar with quick access and drives, and a toolbar
Open full size

Who does what

  1. AppWPF windows, skins and quality detection
  2. CoreEngine: models, services, view models. No WPF
  3. ShellWin32 calls: enumeration, icons, context menus

More projects