Project
Contributing
Code of Conduct
We have adopted the Contributor Covenant as our Code of Conduct, and we expect project participants to adhere to it.
Branch organization
You can send your pull requests against the main
branch.
Bugs
We use GitHub Issues for bug reporting.
Before reporting any new ones, please check if it has been reported already.
License
By contributing to Featurevisor, you agree that your contributions will be licensed under its MIT license.
Development workflow
Prerequsites:
Commands
Clone the repository.
Run:
$ npm ci
$ npm run bootstrap
Make your desired changes to any packages or documentation.
To test everything:
$ npm run build
$ npm test
Apply project-wide code styles:
$ npm run lint
If you need to override code style and linter configurations for individual packages, you can do so by adding or changing specific rules in package-level configuration files. For example:
// packages/sdk/prettier.config.js
const rootConfig = require("../../prettier.config");
/** @type {import('prettier').Config} */
const config = {
...rootConfig,
singleQuote: true,
};
module.exports = config;
// packages/sdk/.eslintrc.js
const rootConfig = require("../../.eslintrc.js");
/** @type {import("eslint").Linter.Config} */
const config = {
...rootConfig,
env: {
node: true,
},
rules: {
...rootConfig.rules,
"@typescript-eslint/no-explicit-any": "off",
},
};
module.exports = config;
Testing
You are advised to test your changes locally before submitting a pull request.
The core team uses the example-1
project as a playground for testing new features and changes.
$ cd examples/example-1
$ npm run lint
$ npm run build
$ npm test
$ npm start
Pull Requests
Send Pull Requests against the main
branch.