A Node.js module that moves files, directories, or symlinks across partitions and devices, unlike fs.rename().
move-file is a Node.js module that moves files, directories, or symlinks reliably, even across different partitions or devices. It solves the limitation of Node.js's built-in `fs.rename()`, which fails when moving files across devices, providing a robust alternative for file operations in cross-platform applications.
Node.js developers who need reliable file-moving capabilities, especially in environments where files may be moved across partitions, devices, or in automated scripts.
Developers choose move-file because it offers cross-device file moving, a promise-based API, and automatic directory creation—features missing from Node.js's native `fs.rename()`, making file operations more reliable and intuitive.
Move a file, directory, or symlink - Even works across devices
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Solves the key limitation of Node.js's `fs.rename()` by supporting moves across partitions and devices, as highlighted in the README for robust cross-platform applications.
Provides asynchronous operations with promises, making integration into modern Node.js code easier compared to callback-based APIs, and includes synchronous methods for flexibility.
Creates non-existent destination directories automatically during moves, simplifying file management workflows without manual setup.
Offers an `overwrite` option to prevent overwriting existing files, giving developers more control than basic move operations.
Adds an external module to your project, which can be unnecessary if cross-device moves aren't required, increasing bundle size and maintenance compared to using native APIs.
The `directoryMode` option for directory permissions has no effect on Windows, reducing cross-platform consistency and potentially confusing developers expecting uniform behavior.
Only handles moving files, directories, and symlinks; for copying or other file operations, you need separate modules like `copy-file`, adding complexity to the toolchain.