@imprion91/finding-files
v1.1.2
Published
Looking which file is used in a page? With this library, you'll have a complete list of each files used by the current page.
Downloads
7
Readme
finding-files
A simple and efficient npm library for finding files in a webpage.
Installation
npm install @imprion91/finding-filesor with yarn:
yarn add @imprion91/finding-filesUsage
Import ES Modules
import { FileFinder, createFileFinder, findAllFiles } from '@imprion91/finding-files';
import type { FileInfo, FindFilesOptions } from '@imprion91/finding-files';
// Example usage
const finder = new FileFinder({
includeImages: true,
includeCSS: true,
includeJS: true,
});
finder.findFiles().then((files) => {
console.log('All files:', files);
// Filter only CSS files
const cssFiles = finder.filterByType(files, 'css');
console.log('CSS files:', cssFiles);
// Group files by type
const grouped = finder.groupByType(files);
console.log('Grouped by type:', grouped);
// Count total files
const total = finder.countFiles(files);
console.log('Total files:', total);
});Import CommonJS
const { FileFinder, createFileFinder, findAllFiles } = require('@imprion91/finding-files');Development
Prerequisites
- Node.js >= 18.0.0
- npm or yarn
Install dependencies
npm installAvailable scripts
# Run tests
npm test
# Run tests with coverage
npm run test:coverage
# Run the linter
npm run lint
# Format the code
npm run format
# Check TypeScript types
npm run typecheck
# Build the library
npm run buildProject structure
finding-files/
├── tests/
│ └── FileFinder.test.ts
├── src/
│ ├── core
│ │ ├── FileFinder.ts # Main class for finding files
│ ├── types
│ │ ├── index.ts # Type definitions
│ └── index.ts # Entry point for the library
├── dist/ # Compiled files (generated)
├── .github/
│ └── workflows/
│ └── ci.yml # Configuration CI/CD
├── package.json
├── tsconfig.json # Configuration TypeScript
├── .eslintrc.cjs # Configuration ESLint
├── .prettierrc # Configuration Prettier
└── jest.config.js # Configuration JestContributing
Contributions are welcome! Feel free to:
- Fork the project
- Create a branch for your feature (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Contribution guidelines
- Ensure all tests pass
- Follow the code style (use
npm run lintandnpm run format) - Add tests for any new features
- Update the documentation if necessary
License
This project is licensed under the MIT License. See the LICENSE file for details.
Acknowledgments
- Thanks to all contributors
Created with love by MarquesThomasCoding, HosenMohsen, and Roland-HUON
