opencommit
opencommit copied to clipboard
[Feature]: Use standard config file naming
trafficstars
Description
I see there’s already an issue about using a .env file for local config, and a PR that renames it to .opencommit.env.
However, this naming does not follow common Node.js config file conventions.
Examples of standard config file names:
- ESLint:
.eslintrc/eslint.config.js - Prettier:
.prettierrc - Stylelint:
.stylelintrc - Jest:
jest.config.js
Suggested Solution
Use a config loader like cosmiconfig, which supports popular formats like .opencommitrc, opencommit.config.js, etc.
By default, Cosmiconfig will check the current directory for the following:
- a
package.jsonproperty- a JSON or YAML, extensionless "rc file"
- an "rc file" with the extensions
.json,.yaml,.yml,.js,.ts,.mjs, or.cjs- any of the above two inside a
.configsubdirectory- a
.config.js,.config.ts,.config.mjs, or.config.cjsfile
This would:
- Follow standard naming
- Simplify config handling (loading, merging configs, etc.)
- Allow removal of custom logic: https://github.com/di-sukharev/opencommit/blob/c1756b85aff7804b194d41cc9e5bde32c73fe22f/src/commands/config.ts#L919-L931
Happy to help if needed!
Alternatives
No response
Additional Context
No response