@halvaradop/create-config
v0.2.0
Published
CLI to streamline and manage @halvaradop configuration packages efficiently.
Maintainers
Readme
@halvaradop/create-config
A powerful CLI tool for installing and managing development configurations from the @halvaradop/configs monorepo.
Features
- Interactive Installation: Choose which configurations to install with a beautiful interactive interface
- Multiple Configurations: Support for ESLint, Prettier, TypeScript, and Tsup configurations
- Smart Overwrite Detection: Automatically detects existing configurations and asks for confirmation
- Package.json Integration: Automatically adds relevant scripts to your package.json
- Beautiful UI: Colored output and progress indicators for better user experience
- Flexible Options: Support for command-line flags and non-interactive mode
Installation
pnpm install -g @halvaradop/create-configUsage
Interactive Installation (Recommended)
# Using pnpm create (recommended)
pnpm create @halvaradop/create-config
# Using pnpm dlx
pnpm dlx @halvaradop/create-configCommand Line Examples
# Install specific configuration(s)
pnpm create @halvaradop/create-config typescript
# Force overwrite existing configurations
pnpm create @halvaradop/create-config typescript --forceInstall Individual Configurations
You can install configurations individually as needed:
# Install ESLint configuration
pnpm create @halvaradop/create-config eslint
# Install Prettier configuration
pnpm create @halvaradop/create-config prettier
# Install TypeScript configuration
pnpm create @halvaradop/create-config ts
# Install Tsup configuration
pnpm create @halvaradop/create-config tsupAvailable Configurations
ESLint
- Base: Basic ESLint rules for JavaScript/TypeScript
- React: Rules for React projects
- Next.js: Rules for Next.js projects
- Turbo: Rules for Turbo monorepos
- Prettier: Rules for Prettier monorepos
- TypeScript: TypeScript-specific rules
Example ESLint Scripts
{
"scripts": {
"lint": "eslint . --cache --cache-location .cache/.eslintcache",
"lint:fix": "eslint . --fix --cache --cache-location .cache/.eslintcache"
}
}TypeScript
- Base: Basic TypeScript configuration
- React: For React projects
- Next.js: For Next.js projects
Example TypeScript Scripts
{
"scripts": {
"dev": "tsc --watch",
"build": "tsc",
"type-check": "tsc --noEmit"
}
}Prettier
- Standard Prettier configuration with sensible defaults
Example Prettier Scripts
{
"scripts": {
"format": "prettier --write .",
"format:check": "prettier --check ."
}
}Tsup
- Optimized configuration for building TypeScript packages
Example Tsup Scripts
{
"scripts": {
"build": "tsup",
"dev": "tsup --watch"
}
}Configuration Files Created
The CLI tool creates the following configuration files:
eslint.config.js- ESLint configurationprettier.config.js- Prettier configurationtsconfig.json- TypeScript configurationtsup.config.js- Tsup configuration
Command Line Options
| Option | Short | Description |
| --------- | ----- | --------------------------------------- |
| --force | -f | Force overwrite existing configurations |
Related Packages
This package is part of the @halvaradop/configs ecosystem:
@halvaradop/eslint-config- ESLint configuration@halvaradop/prettier-config- Prettier configuration@halvaradop/tsconfig- TypeScript configuration@halvaradop/tsup- Tsup configuration
License
MIT © Hernan Alvarado
Changelog
See CHANGELOG.md for details about changes in each version.
For more information about ESLint configuration options, visit the official ESLint documentation.
