A TypeScript utility library for file system operations, providing functions to work with folders and files recursively.
- Recursively add files from folders
- List subfolders by name with filtering
- Get files from specific subfolders
- Written in TypeScript with full type support
- Lodash integration for efficient data manipulation
npm install @owservable/foldersor
yarn add @owservable/foldersor
pnpm add @owservable/foldersimport {
addFilesFromFolder,
listSubfoldersByName,
listSubfoldersFilesByFolderName
} from '@owservable/folders';import { addFilesFromFolder } from '@owservable/folders';
// Initialize empty array to collect files
const files: string[] = [];
// Add all files from a folder recursively
const allFiles = addFilesFromFolder(files, '/path/to/folder');
console.log(allFiles); // Array of all file pathsimport { listSubfoldersByName } from '@owservable/folders';
// Get all subfolders with specific name
const subfolders = listSubfoldersByName('/path/to/parent', 'targetFolderName');
console.log(subfolders); // Array of matching subfolder pathsimport { listSubfoldersFilesByFolderName } from '@owservable/folders';
// Get all files from subfolders with specific name
const files = listSubfoldersFilesByFolderName('/path/to/parent', 'targetFolderName');
console.log(files); // Array of file paths from matching subfoldersRecursively adds all files from a folder and its subfolders to the provided array.
Parameters:
files: Array to store file pathsfolder: Path to the folder to scan
Returns: Array of file paths
Lists all subfolders with a specific name within a given folder.
Parameters:
folder: Path to the parent foldername: Name of subfolders to find
Returns: Array of matching subfolder paths
Gets all files from subfolders that match a specific name.
Parameters:
folder: Path to the parent foldername: Name of subfolders to search in
Returns: Array of file paths from matching subfolders
- Node.js >= 20
- TypeScript support
npm test- TypeDoc Documentation: https://owservable.github.io/folders/docs/
- Test Coverage: https://owservable.github.io/folders/coverage/
- @owservable/actions - Action pattern implementation
- @owservable/fastify-auto-routes - Fastify auto routing
- owservable - Main reactive backend library
Licensed under The Unlicense.
Contributions are welcome! Please feel free to submit a Pull Request.