Skip to content
rName / docs / index

Introduction to rName

Overview of rName for macOS: batch rename files and folders, rule chains, live real-time preview, conflict isolation, and atomic two-phase safety.

What is rName?

rName is a native macOS application designed for macOS 26 or later to rename individual files or large collections in bulk, calmly and without surprises.

Built entirely in Swift 6 (strict concurrency), SwiftUI, and Observation, rName takes an immediate visual approach: drop a folder into the window, build a chain of rules, and the central table instantly displays every proposed name next to the original filename in real time. Nothing is touched or altered on your storage drive until you explicitly click the Rename button (or press the ⌘ ↩ keyboard shortcut).


Core Philosophy & Design Principles

1. Nothing Happens Behind Your Back

The real-time preview table continually contrasts the original filename with the calculated result generated by your active rule chain. If any rule produces an issue (such as duplicate names in the list, an existing file already present in that folder on disk, or an invalid filesystem character), that specific file is flagged and excluded from the operation, protecting your files from accidental overwrite or corruption.

2. Complete Privacy & Zero Network Activity

  • No network calls: the app contains no URLSession calls, third-party analytics SDKs, or background trackers.
  • No accounts or sign-ins: no user registration, credentials, or subscriptions required.
  • Strictly local: rName does not inspect file contents; it only reads filenames, paths, sizes, and filesystem creation/modification dates.

3. Atomic Two-Phase Renaming Engine

Renaming files on case-insensitive filesystems (such as standard macOS APFS or HFS+) comes with well-known pitfalls: changing only the letter case of a file (e.g., photo.jpg → Photo.jpg) or swapping two filenames (A → B and B → A) causes traditional rename tools to fail. rName executes all renames in two distinct phases via hidden temporary staging files (.rname-<UUID>). If an unexpected error halts execution midway through a batch, the engine automatically rolls back all files to their original names without leaving orphaned temporary files behind.

4. Apple App Sandbox Compliance

Under macOS, renaming a file calls the low-level rename() system call, which requires write permissions on the containing parent folder, not merely the file itself. rName handles this operating system security requirement seamlessly by storing granted folder access in security-scoped bookmarks, asking once per folder and allowing you to inspect and revoke permissions at any time from Settings › Permissions.


Quick Start Workflow

  1. Add Files: drop a folder or selected files into the window, or press ⌘ O to choose a directory from Finder.
  2. Build Your Rule Chain: click on any of the 8 available rules in the left sidebar (e.g., Numbering, Letter case, Replace), or pick a ready-made preset from the bottom menu.
  3. Inspect the Preview: the central table shows ready files in green, with old and new names side by side. If needed, double-click any individual row to manually customize its name.
  4. Apply and Rename: press ⌘ ↩ to commit the changes to disk.
  5. Undo if Needed: made a mistake? Press ⌥ ⌘ Z to immediately revert all files from the last session back to their original names.

Documentation Roadmap