onboard-repo v0.0.1
Onboard-Repo
Onboard-Repo is a simple CLI tool for onboarding new developers to your repo.
Getting Started
Prerequisites
- Node.js (LTS version recommended)
- npm (Comes with Node.js)
Installation
You can install onboard-repo
globally via npm which allows you to use it in any project.
npm install -g onboard-repo
Or you can use npx to run onboard-repo without installing it globally:
npx onboard-repo <command>
Available Commands
init
The init
command prepares a new project with an .onboard
folder with a basic configuration file and an empty files folder. You then create your ejs templates inside the files folder and reference them in your configuration file.
run
The run
command reads the config.yaml
file and performs the required actions. Currently the only expected action is the creation of new files.
gitignore
The gitignore
command will add the files you have added to your config.yaml
to your root's .gitignore
.
Config.yaml
The config.yaml
file in the .onboard
directory currently only supports a files
configuration:
files:
- input: .onboard/files/devcontainer.json.ejs
output: .devcontainer/devcontainer.json
variables:
- name: ONBOARD_MOUNT_SSH_PATH
source: .env
- name: ONBOARD_USER
source: .env
input
: where the file is located
output
: where to output the created file
variables
: defining where to find the variables used in the input ejs file
Contributing
Any contributions you make are greatly appreciated. To contribute:
- Fork the Project
- Create your Feature Branch (git checkout -b feature/AmazingFeature)
- Commit your Changes using conventional commits syntax (git commit -m 'feat: add some amazing feature')
- Push to the Branch (git push origin feature/AmazingFeature)
- Open a Pull Request
Roadmap
- Add license information
- Find out how to get a changelog with semver
- Review contribution instructions for this repo
- Review versioning logic for new published features
- Review if init command should just be replaced with onboard-repo without any command
- On init command, prompt user to select files, selected files are automatically turned into ejs files and added to the config.yaml
6 months ago