A collection of standalone, platform-agnostic TypeScript utility scripts for managing common development tasks in any project.
- 🧹 Clean Script - Remove build artifacts and temp directories
- 🌳 Generate Tree - Create a markdown representation of your project structure
- 🔑 Make Executable - Set executable permissions for script files (chmod +x)
- 📦 Update Dependencies - Update package.json dependencies to latest versions
All scripts are:
- 🔄 Cross-platform - Works on Windows, macOS, and Linux
- 🧩 Standalone - Each script is self-contained
- 🌐 Project-agnostic - Use in any TypeScript/JavaScript project
- 🛡️ Typed - Full TypeScript definitions and type safety
# Install from npm
npm install scripts-ts --save-dev
# Or yarn
yarn add scripts-ts --dev
# Or pnpm
pnpm add -D scripts-ts
# Clone the repository
git clone https://github.com/cyanheads/scripts-ts.git
# Install dependencies
npm install
# Build the project
npm run build
# Default (cleans dist and logs directories)
npm run clean
# Specify custom directories
npm run clean temp coverage node_modules/.cache
# Direct usage
npx ts-clean temp cache
# Default (outputs to docs/tree.md)
npm run tree
# Custom output path
npm run tree ./documentation/project-structure.md
# Limit depth
npm run tree --depth=3
# Help
npm run tree --help
# Default (makes dist/index.js executable)
npm run make-executable
# Specify files
npm run make-executable dist/cli.js bin/*.js
# Direct usage
npx ts-make-executable dist/cli.js
# Update all dependencies
npm run update-deps
# Update specific packages
npm run update-deps react react-dom
# Update to minor versions only
npm run update-deps --target=minor
# Dry run
npm run update-deps --dry-run
Add to your project's package.json:
"scripts": {
"clean": "scripts-ts-clean",
"tree": "scripts-ts-tree",
"make-executable": "scripts-ts-make-executable",
"update-deps": "scripts-ts-update-deps",
"rebuild": "npm run clean && npm run build",
"postbuild": "npm run make-executable"
}
Each script is designed to be easily customizable:
- Copy individual script files into your project
- Modify default values to match your project needs
- Add additional functionality as required
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
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
This project is licensed under the Apache License 2.0.