{"id":13479647,"url":"https://github.com/withfig/autocomplete-tools","last_synced_at":"2025-05-16T08:04:53.459Z","repository":{"id":37990819,"uuid":"404887592","full_name":"withfig/autocomplete-tools","owner":"withfig","description":"Command line tools for working with Fig autocomplete specs","archived":false,"fork":false,"pushed_at":"2025-02-24T22:38:25.000Z","size":6240,"stargazers_count":48,"open_issues_count":37,"forks_count":32,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-05-10T10:38:15.215Z","etag":null,"topics":["autocomplete","cicd","cli","eslint","fig","hacktoberfest","helpers","tools"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/withfig.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-09-09T22:33:25.000Z","updated_at":"2025-05-05T22:00:31.000Z","dependencies_parsed_at":"2023-02-16T13:16:17.615Z","dependency_job_id":"427c28b5-a19d-4835-9767-d0e22b65b0d9","html_url":"https://github.com/withfig/autocomplete-tools","commit_stats":{"total_commits":518,"total_committers":20,"mean_commits":25.9,"dds":0.5617760617760618,"last_synced_commit":"98cd68410a07a78ac805a2de3873ee852e2bda36"},"previous_names":[],"tags_count":192,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/withfig%2Fautocomplete-tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/withfig%2Fautocomplete-tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/withfig%2Fautocomplete-tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/withfig%2Fautocomplete-tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/withfig","download_url":"https://codeload.github.com/withfig/autocomplete-tools/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254493378,"owners_count":22080126,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["autocomplete","cicd","cli","eslint","fig","hacktoberfest","helpers","tools"],"created_at":"2024-07-31T16:02:20.766Z","updated_at":"2025-05-16T08:04:48.449Z","avatar_url":"https://github.com/withfig.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"# Fig Autocomplete-Tooling Repo\n\nThis repo contains the source for all of Fig tools related with [autocomplete](https://github.com/withfig/autocomplete).\n\n1. You can see the list of Fig's packages on the NPM registry here: https://www.npmjs.com/~withfig\n\n2. You can see the source code and related README for each package in the `./packages` folder\n\n## Packages\n\n- [`create-completion-spec`](cli/create-completion-spec/README.md)\n- [`@fig/publish-spec`](cli/publih-spec-to-team/README.md)\n- [`@withfig/autocomplete-tools`](cli/tools-cli/README.md)\n- [`@fig/eslint-config-autocomplete`](eslint/config-autocomplete/README.md)\n- [`@withfig/eslint-plugin-fig-linter`](eslint/plugin-fig-linter/README.md)\n- [`@fig/autocomplete-generators`](generators/README.md)\n- [`@fig/autocomplete-hooks`](hooks/README.md)\n- [`@fig/autocomplete-helpers`](helpers/README.md)\n- [`argparse_complete_fig`](integrations/argparse/README.md)\n- [`cement_complete_fig`](integrations/cement/README.md)\n- [`clap_complete_fig`](integrations/clap/README.md)\n- [`click_complete_fig`](integrations/click/README.md)\n- [`cobracompletefig`](integrations/cobra/README.md)\n- [`@fig/complete-commander`](integrations/commander/README.md)\n- [`@fig/complete-oclif`](integrations/oclif/README.md)\n- [`swift-argument-parser`](integrations/swift-argument-parser/README.md)\n- [`@fig/autocomplete-merge`](merge/README.md)\n- [`@fig/autocomplete-shared`](shared/README.md)\n- [`@withfig/autocomplete-types`](types/README.md)\n\n## To publish a package:\n\n1) Update the `package.json` `version` propery\n\n2) Commit the updated `package.json` file to the origin repo\n\n3) Git tag the commit you have just made using the following format and push the tag to the origin repo\n  - The git tag should be: `\u003cpackage_name\u003e@\u003cnew_numerical_version\u003e`\n  - Example: `git tag @fig/publish-spec@1.2.3`\n\n4) Run `pnpm publish ./\u003cpackage\u003e`\n\n\u003e **IMPORTANT**: remember to tag the new package version following the current conventions (see the previous tags of a package)\n\u003e this is important for some workflows we are running and to keep track of when releases were done.\n\n\u003e **IMPORTANT**: all packages need to be git tagged, not only npm ones!\n\ne.g.\n```bash\npnpm publish ./types\n```\n\n\u003e Note: `\u003cworkspace name\u003e` is not the name of the folder, but the name specified inside the package.json of the package to publish.\n\n## Conventions for new CLI integration\n\n### Package (integration) name\n\n- If namespaced it SHOULD be `@fig/complete[-_]($FRAMEWORK_NAME)`\n- If not namespaced it SHOULD be `($FRAMEWORK_NAME)[-_]complete[-_]fig`\n\nAccording to language conventions you can use a dash or an underscore to separate the words.\n\nExamples:\n- `@fig/complete-commander`\n- `@fig/complete-oclif`\n- `clap_complete_fig`\n- `cobracompletefig`\n\n### Name of the default subcommand added to the CLI\n\nMost of our CLI integration tools allow to set the name of the subcommand added to the CLI but we also provide a default value for that.\nThat default name MUST be `generate-fig-spec` such that running `$CLI generate-fig-spec` prints the spec.\n\n### Function that adds the command\n\nThe functions exported from the integration can:\n- Create a new framework subcommand which will print the spec when invoked\n- Generate a spec and return it\n\nIn all the cases the names are standardized and SHOULD be:\n- `addCompletionSpecCommand` or `createCompletionSpecCommand` for functions creating a new subcommand\n- `generateCompletionSpec` for functions that return the spec as a string\n\nAccording to language conventions these function names can be transformed to snake case, etc...\n\nIf the CLI tool integration gets added directly to the module of the CLI tool itself and the CLI tool is configured using chained methods (e.g. yargs), then the chain method name SHOULD be:\n- `.figCompletion()`\n\n### Docs on `public-site-nextjs`\n\nDocs MUST conform to the rules listed above too.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwithfig%2Fautocomplete-tools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwithfig%2Fautocomplete-tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwithfig%2Fautocomplete-tools/lists"}