Replies: 3 comments 1 reply
-
I'm taking a new approach to micro-frontends, and ideally would like to see the TL;DR: I also need a way for SolidStart to play nicely in a monorepo:
|
Beta Was this translation helpful? Give feedback.
0 replies
-
Finding you guys through the mists of time. What sort of conclusions did you come to? |
Beta Was this translation helpful? Give feedback.
1 reply
-
Vite is a very sound foundation.
I would checkout turborepo and moonrepo if you have leadership on board
with the fact that mono repo tooling is needed
If you have spare dev hours, perhaps an interested and capable DevOps
engineer, or can hire someone, Nx could work, but likely needs a new plugin
for SolidStart support.
As the time I opted to just have a super slow build step with npm scripts
and multiple completely independent projects. I linked packages using yalc.
Pnpm, yarn v4 and modern npm are all good at doing package linking. There's
always a root package.json, then typically a ‘packages’ folder which
contains all the packages. For me the root package json just had a few npm
scripts which triggered other npm scripts inside my packages. I like using
the typical packages folder for improved git history and makes it easier to
try out other monorepo tools
…On Mon, May 20, 2024 at 12:25 PM Talin ***@***.***> wrote:
Since then I have moved away from working with solid-start - these days
most of my coding is in Rust. So I don't have an answer for you.
—
Reply to this email directly, view it on GitHub
<#1290 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAEDZKADLG4OV6Y6N4XZIQ3ZDIWYXAVCNFSM6AAAAAARJXKOGCVHI2DSMVQWIX3LMV43SRDJONRXK43TNFXW4Q3PNVWWK3TUHM4TIOJZGEYTK>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I have to say that I am pleasantly surprised with solid-start in most respects, and especially so given the trauma I have suffered in the past with CRA and ejection. However, my biggest frustration working with it so far is something that is not Solid's fault, which is structuring a monorepo that has a decent developer experience.
My presumption is that a large project based on solid-start is eventually going to have multiple instances of solid-start embedded within it - that is, there will be not only an application and libraries, but various kinds of interactive tools and test utilities that will (hopefully) be based on Solid.
Currently, there are only a handful of online examples that combine "Vite + TypeScript + Monorepo", and this number gets smaller if you subtract out the ones that are Vue-specific. Worse, none of the examples are documented - they are basically just code drops - and as far as I can tell they don't work, or at least I have had no luck replicating the methods in my own project.
Part of the desire here is to have HMR fully working for both the app and its libraries, for which there are (AFAICT) two main approaches: Using Vite aliases to coalesce everything into one giant happy source tree, or using TypeScript project references. The former works OK for interactive local development but you can't ship a product that is built like that. The latter I have not been able to get to work.
So my wish would be for a working example of a solid-start project that has multiple subpackages and a happy developer experience.
Beta Was this translation helpful? Give feedback.
All reactions