futureaus / servue

Server-side rendering engine that renders vue files into html strings
https://futureaus.github.io/servue
59 stars 3 forks source link

Servue + Goldpage #28

Open brillout opened 4 years ago

brillout commented 4 years ago

Hi @DominusVilicus,

Looks super neat what you building.

Author of Goldpage here.

@chriscalo and myself were discussing a similar design than yours at https://github.com/reframejs/goldpage/issues/13.

Would you be up to team up and build a SSR tool together? I'm currently looking into using Parcel instead of Webpack. If Parcel looks promising then I'd rewrite Goldpage from scratch — or we could build a new lib together? (Under a new name and under a new org.)

@chriscalo it's been on my mind for a while and I wanted to ask: Would you be up to write a SSR tool on top of Parcel together?

PS: I'm curious, what is Future Australia Party? I couldn't find any info about it.

AlbertMarashi commented 4 years ago

Cool, I am thinking of rebuilding servue to create a more versatile server-side renderer, but it will have build files. This allows for lazy-loading, and faster build/compilation.

Servue is a very nice package, but there's one issue with it, There's a new webpack bundle being created for every single page, the new renderer I am working on creates only one bundle and dramatically speeds up build times, allows lazy-loading.

I'm very keen for Vue 3 because it'll enable better state management with proxies, and a core issue with SSR + Vue is that nearly all the data that needs to be SSR'd needs to be put into the global store, which is somewhat problematic because of all the boilerplate code associated with setting up stores.

If vue 3 doesn't resolve this issue, and figure out a way to make every component be able to pass their own data during SSR, we can still use the simple proxy observable system to create a less complex global store with less boilerplate.

A typical vue app might have data limited to certain components inside it's data() callback,

Servue would begin to cripple more the larger an app grows and the more routes it gets.

Future Australia Party is just a political party i'm starting as a hobby.

brillout commented 4 years ago

How about entirely separating the SSR part from Vue?

That's what I'm doing with https://github.com/brillout/parcel-ssr: you can use @parcel-ssr with any view framework and view library. What happens on the view side is entirely independent of @parcel-ssr.

Note that parcel-ssr is very much inspired by Servue and the discussions I had with @chriscalo's.

Have you looked into Parcel v2? It's pretty neat..

Future Australia Party is just a political party i'm starting as a hobby.

How can I know more about it?