Skip to content
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

Support server rendering #209

Open
jongrim opened this issue Dec 1, 2023 · 2 comments
Open

Support server rendering #209

jongrim opened this issue Dec 1, 2023 · 2 comments
Labels
enhancement New feature or request

Comments

@jongrim
Copy link
Contributor

jongrim commented Dec 1, 2023

Server rendering would improve load speed, and allow for better SEO and social sharing. Unfortunately, I made the dumb choice to not use a server rendering framework from the start.

A full rewrite is undesirable, so I'm interested in if there is a way to migrate specific pages and convert over time. I think I'd put the priority order as:

  • Community Detail Page
  • Game Detail Page
  • Browsing pages (games, communities, events - in that order)
  • Everything else
@jongrim jongrim added the enhancement New feature or request label Dec 1, 2023
@jongrim
Copy link
Contributor Author

jongrim commented Feb 5, 2024

Another possible option might be to crawl the public facing pages like games and communities, and generate static versions that can be served for crawlers:
https://medium.com/front-end-weekly/building-a-pre-renderer-for-spas-108f956f8b

This would still require some fundamental changes to the app architecture, but maybe it can help get it to a reasonable effort level?

@jongrim
Copy link
Contributor Author

jongrim commented Feb 11, 2024

One other thought I've been having for a possible path:

  • Update the project to NX
  • Begin building an alternate version of the site that lives in parallel to the current app. I'll have to find where to deploy and run Nuxt since it will need a server running versus a SPA
  • Start rebuilding the site in Nuxt, first with authentication. Auth and data fetching are the major things that have to be reworked
  • I can then begin start pulling components into a join library and the SPA app and Nuxt version both use them.
  • Eventually the two match and then I can switch DNS

Possible frameworks for server rendering:

  • Nuxt - popular choice, but I've had some difficulties using it elsewhere so not sure I want to be dependent on it
  • Vike - looks interesting, but still early in their project and too soon to depend on

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant