Skip to content

Replace fastboot + prember with a playwright script - #1005

Open
kategengler wants to merge 13 commits into
mainfrom
kg-decouple-fastboot
Open

Replace fastboot + prember with a playwright script#1005
kategengler wants to merge 13 commits into
mainfrom
kg-decouple-fastboot

Conversation

@kategengler

@kategengler kategengler commented Mar 15, 2026

Copy link
Copy Markdown
Contributor

Replaced fastboot with a playwright script and some replacements for fastboot's shoebox.

Reasons

Build time and Ability to Deploy

This PR builds and prerenders all URLs 4 mins 24s and the existing way is 17 minutes and currently being killed by netlify cause over build time.

Development

This paves the way to move to Vite and improved development experience.

I would like to work on moving the Ember API docs to typedoc but to do so and maintain this existing setup where one app renders all versions of the API docs I will have to do significant development work in this app. I would like it to be on the most modern Ember experience before I do that so that it isn't a wasted effort: this app gets little enough attention and would benefit from modernization.

The current development experience is painful, time-wise and feedback-loop-wise, although somewhat improved after removing fastboot and it's deps, even when running with it disabled.

Future-proofing

I've done my best to abstract away server-side rendering into 'prerendering' concept. This PR should not preclude moving to any official SSR or prerendering solution in the future and I am even willing to commit to doing that work.

This works fantastically but it is dramatically slower. Each version takes about 2 minutes to prerender, so we are limited to 7 versions to keep under Netlify's 15 minute threshold. For now, this is possibly fine? We can do the latest versions of each major Thanks to @ef4 this is no longer true.

@netlify

netlify Bot commented Mar 15, 2026

Copy link
Copy Markdown

Deploy Preview for ember-api-docs ready!

Name Link
🔨 Latest commit 5de125e
🔍 Latest deploy log https://app.netlify.com/projects/ember-api-docs/deploys/6a78c3c20ec6a5000816a79c
😎 Deploy Preview https://deploy-preview-1005--ember-api-docs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@kategengler
kategengler force-pushed the kg-decouple-fastboot branch from 3cd9e72 to c987819 Compare March 16, 2026 00:27
Comment thread app/components/in-head.gjs

@NullVoxPopuli NullVoxPopuli left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nothing crazy jumps out at me

@kategengler
kategengler force-pushed the kg-decouple-fastboot branch from 0785563 to c987819 Compare March 17, 2026 17:38

@mansona mansona left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

limiting the pre-rendering like this is a major deal, can we have a discussion about this before we merge please

@NullVoxPopuli

Copy link
Copy Markdown

I re-remembered this: https://github.com/kmccullough/vite-ember-ssr-example
^ is this what we need to use?

@mansona

mansona commented Mar 19, 2026

Copy link
Copy Markdown
Member

that was based on my work in the new RFC app. Myself and @jaredgalanis have been working on this particular topic for about a year now and we should discuss this with the learning team before we make changes as impactful as this

Some of this work should get landed right away for sure, but not all of it without discussion

@kategengler

Copy link
Copy Markdown
Contributor Author

@mansona Are you okay with it if we manage to not limit the prerender versions any further than they were already?

@kategengler

Copy link
Copy Markdown
Contributor Author

@mansona We've managed to restore all the prerender versions

@NullVoxPopuli
NullVoxPopuli requested a review from mansona March 19, 2026 20:37
@kategengler
kategengler force-pushed the kg-decouple-fastboot branch from 74f6f1e to 5de125e Compare August 9, 2026 18:15
@kategengler

kategengler commented Aug 9, 2026

Copy link
Copy Markdown
Contributor Author

I've rebased this. The latest build with all version prerendering took 4 minutes and 24s.

Edited to add: I apparently buried the lede: this PR is 4 mins 24s and the existing way is 17 minutes and being killed by netlify cause over build time.

CleanShot 2026-08-09 at 14 29 29@2x

#main is currently failing to deploy. It is timing out building fairly consistently:

CleanShot 2026-08-09 at 14 30 31@2x

This PR maintains all pre-rendering. It no longer uses Fastboot but it does NOT preclude moving to the sanctioned replacement for SSR once it does exist. This PR unblocks development on api docs and will let us deploy further versions of the API docs while maintaining Netlify builds and preview deploys.

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

Successfully merging this pull request may close these issues.

3 participants