jhipster / jhipster-lite

JHipster Lite ⚑ is a development platform to generate, develop & deploy modern web applications & microservices architecture, step by step - using Hexagonal Architecture :gem:
https://lite.jhipster.tech
Apache License 2.0
453 stars 207 forks source link

Client modules using typescript should depend on the typescript module #10421

Open murdos opened 1 month ago

murdos commented 1 month ago

Following a recent discussion on the addition of new modules adding typescript utilities, it demonstrates that we currently have an issue regarding typescript related modules.

Let's pick the optional-typescript as an example: it requires the typescript. So if you have applied for example the vue-core module, you can't use it unless you also apply the typescript module which will generates conflicting npm configuration (e.g. setting up jest in addition to already setup vitest).

On the contrary the new modules, ts-loader and ts-pagination-domain only requires the init module, which is convenient for matching both use cases, but a bit wrong since code will not compile if you don't have already applied a module that'll setup typescript.

My suggestion is to rework the typescript module to make it use a modern setup (eslint, vitest), and have at least vue-core and react-core modules (angular could be nice too, but it has a very specific build tools so this might be a bit more complicated) depend on the typescript module.

image

@pascalgrimaud @qmonmert @DamnClin @renanfranca : WDYT?

Related: https://github.com/jhipster/jhipster-lite/issues/3979

renanfranca commented 1 month ago

I agree with this πŸ’― πŸ‘Œ. It will help new frontend devs πŸ˜πŸ‘