As the Docusaurus maintainer, I stand by behind these ideas. Markdown is a portable format, and I'd like to make Docusaurus/Obsidian work well together in the future.
It's taking a long time because there are edge cases to figure out if we don't want the upgrade to be painful for certain sites, notably the ones using anchor links or i18n. It's not far from the end so hopefully mdx2 will be merged soon.
Yeah - primitive but probably reasonable. Would be happy to experiment with that. I've also been pondering things we could do around open graph images as well, would be nice to use image CDNs like Cloudinary for open graph images in the same way we can for blog images https://johnnyreilly.com/2022/12/26/docusaurus-image-cloudin...
Changing all images to be lazy loaded is not a good idea for SEO reasons (and perhaps not a good idea for regular usage of the site either). If it were, browsers would just do it automatically. Using hints on your images is only useful if you are doing it strategically, which means only lazy loading images that are offscreen on the initial page load. Otherwise you are not actually giving useful hints to the browser on how to load your page in the correct manner, and thus you are just better off letting the browser use whatever internal logic it has to decide how and when to load the assets.
Basically you can think about the optimal, minimal set of resources to render your page being:
- HTML
- Required CSS
- Above the fold images
Then at that point, download all of the other things to make the page work in the way you want (javascript, etc). Anything else is delaying the initial page-load. Because your images are lazy loaded, your page load looks like the following:
- HTML
- Required CSS
- Some above the fold images (profile.jpg, etc)
- Massive, >300kb blobs of javascript (runtime-main.js, main.js)
- Above the fold images in the post
This is not good. It doesn't make sense for your page to download 300kb of javascript before downloading the 18kb image that is above the fold. Now you can partially solve this problem by making the javascript asynchronous, but that still is just another band-aid on the problem, as then the javascript and above the fold images would download concurrently, which is still not optimal.
What you want to do is have above the fold post images be loaded eagerly (the default), and then lazy load ones that are lower on the page. If you aren't going to do that, you probably are better off just not having the images being lazy loaded at all, especially if your page includes 300kb of javascript which is likely going to be much larger than the combined size of all the images on the page.
I migrated my own blog to Docusaurus from Blogger about a year and a half ago. I became very enamoured (and still am) with the idea of writing blog posts as markdown, storing them as code and publishing them as a website.
I was delighted at how much Docusaurus aligned with that. So much so that I wrote a guide to help others migrate:
Docusaurus maintainer here. I don't really understand what you mean, considering we don't have official support for API documentation, but have a plugin system allowing you to build your own support.
And we have a few OpenAPI plugins, and redocusaurus.
A Docusaurus plugin MDX makes it possible to implement this with client-side React in case you want to create an interactive client alongside editorial text content.
Try https://ThisWeekInReact.com (disclaimer, I'm the author)
I also enjoy Bytes, JavaScriptWeekly, NextJS Weekly, ESNext News, Web Weekly and many others