Automatically add community documentation to your repository
I often clean up repositories, and have ideas for what I want to add to them. However, just as often, I manually add files to repositories. @gr2m got me thinking - wouldn't it be better if I could automatically add files to a repository, using a GitHub bot?
This GitHub bot does just that. It adds a Contributing guide, a Code of Conduct, a README if you don't have one stubbed out, a License, and more to a repository. It lints your package.json
. It tells you if you don't have an email specified in your CoC. It does a lot of stuff.
The point is to make building a space for community to grow easier. This stuff isn't rocket science, but doing it manually day after day is the hard part. Let's make it easier to build a space.
You can install this globally with npm:
$ npm install -g build-a-space
You'll need a GitHub token. Put it in the env.js
file, or in a $BUILD_A_SPACE
token in your environment.
You may be able to install this locally and include it, but I have no idea how it would react.
Usage
$ build-a-space <input> [opts]
Options
-f, --fork Create and use a fork instead of pushing to a branch
-t, --test Don't open issues or create pull requests
-c, --config The path to a configuration file
-b, --branch The default branch to use instead of 'master'
--email The email for the Code of Conduct
--licensee The person to license the repository to
--travis Edit the Travis file
--open Open the PR url afterwards
Examples
$ build-a-space mntnr/build-a-space
Substitute another repo as needed. It drives itself from there.
You can specify a configuration file to stop having to type lots and lots of flags for multiple repositories. This will overwrite any flags you send in.
$ build-a-space -c=config.json
And, in config.json
:
{
"email": "[email protected]",
"licensee": "Richard Littauer",
"contributing": "./contributing.md"
}
The contributing file path needs to be in the build-a-space
directory.
Me.
And you?
I would love for this to be a community effort. For now, I am hacking away at it because I want to be able to use it quickly get various documents into place as needed for different organizations I work with. However, if would be great if others would start using it, as well.
Check out the Contributing guide and Code of Conduct for more.
MIT © 2017 Richard Littauer