npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@owservable/folders

v2.0.6

Published

get files and folders

Readme

owservable

@owservable/folders

A TypeScript utility library for file system operations, providing functions to work with folders and files recursively.

🚀 Features

  • 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

📦 Installation

npm install @owservable/folders

or

yarn add @owservable/folders

or

pnpm add @owservable/folders

🔧 Usage

Basic Import

import {
  addFilesFromFolder,
  listSubfoldersByName,
  listSubfoldersFilesByFolderName
} from '@owservable/folders';

Adding Files from Folder Recursively

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 paths

Listing Subfolders by Name

import { listSubfoldersByName } from '@owservable/folders';

// Get all subfolders with specific name
const subfolders = listSubfoldersByName('/path/to/parent', 'targetFolderName');

console.log(subfolders); // Array of matching subfolder paths

Getting Files from Specific Subfolders

import { 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 subfolders

📚 API Documentation

addFilesFromFolder(files: string[], folder: string): string[]

Recursively adds all files from a folder and its subfolders to the provided array.

Parameters:

  • files: Array to store file paths
  • folder: Path to the folder to scan

Returns: Array of file paths

listSubfoldersByName(folder: string, name: string): string[]

Lists all subfolders with a specific name within a given folder.

Parameters:

  • folder: Path to the parent folder
  • name: Name of subfolders to find

Returns: Array of matching subfolder paths

listSubfoldersFilesByFolderName(folder: string, name: string): string[]

Gets all files from subfolders that match a specific name.

Parameters:

  • folder: Path to the parent folder
  • name: Name of subfolders to search in

Returns: Array of file paths from matching subfolders

🏗️ Requirements

  • Node.js >= 20
  • TypeScript support

🧪 Testing

npm test

📖 Documentation

🔗 Related Projects

📄 License

Licensed under The Unlicense.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.