codeboost is a CLI tool and library that enables developers to automate common repository tasks such as updating dependencies, fixing linting errors, modifying READMEs, or adding new workflows.
Run these tasks across a single repository or multiple repositories at once with a single command.
npm install -g codeboost
codeboost initYou must initialize codeboost before you can run any boosts. You only need to run this command once to initialize the global configuration file:
codeboost initRun a boost:
codeboost run -r <repository> <boost>Run a boost on a batch of repositories:
codeboost run --batch repositories.json --size 3 <boost>When running in batch mode, the --size option can be used to specify the number of repositories to process at once. The default is 1.
The --batch option can be used to specify a JSON file containing an array of objects that have a name property that resolves to "owner/repo-name". The object can contain other attributes as well, but MUST contain the name property for batch mode to work correctly.
Example of a batch JSON file (repositories.json):
[
{
"id": 1,
"name": "spatie/url",
"description": "test",
"stars": 66,
"downloads": 14414,
"type": "package",
"language": "PHP",
"visible": 1
},
{
"id": 2,
"name": "spatie/once",
"description": "test",
"stars": 67,
"downloads": 14456,
"type": "package",
"language": "PHP",
"visible": 1
}
]To use the codeboost CLI, create a file named boost.config.js in your current working directory or run codeboost init to create a default configuration file.
This file should export a configuration object with the following properties:
export interface AppSettings {
github_token: string;
repository_storage_path: string;
boosts_path: string;
use_forks: boolean;
use_pull_requests: boolean;
log_target: 'console' | 'file';
}npm install
npm run devcodeboost uses Jest for unit tests. To run the test suite:
npm run test
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
Please review our security policy on how to report security vulnerabilities.
The MIT License (MIT). Please see License File for more information.