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

Migrate website to astro #2564

Open
2 of 7 tasks
timotheeguerin opened this issue Oct 11, 2023 · 4 comments
Open
2 of 7 tasks

Migrate website to astro #2564

timotheeguerin opened this issue Oct 11, 2023 · 4 comments
Milestone

Comments

@timotheeguerin
Copy link
Member

timotheeguerin commented Oct 11, 2023

After some quick investigation migrating to astro would both improve build performance and runtime performance.

Astro main selling point is everything is rendered on the server(unless go through extra step to have dynamic content)
This means it result in a completely static website without the need for javascript. Somethings like light/dark theme switch still use js but the core of the website is available.

Pros:

  • Build perf 2:30min(docusaurus) -> 50s(astro) - tested on m1 pro
    • EDIT: build perf is actually very bad when the sidebar is included
  • Use tm grammar for syntax highlighting (no more prismjs with half baked syntax highlighting)

Issues:

  • Doesn't support multiple sidebar or versioning which make migration today impossible without a lot of manual work. There are some active issues for those problem and it seems to be getting traction.
  • Auto generated sidebar doesn't have good names for folders. This could be mitigated by having our own custom resolver

Tasks

@rishi-raj-jain
Copy link

I'd love to be part of this effort.

@timotheeguerin
Copy link
Member Author

timotheeguerin commented Apr 15, 2024

@rishi-raj-jain thanks for your intrest, I did go through this a while ago but there was some deal breaking issues #2562

  1. Actually terrible perf when including the sidebar ( i believe this has been fixed since)
  2. Doesn't support multi versions

So I don't think this is something we can do right now

@rishi-raj-jain
Copy link

rishi-raj-jain commented Apr 15, 2024

Doesn't support multi versions

Why's that the case? I believe you can use https://starlight.astro.build and just create folders for versioning, ain't it?

@timotheeguerin
Copy link
Member Author

Yeah we can just need to then do the selection ourself. The first item was the biggest deal breaker the version might just need more or less work from us

github-merge-queue bot pushed a commit that referenced this issue Oct 11, 2024
Progress for #2564 
Changes: 
- Decided to cut versioning for now. Starlight doesn't support well now
and would be a decent amount of work. Our doc have been quite stable and
this slows down the build significantly.\


The plan is as follow
1. Merge this as a parallel build to the docusaurus website
2. Add blog back
3. Cleanup things (like migrate more things out of fluentui react
components)
4. Switch the website to use this one
5. If we are happy delete docusaurus
github-merge-queue bot pushed a commit that referenced this issue Oct 18, 2024
progress for #2564
- Get rid of fluent ui jsx apart from the playground as it cannot be SSr
with astro
- Use pure astro components for everything which force them to be fully
rendered on the UI
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants