Thank you for your interest in contributing to shell-config
! We welcome contributions from everyone.
To get started, follow these steps:
- Fork the repository
- Clone your forked repository
- Install dependencies with
npm ci --no-fund --no-audit --no-progress
- Make changes
- Test your changes
- Submit a pull request against the
beta
branch
- Open the relevant file by the new app category in here
- Add the new app / tool to the relevant category, follow the IAppSetup type
- Test your changes via the following command:
npm run start:dev -- install
- Commit your changes, like
fix(apps): <Explain>
, and open a PR 🎉
- CLI is getting updated via the
shell-config update
command OR installed via the init.sh script - Both the .zshrc configuration, and the UpdateCommand calling
source <(shell-config init-script)
in order to have the dynamic init command of the latest version. - The InitCommand kicks in, and checks all of the relevant files, tools, setups and configurations of the latest version, and update them if needed. Homebrew is been installed for both Apple Silicon and Intel based Macs. It will also backup the current
.zshrc
file
We follow the Conventional Commits specification. Make sure your commit messages follow the format below:
<type>(optional scope): <description>
Available types:
chore
- changes that should not affect production user code, e.g. update dev-dependenciesfix
- bug fixes, e.g. fix linting errorsfeat
- new features, e.g. add new commanddocs
- changes to documentationci
- changes to CI configuration- For breaking changes, add a
BREAKING CHANGE
section to the commit message body:
feat: <description>
BREAKING CHANGE: <description>
If you have any questions or concerns, please contact us at [email protected].
Happy contributing!