-
Notifications
You must be signed in to change notification settings - Fork 507
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
Add a monorepo template? #122
Comments
Update: I just moved formik into a monorepo powered by tsdx (with both React native and react packages). Should be a good test bed. We DEF want to bake this in because it was huge pain to setup with VSCode. |
what were the VSCode specific pain points? |
@jaredpalmer Is that something you can blog about? |
@jaredpalmer - any updates on the baked-in monorepo setup? Interested to see what you encountered... Thanks. |
In the meantime, we can look at the |
Current Behavior
Currently, users can scaffold out a monorepo manually, then add
tsdx
as a dependency at the root of the project.Desired Behavior
Users should be able to scaffold out a monorepo project using
npx tsdx create
. Just like the current templates, users could pass a flag or select from the interactive prompt.Suggested Solution
Create two new templates,
monorepo-basic
andmonorepo-react
. In both cases, the only additional dependency would belerna
. The rootpackage.json
scripts would uselerna run command
and any packages would usetsdx command
.Add these options directly to the
create
template prompt and add CLI flags for each.Add an additional prompt to the
create
command which allows you to select a project structure (basic
ormonorepo
?) and add a—monorepo
CLI flag which will automatically resolve the monorepo templates.Who does this impact? Who is this for?
This feature would be very beneficial for anyone managing a larger project who wishes to leverage both
tsdx
andlerna
.Describe alternatives you've considered
If this use case seems out of scope, improving the documentation around integrating with
lerna
would be helpful to guide users through manual setup.As a possible alternative,
tsdx
could become monorepo-aware so that runningnpx tsdx create mylib
from within a monorepo could scaffold out a new package in thepackages/
(or configured inlerna.json
) directory.Additional context
I have created a minimal tsdx-monorepo example project.
I would be happy to contribute to this feature, but I want to collect feedback and hash out the preferred approach before starting.
The text was updated successfully, but these errors were encountered: