Skip to content

CLI Support Update Release Process

Austin Howard edited this page Sep 20, 2021 · 1 revision

create-rs-app ↗ is a node cli to make the initial setup process a little bit easier. It requires some overhead whenever we release...so here is the process and some thoughts on how it can be maintained.

How It Works

When using npx create-rs-app, the user is prompted for an application name and application language. The reason for wanting to support multiple languages is to have some flexibility between whether a project wants to be either of:

  • Javascript ES6+
  • Typescript (no strict typing)
  • Strict Typescript

We felt that this would make the project a bit less opinionated and support those who are looking to use what they're comfortable with.

To pull this off with the cli, we maintain 3 core branches on this repository:

  • main (Typescript)
  • strict-typescript
  • javascript

The cli will clone the respective branch depending on the user's choice from the list of supported options.

How We Can Maintain These Branches

The main branch with the 'loosely' typed Typescript can be the first to receive a new feature, then we can have delayed support for the other branches.

When a new feature / change is merged to main, a fork will need to fetch and merge upstream changes from main, then pull those changes in from main and manually add support for both strict-typescript and javascript, then open pull requests to the respective branches onto this repository.

Clone this wiki locally