Commit Graph
17 Commits
Author SHA1 Message Date
Joshen Lim a800de7cec Improve loading state 2025-08-18 18:31:29 +08:00
Charis fc164b5d07 Refactor/app router refs (#28095)
Migrates client SDK References to App Router. (Management and CLI API references aren't migrated yet, nor are self-hosting config references.)

Some notes:

Big changes to the way crawler pages are built and individual section URLs (e.g., javascript/select) are served. All of these used to be SSG-generated pages, but the number of heavy pages was just too much to handle -- slow as molasses and my laptop sounded like it was taking off, and CI sometimes refuses to build it all at all.

Tried various tricks with caching and pre-generating data but no dice.

So I changed to only building one copy of each SDK+version page, then serving the sub-URLs through a response rewrite. That's for the actual user-visible pages.

For the bot pages, each sub-URL needs to be its own page, but prebuilding it doesn't work, and rendering on demand from React components is too slow (looking for super-fast response here for SEO). Instead I changed to using an API route that serves very minimal, hand-crafted HTML. It looks ugly, but it's purely for the search bots.

You can test what bots see by running curl --user-agent "Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5376e Safari/8536.25 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" <URL_OF_PAGE>

Also added some smoke tests to run against prod for the crawler routes, since we don't keep an eye on those regularly, and Vercel config changes could surprise-break them. Tested the meta images on Open Graph and all seems to work fine.

With this approach, full production builds are really fast: ~5 minutes

Starts using the new type spec handling, which is better at finding params automatically, so I could remove some of the manually written ones from the spec files.
2024-08-13 16:12:59 -04:00
Charis f4779d4844 refactor: migrate guides to app router (#23101)
Migrate guides to App Router.
2024-07-03 10:25:06 -04:00
Charis 7cf2eae953 fix: statically build the right nav on each page (#21469)
Before: All pages have the Home nav menu in static HTML, which is blown away and replaced by the proper nav menu upon hydration. This leads to jankiness when the page first loads and an unpleasant flash of the wrong nav menu (especially obvious on the JavaScript ref page, which takes a long time to process and rerender the nav).

Now: All pages have their correct nav menu in static HTML.
2024-02-23 11:38:06 -05:00
Kevin Grüneberg 129b3d927a chore: move specs to docs folder (#20136) 2024-01-03 18:54:23 +01:00
Greg Richardson a2e2cc558f fix: getStaticPaths() slug for ref docs 2023-05-10 10:39:52 -06:00
Greg Richardson 875bfab1b8 fix: generate static page for each ref doc path 2023-05-09 16:10:32 -06:00
Greg Richardson 695b00c0ce chore(docs): yaml import types 2023-05-04 18:48:08 -06:00
Terry Sutton 1fbdb60559 Fix missing crawler pages, missing h1 tags 2023-01-27 16:07:06 -03:30
Terry Sutton 8d4717814b You get a type, and you get a type, and you get a type 2023-01-09 12:35:59 -03:30
Terry Sutton e3da1e72bf Cleanup getStaticProps 2023-01-06 16:02:02 -03:30
Terry Sutton bd2bd2c52f Add NextSEO to refdocs crawler files 2022-12-16 15:35:47 -03:30
Terry Sutton 37a627eb99 Trying js middleware 2022-12-11 09:08:06 -03:30
Jonathan Summers-Muir bd0514553c changed yaml files 2022-12-11 15:00:22 +08:00
Terry Sutton 659e19c44c Replace shortext with reactmarkdown 2022-12-05 12:50:27 -03:30
Terry Sutton 5b785c850a Remove ComesFrom component 2022-12-05 12:24:43 -03:30
Terry Sutton 547acaf56d Add middleware to redirect bots to a single-file slug 2022-12-02 16:28:36 -03:30