Astro
Astro is awesome. Astro offers a Rails Like (File based) wrapper and the choice of React, Vue, Svelte, Lit and or Vanilla JS as a minimal JS compile/server. You can be up and running in minutes. Start with a basic Vanilla set of code (HTML, CSS, JS) and add components/API fetch as needed.
This is a meta-platform that includes Routing, Scoping, Context/Helmut and normalizes multipage, multi build compile. Use any all Vue, React, Svelte, Solid with Rail/Config and Front Matter, that is declarative. MPA (Multi page App Codebase with normalized/tested best practice)
Normalize Client and Server Side Logic, with non breaking Design and Content creation. Opportunity to collaborate and weight Design, SEO, ADA content after development/SSR workflow is created.
Astro supports await API calls without adding additional libraries.
Instead of converting HTML/CSS (JSX, CSS in JS) to Javascript, plain HTML and CSS adds a more efficient render and file serving logic. Javascript is only utilized and rendered as needed. This simplification, enables Design and Content Logic to drive builds vs, focus on giant JS builds of not very logical JS Design/CSS logic lost in code base that is complex. Code that is passed from component to component can be rationally discussed by team that includes Design and Content Stakeholders. Design is no longer dictated by complexity of build.
Addition benefits to modular builds/components that can include standard React, is the benefit of structured Meta Data and choice of context and nested layouts. You can have unlimited layouts. This benefit is great for Design, ADA Compliance, and SEO.
Because you are not rendering JS and blocking Time to Load, sites are faster.
ā
Astro, 11ty, Ruby on Rails utilize the same static file based workflow.
Other Ruby on Rails Products include: Shopify, Github, Basecamp. Significant workflows like: Gatsby utilize a ROR / Jekyll/Liquid like wrapper with a React Component, in compile and plugins to attach data feeds to standard CMS and RESTful API feeds. Astro will also serve JS on the server side. Unlike Gatsby, you can just write plain HTML/CSS, and the conversion will be done for you. If you'd like to use React/Vue/Svelte, you can. Any combination of these libraries can be easily prototyped.
Templates and Data are constructed in a Configuration that is known as YAML "Front Matter".
Data Files can be natively in the file system or "Fetched" from a secure and moderated data stream. Programatic, offset load and render functions are baked into code base. "Store" "State" can utilize Svelte State, that is infinitely better than the way React State passes information.
Nested Layouts can also be conditionally applied to Design.
Any static JS/HTML/CSS can convert to Rails friendly workflows. Components: Vue, React, Svelte can be embedded into Script Modeling. You are not limited to what components you choose to include. Use as many as you want.
Pair with API endpoints that can model in real time: Prismic, Contentful, Xano, Supabase and you have a Enterprise Grade Workflow in minutes, that can scale without cost.
Semantic Builds
Islands architecture
Island Architecture supports Semantic Content with hierarchy. Semantic UI / Content with CTA/Links and user intent, requires more than a compile that makes file small. Opportunity for Designers and Writers to weight features and story tell is removed when the template is a monolithic JS bundle.
Designers need to be able to prototype without a template.
Islands Architecture Blog