Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: replace make and shell scripts with a node.js CLI #194

Open
ericis opened this issue Jan 11, 2022 · 0 comments
Open

feat: replace make and shell scripts with a node.js CLI #194

ericis opened this issue Jan 11, 2022 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@ericis
Copy link
Member

ericis commented Jan 11, 2022

Is your feature request related to a problem? Please describe.

The world's top programming language is JavaScript. Many developers struggle to understand GNU make makefile and shell scripts, especially for cross-platform development. The requirements may feel "foreign" to Windows developers.

Describe the solution you'd like

Replace make with a custom CLI and re-write shell scripts as part of the CLI.

The CLI could support plug-ins that are extended for:

  • Different host run-times (e.g. docker, docker-compose, podman, etc.)
  • Different languages, language run-times, and frameworks (e.g. node start, ./gradlew bootRun, dotnet run, etc.)
  • Different cloud tools (e.g. aws, eb, az, gcloud, heroku, etc.)

Potential examples:

  • make start becomes our start or our start --tool=podman
  • A cloud deploy (e.g. ./install.sh) becomes our install --cloud=aws

Describe alternatives you've considered

  • Scripting in any language. However, any language will likely require a runtime installation. JavaScript is the most ubiquitous language, so...
  • Some languages could compile multiple native binaries without a runtime requirement and GitHub Actions would support generating the platform-specific binaries for popular OS platforms. But, that increases complexity for the project to manage.
@ericis ericis added the enhancement New feature or request label Jan 11, 2022
@ericis ericis self-assigned this Jan 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant