I've got this setup in my Site Settings singleton and it seems to be working quite well. You have to know how to query it from the root index route in your frontend, but that'll vary by framework. I'm using Remix for what it's worth. I have a hidden flag of isFrontpage on the page document itself. And when I publish my settings (using a custom publish action), it updates (or patches) whatever page reference I've set that field to. In this case, Home. And then in my preview list for pages, I can use that hidden isFrontpage field to add a (Frontpage) label to the page that is the front-page. This way, you could change the front page from the settings to whatever page you want.
Jun 29, 2023, 5:10 PM