Skip to content

Repository files navigation

Fiddler app icon

Fiddler

Cross-platform file management for macOS, Android/DeX, and the web.

Try the web app

Fiddler browsing source files with the preview pane open

Features

  • Icon and list views with sorting, expandable folders, breadcrumbs, hidden files, favorites, and type-to-jump navigation.
  • File operations including new folders and text files, rename, copy, cut, paste, duplicate, internal drag and drop, delete/trash, and multi-select.
  • Undo for rename, paste, drag/move, and recoverable trash operations.
  • Transfer progress and cancel for longer copies and cross-volume moves, with rollback on cancel or failure.
  • Zip archives on macOS and Android: compress a selection into a zip beside it, and extract one in place. Both report progress, can be cancelled, and can be undone.
  • Quick Look for folders, images, audio, video, Markdown, source/text files, links, and PDFs.
  • Audio player that keeps playing while you browse. The folder becomes the queue in chapter order, positions are remembered per file with a run-up scaled to how long you were away, and a book reopens on the chapter you were in. Playback speed, a sleep timer, and a chapter list. On Android it plays with the screen off, with lock-screen and notification controls, headphone buttons, and the right behaviour for calls and unplugged headphones. See docs/audio.md.
  • PDF reader with single-page or spread layout, fit-to-page/width, keyboard/touch navigation, full screen, and remembered reading position.
  • Image editing with rectangle and magic-wand selection, crop, delete to transparency, fill, rotate, mirror, and resize. Markup adds boxes, ovals, lines, arrows, freehand, highlighter, and text. Save a copy as JPEG, PNG, or WebP — or give a target file size and let Fiddler find the settings that meet it.
  • Text editing inside Fiddler. On desktop, Open uses the system handler when one exists and falls back to the editor when it does not.
  • Search across names and paths, plus content search for text files. Filters include forms such as ext:ts and kind:dir.
  • Git-aware browsing with branch names, status dots, ignored-file state, and linked worktrees on desktop.
  • Nearby devices on macOS and Android. Pair before browsing, then manage or revoke saved access later.
  • Android over USB on macOS using MTP, including thumbnails for media on the device.
  • Mounted volumes in the sidebar, including eject support where the platform allows it.
  • Platform sharing and file handoff on native builds, including Android share/open-with handling and APK installation.
  • Session restore for the last local folder and view preferences.
  • Keyboard and touch support across desktop, DeX, phone, and browser layouts.

A look around

The shots below are the web build running its demo filesystem, so everything in them is the app doing the actual work — the same React front end the Mac and Android builds ship. The device rows in the sidebar are the browser build's labelled demonstration; on macOS and Android they are a real cable and a real network.

Icon view of a Pictures folder with thumbnails and the preview pane open

Icon view, with real thumbnails and the preview pane.

List view with folders expanded in place Quick Look rendering a Markdown file
List view sorts, resizes columns, and expands folders in place. Quick Look renders Markdown, highlights source, and pages PDFs.
PDF reader showing a two-page spread Search results showing which line of each file matched
The PDF reader lays out a spread when there is room, and remembers where you stopped. Search reaches into text files and tells you which line matched.
Picture editor with an arrow and a text label drawn over a diagram Save panel with a target file size and format options
Markup adds shapes, arrows, ink, highlighter, and text over the picture. Name a file size and Fiddler finds the quality and dimensions that meet it.
Camera roll on an Android phone browsed over USB, with thumbnails Browsing a paired nearby device over Wi-Fi
An Android phone over the cable, thumbnails and all. A nearby device, once it has said yes.
Fiddler at phone width, with the sidebar collapsed to an icon rail

At phone width the sidebar becomes a rail and the targets grow for touch.

Git worktrees

Fiddler discovers linked worktrees and shows them with the repository they belong to, even when the worktree lives outside the main repository folder.

Fiddler list view showing linked Git worktrees and branches

Use Fiddler

Web

Open files.c0di.com.

The web build starts with a demo filesystem. In Chromium-based browsers, use Open Folder… to grant read/write access to a real local folder. You can also drag files or folders into the app.

The web build is static and does not upload opened files to a server. It does not provide real Git status, USB access, mounted volumes, or real nearby-device networking.

macOS

Fiddler supports macOS 11 and newer.

To run from source, install Node.js, Rust, and the normal Tauri macOS prerequisites, then:

npm ci
npm run tauri -- dev

Build the native app with:

npm run tauri -- build

Android / Samsung DeX

The Android build supports touch, keyboard, and pointer input. Long-press starts selection on touch devices; after that, tap additional items to toggle them. Share uses Android's system chooser, and incoming files from Open with/share flows open in Fiddler.

Build a debug ARM64 APK with a configured Tauri Android toolchain:

npm ci
npm run tauri -- android build --debug --target aarch64

Android deletions are permanent and require confirmation because Android does not provide Fiddler with a system Trash.

Common controls

Action Shortcut
Icon / list view ⌘1 / ⌘2
Back / forward / enclosing folder ⌘[ / ⌘] / ⌘↑
Quick Look Space
Toggle preview pane ⇧⌘P
Show hidden files ⇧⌘.
Search ⌘F
Copy / cut / paste ⌘C / ⌘X / ⌘V
Duplicate / undo ⌘D / ⌘Z
New folder / text file ⇧⌘N / ⌘N
Move to Trash ⌘⌫
Refresh F5 or ⌘R

On Android and the web, use Ctrl where the interface shows . With a DeX keyboard, Enter opens, F2 renames, Delete deletes, and Alt+← / Alt+→ move through history.

Right-click an item for file actions on pointer devices. Long-press on touch devices to select and access the same actions.

Audio

Action Shortcut
Play / pause Space in the player, or the keyboard's play key
Skip back / forward / on the timeline
Previous / next chapter The media keys, or the buttons
Close the player Esc

The bar at the bottom stays put while you browse. Tap it for the full screen, where the speed, the sleep timer and the chapter list live. Skip intervals default to 15 seconds back and 30 forward and can be changed beside the speed.

On Android, playback continues with the screen off and the notification carries skip back, play/pause and skip forward; swiping that notification away puts the book down and keeps your place.

PDF reader

Action Shortcut
Previous / next page / , PageUp / PageDown, or Space
First / last page Home / End
Full screen F
Fit page / width W
Single page / spread D
Exit full screen / close Esc

Touch users can swipe or tap page-turn areas to move through a PDF.

Development

Run the web app locally:

npm ci
npm run dev:web

Build the web app:

npm run build:web

Run the TypeScript tests:

npm test

Run the Rust tests:

cd src-tauri
cargo test

Deploy the web build to the configured Cloudflare custom domain:

npm run deploy

Current limitations

  • Archives are zip only. .tar.gz, .7z and .rar keep their icons and their previews, but Fiddler will not unpack them; password-protected zips are left to the system. The web build has no archive support at all.
  • The audio player reads no tags: chapter names come from filenames and the cover from a picture beside them. Chapter marks inside a single long .m4b are not read either, so one file plays as one recording.
  • No tabs or column view yet.
  • Drag and drop works inside Fiddler, but native drag in/out of Finder is not implemented yet.
  • The browser build cannot provide native Git, USB/MTP, volume, or real nearby-device features.

About

Cross platform file manager (Android, Mac)

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages