spring-cli icon indicating copy to clipboard operation
spring-cli copied to clipboard

Rationalize project creation

Open snicoll opened this issue 2 years ago • 4 comments

In the current reference guide, the spring boot new command is described as:

The spring boot new command makes it easy to create Spring Boot applications.

Then later on there is the "initializr" command that is described as:

Shell style project creation mimics how project is created from an UI[...]

I don't really expect those two commands to merge as they're operating with different assumptions. However, I expect the "Spring CLI" to present how to create a new project consistently. Right now the doc has one front and center section for the "boot new" command and what seems to be a generic command doc for the "initializr" one.

Somewhat related and this can be a separate issue if needed, the "initializr" term does not look a great candidate for this IMO. The project code name has a typo "on purpose" but I think it would be confusing for users that are not aware of that (and, frankly, I don't think they should). Using init would also be a natural way for users migrating from the Spring (Boot) CLI.

In summary, the CLI offers two ways of creating a new project and no guidance of when to chose one over the other.

snicoll avatar Oct 31 '23 08:10 snicoll

Ups, had a wrong commit reference, reopen.

jvalkeal avatar Nov 01 '23 07:11 jvalkeal

We've been struggling with "initializr" for reasons you also mentioned and secondly as it's "typoed" it's hard to write. It's definitely going to get renamed/merged with something else. Naming is hard...

jvalkeal avatar Nov 01 '23 08:11 jvalkeal

What I'd really like to see is having spring init <type> command.

spring init catalog
spring init start

We're essentially getting something from a catalog or from an initializer.

jvalkeal avatar Apr 26 '24 15:04 jvalkeal

spring boot start where start refers to start.spring.io Alternatively, spring boot start-spring-io which is longer, though tab completion helps that, but is more descriptive.

FWIW, there may eventually be spring boot run command that could create confusion with a start command, but since folks are used to the nomenclature start.spring.io and mvn spring-boot:run I hope the difference would be understood easily.

This suggestion would align with current naming and then fit naturally in the help command that groups together spring boot new, spring boot add and spring boot start

Thoughts?

markpollack avatar Apr 30 '24 15:04 markpollack