jaredpalmer / tsdx

Zero-config CLI for TypeScript package development
https://tsdx.io
MIT License
11.26k stars 508 forks source link

Feature Request: "tsdx eject" #652

Closed helt closed 4 years ago

helt commented 4 years ago

I wonder if it is possible to "eject" from tsdx, similar to "react-scripts eject", i.e. remove tsdx the tsdx dependency, and materialize all config files required to have a self-sustained ts-project.

agilgur5 commented 4 years ago

Jared previously rejected this as against the project goals in https://github.com/jaredpalmer/tsdx/issues/389#issuecomment-568785862 and I'm not particularly for it either. He also suggested patch-package as a better alternative if absolutely necessary.

But you didn't fill out the issue template or give a use-case for it either so I can't tell if there's some escape hatch we can add or I can point to. I also don't think ejecting for the sake of it is wise, you'll be missing out on all bugfixes & updates and will have a ton of dependencies listed too.

helt commented 4 years ago

So, no to eject. Fine.

The main reason why I asked is that my colleagues and me like to understand whats happening under the hood of tsdx before using it in our projects.

Also, ejecting would be the final measure that would become relevant if tsdx development becomes stale while dependencies move on... That a product owner does like to keep its customers on board is just natural, but we dont like golden cages particularly well...

agilgur5 commented 4 years ago

TSDX is an open-source project, and you're fully welcome to look under-the-hood. The meat of the codebase is probably <1k LoC.

The same is applicable if it ever becomes stale, you can fork, your team can fork, the community can fork, or (not recommended) just copy/paste portions and keep those up-to-date wherever they're used.