Hey there! We are glad you want to contribute to some autocomplete package, hereby are mentioned some generic instructions, but you should refer to each package CONTRIBUTING.md file to learn more.
create-completion-spec
@fig/publish-spec
@withfig/autocomplete-tools
@fig/eslint-config-autocomplete
@withfig/eslint-plugin-fig-linter
@fig/autocomplete-generators
@fig/autocomplete-helpers
argparse_complete_fig
cement_complete_fig
clap_complete_fig
click_complete_fig
cobracompletefig
@fig/complete-commander
@fig/complete-oclif
swift-argument-parser
@fig/autocomplete-merge
@fig/autocomplete-shared
@withfig/autocomplete-types
- Open an issue to get some feedback from the Fig team on your problem so that you don't risk to waste hours of work
- Once you got some feedback you can fork the repo and clone in on your machine
- Run
pnpm install
in the root of the monorepo to get the deps installed - Work on the new feature/fix, be sure to follow conventions
- Add tests for the edits done , (run all the tests from the root of the repo using
pnpm test
or from each specific package usingpnpm run --filter ./<package name> test
) - Push to your fork
- Open a PR
- Enjoy the feat/fix live!
We are using pnpm workspaces in this repo. All CLIs are under the cli/ folder, while most of the other packages are in the root of the repo.
Concerning npm
commands there are some global ones available from the root of the monorepo and some other relative to the packages.
A good PR should have tests if applicable and some kind of description telling what changes were done.