skip to content
Podcast cover art for Astro 2 with Ben Holmes
Podcast

Astro 2 with Ben Holmes

Ben Holmes and Fuzzy Bear discuss the Astro 2.0 release covering content collections, hybrid rendering, islands architecture, and the framework's open source future.

Open .md

Episode Description

Ben Holmes and Fuzzy Bear from Astro discuss the 2.0 release, covering content collections, hybrid rendering, islands architecture, and the framework's open-source future.

Episode Summary

This JavaScript Jam Live episode features Astro core maintainer Ben Holmes and community manager Fuzzy Bear discussing the Astro 2.0 release. The conversation begins with a foundational explanation of Astro as a framework-agnostic site builder focused on content-heavy websites like blogs, marketing pages, and documentation, distinguishing it from both traditional static site generators like Eleventy and full application frameworks like Next.js. Ben explains the islands architecture that underpins Astro's performance story, allowing developers to selectively hydrate components from any framework — React, Vue, Svelte, Solid, and others — only when needed. The 2.0 feature discussion centers on three additions: content collections for type-safe Markdown and MDX, hybrid rendering that allows mixing static and server-rendered routes within a single project, and redesigned error overlays with better developer experience. The conversation broadens into enterprise adoption, with Fuzzy Bear sharing stories of companies like Bloomberg and IKEA using Astro, and deployment across platforms from AWS to Vercel. A candid discussion about Astro's VC funding and open-source sustainability touches on the open-core model and community reinvestment through Open Collective. The episode closes with talk of the public roadmap for version 3, a revamped RFC process, and the evolving theme ecosystem.

Chapters

00:00:00 - Introductions and Setting the Stage

The episode opens with host Scott Steinlage welcoming listeners to JavaScript Jam Live, a weekly Wednesday show, and introducing co-hosts Ishan Anand and Anthony Campolo alongside guest Ben Holmes, a core maintainer on the Astro team. Each participant shares their role and sets expectations for the discussion ahead.

Ishan frames the conversation by asking Ben to start from the basics, ensuring listeners unfamiliar with Astro can follow along. Ben gives a high-level overview of his journey to Astro's 2.0, noting the six-month cycle from the 1.0 launch in August, and teases the headline feature — content collections — which brings type safety to Markdown and MDX authoring. The stage is set for a deeper walkthrough of both what Astro is and what's new.

00:05:36 - What Is Astro and Islands Architecture

Ben explains Astro's core identity as a content-focused site builder that sits between lightweight static generators like Eleventy and full application frameworks like Next.js. He emphasizes Astro's framework-agnostic nature, supporting React, Vue, Svelte, Solid, Preact, Lit, and community-maintained Angular, all within a single project using Astro's own HTML-first templating syntax.

The discussion moves into islands architecture, which Ben demystifies by comparing it to mounting multiple small React apps on a page rather than one monolithic bundle. He explains the hydration directives — load on scroll, on idle, or on media query match — that give developers granular control over when JavaScript ships. Ishan underscores the performance benefits, referencing developers who rewrote sites from Next to Astro and saw significant page speed improvements simply by sending less JavaScript.

00:13:09 - Astro 2.0 Features: Content Collections, Hybrid Rendering, and Error Overlays

Ben lays out the intentionally short feature list for 2.0, starting with content collections that add type safety and structured querying to Markdown front matter, followed by hybrid rendering that lets developers mix static and server-rendered routes within the same project using a simple pre-render flag. He also highlights redesigned error overlays with better line highlighting, documentation hints, and both light and dark mode support.

Fuzzy Bear joins as a speaker and introduces himself as Astro's community manager, adding color to the error overlay story by crediting team members Erica and Mark for the design work and community contributor Happy Dev for the dark mode toggle. The exchange illustrates the collaborative dynamic between the core team and the broader community that characterizes Astro's development culture.

00:19:04 - Could Astro Become an Application Framework?

Brandon, creator of the Angular integration for Astro, asks whether the team sees Astro evolving beyond content sites toward client-side application use cases like dashboards. Ben acknowledges the tension, pointing to experiments like embedding multiple Tanstack Routers inside a single Astro page and his own work with Solid Router, noting the bones are already there for users who want to try it.

Ben clarifies that Astro's official roadmap targets marketing, blogs, documentation, and e-commerce — not building the next Facebook — but concedes that single-page app transitions and routing are frequent community requests with active proposals. Fuzzy Bear supplements by highlighting userland plugins that already push those boundaries, including an early SPA plugin and swap-based solutions, encouraging listeners to explore the integrations directory.

00:26:06 - Enterprise Adoption and Deployment

Dax asks how enterprise companies are fitting Astro into existing tech stacks. Fuzzy Bear shares anonymized stories of teams that adopted Astro internally for rapid prototyping and saw significant efficiency gains, finishing projects weeks ahead of schedule and reducing build-related costs. He notes that Astro's framework flexibility lets companies hire from a broader developer talent pool rather than seeking only React specialists.

The deployment conversation reveals that many enterprise users rely on the Node adapter to integrate Astro as middleware into existing infrastructure across AWS, Azure, and other traditional platforms, alongside modern deployment services. Ben explains that Astro's Node adapter is one of the most popular SSR options, letting teams incrementally adopt Astro route by route. Ishan highlights that Astro's showcase includes recognizable names like Bloomberg, IKEA, the Guardian, and NordVPN.

00:34:10 - The History and Origins of Astro

After a mid-show reminder about the weekly JavaScript Jam schedule and newsletter, Daniel asks about Astro's origins. Ben traces the project back to the team behind Snowpack and Skypack — particularly Fred K. Schott and Nate — who were exploring how shipping native ES modules could unlock new framework possibilities. Nate's experimental project Microsite was an early precursor.

The pivotal moment came when the team migrated from Snowpack to Vite, which unlocked hot module reloading improvements and made server-side rendering practical. Ben credits Vite with lowering the barrier for anyone to create a framework, inspiring not just Astro but also SvelteKit and Solid Start. Fuzzy Bear adds that SSR arrived in beta around April, with deployment adapter support maturing by the August 1.0 release, driven heavily by community contributions and partnerships with early deployment providers like Netlify.

00:42:03 - Open Source Sustainability and the Business Model

A listener asks about Astro's venture capital funding and future monetization. Fuzzy Bear firmly states that the core framework will always be free and open source, while Ben explains that any paid product will feel natural to existing workflows rather than gating features behind paywalls. Anthony frames this as the "open core" model with historical parallels to companies like MongoDB and Tailwind.

The conversation turns to Astro's Open Collective, which redistributes community donations back through quarterly awards and hackathon prizes — Fuzzy Bear estimates around $30,000–$40,000 returned to the community in total. The discussion also touches on Astro's growing theme marketplace, where community members sell premium themes alongside free options, drawing comparisons to Tailwind UI as a potential complementary revenue model.

00:50:22 - Hybrid Rendering Deep Dive and the SSR Journey

Fuzzy Bear walks through Astro's rendering evolution: starting as a purely static site generator, gaining SSR capability in April driven by community demand, and now arriving at hybrid rendering in 2.0 that lets developers choose per-route whether content is statically generated or server-rendered. He emphasizes that each major rendering milestone was community-driven.

Anthony connects this to broader industry trends, noting that SSR has become table stakes for competitive frameworks and sharing that Redwood has faced similar longstanding requests. The segment highlights how the Vite migration was the technical unlock that made SSR feasible, and how VC funding was channeled toward delivering the hybrid rendering feature that the community had been requesting most fiercely since the 1.0 launch.

00:53:44 - Themes, Performance Auditing, and the RFC Process

Henri asks about quality control for Astro's theme ecosystem, drawing on challenges WordPress and Shopify have faced with underperforming themes. Ben acknowledges that the current review process is minimal — verifying the repo matches its description — and agrees that adding Lighthouse performance checks and accessibility audits would strengthen the theme store as it grows.

The conversation shifts to Astro's revamped RFC process, which Fuzzy Bear describes as a multi-stage system designed to give community members more pathways to champion feature proposals from discussion through implementation. He points listeners to the public roadmap repository under the Astro GitHub organization, where version 3 planning is already underway. Ben adds that built-in global state management is one feature he wished had made 2.0 but remains on the horizon, and the episode wraps with lighthearted talk about a potential Astro van road trip.

Transcript

00:00:29 - Scott Steinlage

Hello, hello. Welcome, welcome, y'all. Let's see. Ishan, there you are. All right, Anthony, there you are. Perfect. All right.

00:00:44 - Dax

Oh.

00:00:45 - Scott Steinlage

So excited for today. Yes. Ben Holmes is going to be joining us here very shortly. Super excited. There he is right there. Requested. Yes. Let's add in the speaker there. Boom. Welcome, everybody. Thank you all so much for joining us today. Anthony, it looks like you're not up here. What happened? If I just speak? Let's try it again. Thank you all so much for joining us today. This is JavaScript Jam Live. We do this every Wednesday, 12 p.m. Pacific Standard Time. Yep. And sometimes we have some really cool people on and talk about some really cool things.

00:01:24 - Fuzzy Bear

Yes.

00:01:25 - Scott Steinlage

Ben Holmes is with us today, going to be talking about Astro 2.0, but before we get into all that, I just want to introduce myself. My name is Scott Steinlage. I am the technical community manager for Edgio, and we have here our co-hosts as well, Ishan Anand and Anthony Campolo. Would you like to introduce yourselves?

00:01:53 - Ishan Anand

Hello, hello. Yeah, I'm Ishan, VP of Product at Edgio. Really excited to have the folks from Astro here today. Definitely a framework I've respected and admired, and really innovative. I will note that I will probably have to step away early, but you're in amazing hands with Scott and the person who's going to introduce himself next, Anthony.

00:02:20 - Anthony Campolo

Hello, hello. My name is Anthony Campolo, a developer advocate at Edgio. We got Ben here. I told him to let the team know that anyone else is welcome to join. Not sure if anyone else will join, but we will have the wonderful Ben here, who just had a blog post drop today, which I think will be one of the things we'll be talking about.

00:02:42 - Scott Steinlage

Absolutely. And so we'll be linking stuff up here at the top as we go through the day, including the newsletter we just sent out. So be on the lookout for those links at the top for some awesome resources that will be commented within this space. So much fun. And just a couple quick notes here, real quick. If you're a beginner, or maybe you've been doing this a long time, development that is, it doesn't matter. We want to hear from everybody. So, you know, when the time comes to be asking some questions or sharing some opinions or whatever it might be, please request to come up and we'll be more than happy to have you up here and participating. The more people we get participating, usually the better things are, because people get more value that way and we get more sides from everybody. So we would love to hear from you. All right, with that being said, let's kick it off.

00:03:40 - Ishan Anand

Okay. Well, first off, thank you, Ben, for joining us. Do you want to just introduce yourself first and talk a little bit about yourself, and then we should jump into what Astro is, especially for people who don't know what even 1.0 was, or before that. And then we can talk about why 2.0 is interesting and take it from there. So Ben, why don't you just introduce yourself first before we talk about Astro?

00:04:09 - Ben Holmes

Yeah, for sure. Thanks for having me. You have some really good radio voices. I was convinced I turned on something in my kitchen. Okay, well, hello. I am Ben. I am a core maintainer over on the Astro team, and we have been barreling toward 2.0. Some people have whiplash. They were surprised since they were just trying out Astro 1.0, but just a quick six-month cycle and we're here to deliver some more features. So you sort of asked about the 1.0 to 2.0 journey. It started with shipping out our 1.0 version back in, I'm trying to remember, I think it was August. And we originally launched as a static site generator and a server-driven app generator, whichever one you want to do. It's just a generic site builder now that can deploy however you want. And with that came a lot of integrations, letting you use your favorite component frameworks to build content-focused sites, and also some experimental releases for using MDX and images with your projects. And now in 2.0, we're sort of taking that content story a lot further with something called content collections, and I'm very excited to talk about it.

00:05:20 - Ben Holmes

It was an RFC that I got to lead over the past couple months, and it's a way to bring type safety to all of that Markdown and MDX that you write, find a way to query it, organize it, and scale your content past hundreds or thousands of posts. So excited to dig into all that.

00:05:36 - Ishan Anand

Yeah, let me pause you and I'm going to walk us back. Let's explain Astro. For somebody who doesn't know anything about Astro, what is it? And then what does it compete with? So, you know, static site generator, well, originally was, now we've got SSR, and then competition, like other frameworks you might have heard of that are in the same thing, like...

00:05:59 - Anthony Campolo

Compete with Ben's framework.

00:06:00 - Ishan Anand

Yeah, it used to compete with Slinkity, but that's maybe inside baseball. Let's start really simple for the audience who has never heard of Astro first, and then we can go from there.

00:06:17 - Ben Holmes

Totally. Yeah, definitely jumped into all the exciting stuff without setting the scene. So my pitch for Astro, when describing it to others, is that it is a site builder to build content-focused sites. So think marketing, blogs, documentation, newsletters, anything that is content-heavy. Astro is definitely going to be the framework to do it. So if you're thinking about wanting to use your favorite React components, Vue components, components from any framework, anything like that, and then bring it into the content that you're authoring, Astro is going to be a really nice way to do that. The people that I compare it to, it's kind of between two ends of a spectrum. There's the Eleventy, Jekyll, and Hugo crowd that all might be wanting to bring in components, bring in more dynamic architecture, and Astro is kind of taking that performant, server-rendered content story and bringing components into that fold. I also see Brandon in the audience, who created the Angular integration for Astro, if you're one of those people. So yeah, we're between that story and also the full-on Next.js and SvelteKit story, where you're building things with your favorite component libraries and might want to get some more performance, and also some more features in order to use Markdown and MDX more easily.

00:07:33 - Ben Holmes

If you also find yourself in that group, I think Astro is something that's definitely worth trying out.

00:07:37 - Ishan Anand

So one thing I think it's worth stressing for folks is that, as you alluded to, Astro is not tied to any particular framework. You can use Astro with React, Vue, Angular. I've said in previous episodes of this Twitter space, I like that it doesn't force me to commit. Do you want to just talk a little bit about that and make sure that people understand that's one of the unique strengths of Astro? You're not actually necessarily picking, whether you describe it as a library or framework, you're not necessarily wedded to any particular technology there.

00:08:11 - Anthony Campolo

From the team's perspective, though, you're tied to all of the frameworks. That's another way to think about it.

00:08:16 - Ishan Anand

That's a really good point.

00:08:17 - Ben Holmes

We are beholden to all of them. Yes. When you don't have an opinion, you have to support everyone's opinions. It's really how it's been going. But yeah, as you mentioned, we are framework-agnostic, is a way to put it. If you want to use the fancy term "meta framework," you could say Astro is kind of that meta framework that lets you start from just a baseline of writing HTML in order to author your sites. You do that using an Astro file. We have our own little templating syntax. And then when you want to reach for dynamic components, like you want to add an animated carousel to the marketing site on your homepage, or the homepage of your marketing site, I should say, you can reach for any component framework that you want: React, Vue, Svelte, Preact, Solid, and Lit Element, I think is our official list. And then Angular is a community one. And you can insert those into the HTML that you author with little switches to decide how much JavaScript you want to ship with those components and when that JavaScript loads on the page. So you can be really performance-minded and only bring in the heavyweight JavaScript stuff when you actually need to, but with really nice developer experience.

00:09:26 - Ben Holmes

So you can, like, reach for Svelte without feeling guilty about reaching for Svelte. It should be as easy as import, put it on the page. And that's what we've kind of been after.

00:09:35 - Ishan Anand

Yeah, that actually is a perfect segue for what I wanted to set you up for next, which is, and you'll often hear about this when you hear about Astro and a few other frameworks, this concept called islands architecture. And it's the idea of only using the JavaScript when you need it. Do you want to just elaborate for folks? It might sound imposing, but what islands architecture is, and a little more detail on how you can choose when a component gets hydrated and so forth.

00:10:02 - Ben Holmes

Yeah, whenever people hear architecture, they get scared, like, I've got to learn a new paradigm or whatever. But really, it's as simple as a way to just plop a component on the page. Like when you do a Create React App, when you spun up one of those for the first time, if you did learn React, you create that div on the page with an ID of main and you tell React to mount a big component inside of that div. And ultimately, that's what an island is. You put an element on the page and you tell your framework to go render a component into that element. And with Astro, instead of having one big div that you render an entire JavaScript app inside of, there's now a bunch of little divs on the page where you can decide, you know what, I'm not going to use React to render 100 kilobytes of JavaScript for the whole thing top to bottom. Instead, I'm going to choose: I just need a div for this image carousel, and I'm going to slot a React component into that slot right there. So that's really what islands are, where you can have multiple different points, different starting points, to add components to your page, and you can piecemeal whatever components you want to use and also have switches in order to decide when that component loads.

00:11:14 - Ben Holmes

That's kind of the second part of it, where instead of just saying I want to load React here, you can say I want to load React here when it scrolls into view. So, like, when you scroll down the page, then load React, but don't load React when you first load it because we want to have a fast time to interact and we want the page to load quickly for the customer. And you can also choose to only mount React when a CSS media query passes, or only load React when the main thread is idle. So it's a little bit more performant. You're waiting for everything to die down. So you have a lot of switches at your disposal, and you can just make a bunch of little React apps where you need to.

00:11:52 - Ishan Anand

And just to underscore what you said, the real benefit there is you're sending less JavaScript, you're running less JavaScript, so your pages are faster and more performant. I want to say it was Jason Langstorff, but I'm not sure who it was, who posted about, like, I rewrote my site from Next to Astro and it was a great developer experience, but also my page performance just improved rapidly because I'm now sending a lot less JavaScript. So that's, I think, everything we talked about was not even Astro 1.0. The islands architecture and the framework agnosticism was zero-point-whatever that was. That was kind of really at launch and what made Astro great. Let's maybe, unless Anthony, there's something else you want to highlight for what we call Astro 1.0 and why it's interesting.

00:12:46 - Anthony Campolo

Oh, actually I just want to shout out Fuzzy Bear, yet another Astro team member, who's welcome to join or not, continue to hang in the crowd. Already gave Brandon a shout out for his contributions, and just let everyone know that if they want to hop up, ask questions, or engage at all, feel free.

00:13:04 - Scott Steinlage

Absolutely. Sent the request there.

00:13:09 - Ben Holmes

Yeah, I was going to say we have a few members in the audience actually. So if any of y'all want to hop up, I assume that you can request.

00:13:17 - Ishan Anand

Yes, and we prefer to be interactive, and we get the most value, I think as Scott said at the beginning, when people participate. We're really trying to leverage Twitter Spaces to make it as participatory as possible. So if there's nothing else to cover on, and that's a great pitch for why Astro 1.0 is great, let's now switch gears over to all the amazing things you guys announced here for Astro 2.0. And I think you started going over the list. There's collections, there's the new hybrid rendering, but I'll let you read out what the list is and then we can dive into each one of those items in detail.

00:14:06 - Ben Holmes

Yeah, it is actually a beautifully short list. We didn't want 2.0 to be too big of a change for anyone. And if you're worried about breaking changes, there were very few. Just some improvements to Markdown configuration come to mind, since that was something I worked on. But the rest of it is going to work how it did in 1.0, since it was a pretty smooth release, all things considered. But the new features, the headliners are content collections, a way to add type safety to your Markdown, the front matter that you author, and also hybrid rendering, which is a way to both have server-rendered apps, server-rendered routes, and statically rendered routes in the same website. Up until now, server rendering was an on-off switch. You could either enter Node server mode or enter static HTML mode, and now you can sort of flip that on route by route, adding a little prerender flag to each route that you want to render to static. And you can do all of that with the same SSR adapters you were already using. You don't have to change anything about your app to enable hybrid rendering.

00:15:08 - Ben Holmes

It's just another feature inside of SSR that you can flip on. And the last thing I should mention are error overlays, which sort of bleed into everything that you talk about because it's just a redesign, a new coat of paint that we put on top of our error messages to also give you way better hints for where problems are, actual line highlighting of what went wrong, and also little hints taking you to the right documentation pages. It's a really nice error process. I bring it up because, as someone who authors stuff, I also need to author really good error messages, and we have internal docs and everything on writing better errors. So I think that made 2.0 way better because of that, especially content collections too.

00:15:52 - Ishan Anand

Very cool. I saw the screenshot of the new error message when it breaks on content collections, and it now tells you exactly where the problem is. I think paying attention to little things like developer experience says a lot about your commitment to DX. That's really great.

00:16:08 - Anthony Campolo

Hey, real quick, now that we got Fuzzy Bear up, we should let him introduce himself.

00:16:12 - Ishan Anand

Oh yeah, let's do that.

00:16:15 - Fuzzy Bear

Waka, waka, waka, everyone. Thank you for...

00:16:18 - Anthony Campolo

What's up, dude?

00:16:19 - Scott Steinlage

What's up? What's up?

00:16:19 - Dax

How are we all?

00:16:23 - Anthony Campolo

Feel free to kind of give a little bit of your background, who you are, and what you do on Astro.

00:16:28 - Fuzzy Bear

Oh, okay. Fuzzy. I'm the community manager for the Astro community, and it's been an actual privilege to be part of the project for a little over a year. Yeah, just watching it grow, watching it take the shape it is, and how the community has kind of interacted and worked with it, it's fantastic. So yeah, it's an actual privilege on that part. But yeah, I just wanted to say, guys, thank you very much for hosting this space as well. This is really cool.

00:16:58 - Anthony Campolo

Yeah, for sure. Yeah, we're happy, happy to do it.

00:17:03 - Ishan Anand

So I don't... go ahead.

00:17:06 - Fuzzy Bear

No, I was just wanting to follow up on what Ben was saying about the error overlays.

00:17:09 - Scott Steinlage

And how...

00:17:12 - Fuzzy Bear

For astronauts, we call our users astronauts in the community, the typical error interactions that we normally experience as developers are very red-wall material, and it's very overwhelming, especially for those coming into the community, into the whole onboarding process, making this their lifestyle, sad that may be. But the way that has been developed, like Ben was saying, the additional error descriptions that we're putting into the code, the work that Erica has done along with Mark in terms of designing and implementing the error overlays has been fantastic. But there's also been implementations from Happy Dev in the community, who just came in and put the toggle in. So now it's light mode and dark mode, so you can sit there and toggle to your heart's content. Things like that are what the relationship between Astro and community is like. It's fantastic to see.

00:18:12 - Ishan Anand

Very cool. I noticed we had two other folks come up, Eric and Brandon. I don't know, Scott or Anthony, who was first, but curious to hear if they have a question or something they want to comment on or ask.

00:18:27 - Anthony Campolo

Yeah, go for it, Eric. I think he was here first.

00:18:30 - Scott Steinlage

I just wanted to say hi to...

00:18:31 - Ishan Anand

To Fuzzy Bear and...

00:18:36 - Scott Steinlage

Yeah...

00:18:39 - Anthony Campolo

I loved meeting you a couple months ago, that's all.

00:18:42 - Fuzzy Bear

Yeah, it was a great time, man.

00:18:43 - Ishan Anand

I think Astro sounds super cool, but

00:18:45 - Anthony Campolo

I haven't used it, so...

00:18:47 - Fuzzy Bear

Oh dude, I need to throw that out with you.

00:18:51 - Ben Holmes

It's very [unclear] happening in real time.

00:18:54 - Anthony Campolo

Yeah, I think once you get into it, it's hard to get away from it. I know so many people who just, like, once they tried Astro, there's like, now I have to rewrite my site.

00:19:04 - Ishan Anand

Brandon, what did you want to contribute or ask?

00:19:12 - Brandon

Hey, thanks for allowing me to come up. And I work at OpenSauced with BDougie, for those of you who may know. And I also created the Angular integration for Astro, because we should be in that space too, some kind of way. And the Astro team has been pretty helpful about that also, so I appreciate that. So congrats to the team.

00:19:34 - Brandon

Just wanted to say that, and my question was — and I'm sure this has come up before — but Astro now has hybrid rendering and already supports multiple frameworks. Does the team see any evolution of Astro becoming, not a client-side application framework, but kind of fitting in that space in any kind of way? I know it's focused on content sites, but do you see a space for that?

00:20:02 - Ishan Anand

It's a great question. Ben or Fuzzy Bear, do you want to take that?

00:20:07 - Fuzzy Bear

I want to see if Ben bites first.

00:20:10 - Ben Holmes

That is a big question. Yeah, because there has been sort of a pull in two directions of, like, do we go even deeper on the content story or do we start sort of flirting with the ideas of larger applications, dashboards, et cetera? And it gets me excited seeing, like, TanStack, if you've seen recently on Twitter. I don't know if there's a way to put it up on this billboard, but there was an experiment someone did with TanStack Router, which is a generic routing solution for building dashboards with any component framework. As far as I can tell, at least they're building out adapters for all of them. And they embedded four different TanStack Routers inside of a single Astro page and just said, check it out. It was this easy. And it's like, well, yeah, it kind of is. Because Astro, if you're familiar with Vite, which is a lightweight build tool that has its own dev server and its own built-in features, Astro is just a wrapper around that that brings server-side rendering and easier component integrations to the table. So if you just need a test bed to embed a full client-side rendered app with server rendering, Astro is really easy to do that.

00:21:21 - Ben Holmes

I actually had an experiment with Solid Router as well, because since we do support server rendering, it's easy to just host a big application inside of an Astro app, and then you can make your homepage really nice and static and then make your dashboard this dynamic server route. So I feel like the bones are there, the pieces are there for you to do it as a user on your own. But we get enough requests about, like, how do I get snappy single-page-app route transitions in my Astro app? It's going to refresh the page when I go between stuff and I want to have that snappy experience. How do I do that without bringing my own router? And today that's definitely up to the user. But I have heard enough about all of the ideas. That sounds like I'm fed up. I've heard enough. But I've seen a lot of amazing ideas coming out, and a few RFCs as well, or at least proposals and discussions, about how we could bring a simple single-page-app setup. So I feel like we're leaning into the content story, and that's something that's being explored separately.

00:22:26 - Ben Holmes

But I feel like the two worlds collide enough where there's something to learn from both of them. So the answer is it's very much on our mind and there are some interesting proposals for it.

00:22:35 - Anthony Campolo

And if you are able to find that link on your app on the bottom right, where there's like a little speech bubble and a number, that's where you can reply to the space itself that we can pin up.

00:22:48 - Ben Holmes

Nice.

00:22:49 - Fuzzy Bear

Fantastic. No, I was just wanting to follow up on that, Ben. There have been a number of userland plugin integrations that have pushed the boundaries when it came to the SPA model. I would highly recommend checking them out. Go to astro.build/integrations. It's pretty much your landing post for a lot of the userland plugins that have been made for Astro. And you'd be surprised, there's a couple out there. I would like to shout out Moynam, who made the original Astro SPA plugin way back in April, I believe, last year. And that's still kicking about and that still works perfectly well. Swap is able to be added to Astro. There was a Turbo Links package, but I think because Turbo Links got deprecated, something happened with that. But there are a number of userland solutions out there for you. So by all means, play away.

00:23:53 - Ishan Anand

So let me go, like, from the product five whys, a few levels deeper to Brandon's question. Who do you guys view as the use case or persona that you guys are targeting as the ideal Astro user? Like, what is the use case that you're like, Astro is not a use case for that? Because we're talking about, you know, we've gone from dashboards and then there's pure content in MDX, and the 2.0 release has those collections, which I want to get to at some point, which is really compelling for that. Are there use cases that you're like, this is not on our roadmap? That's another way to look at the question. Do you understand the question I'm asking, and do you have a sense of what that answer is in terms of your roadmap?

00:24:39 - Ben Holmes

Yeah, I can definitely echo some things that have been said before, which is Astro is specifically targeting marketing, blogs, documentation, up to ecommerce. And then if you're trying to build dashboards or the next Facebook, we're not going to help you, but you can use Astro as a base if you'd like to. And that's been our roadmap that we're building on from here. Not to say things aren't possible. The thing about us not having many opinions is that people can really go nuts with how Astro works. Like, we don't even ship a SPA. So you can just do whatever you want. You can create that route to build that dashboard. But if you're talking about things that we're trying to help you with today, definitely the marketing-to-ecommerce story.

00:25:18 - Fuzzy Bear

Mm, got it.

00:25:20 - Ishan Anand

That really helps.

00:25:22 - Fuzzy Bear

So that's a large part of the web as well. Let's not kid ourselves. I mean, Astro's integrations... we've got a lot of community guides that have been written up that talk about how to integrate Astro with other CMS tools like headless WordPress, Ghost, Contentful, Sanity. Storyblok is one of our partners on the project as well. And there's a number of these guides written up there. By all means, you can leverage Astro as the presentation layer and keep your content nice and separate between the two distinct worlds. And that's just the remote content. The content collections, honestly guys, you need to try this out. This is just a world apart.

00:26:06 - Ishan Anand

Thanks. I actually want to get to that in a second. We have two people who just came up though. Dax, I think you were first, and then Daniel.

00:26:15 - Dax

Hey, everyone. Just wanted to ask the Astro team, how are you guys seeing adoption? I don't know how to describe this exactly, but I guess we would call them enterprise companies. But when I say enterprise companies, I don't mean a big, huge company. I just mean, I think a lot of stuff we see on Twitter and what people are doing with Astro, they tend to be smaller projects, little side projects. I'm just curious to see how people are fitting Astro into... they might already have an existing stack that's like five or six years old. How are they dropping in Astro? Have you guys seen that? How are they choosing to deploy it, given that Astro is optimized more for these modern deployment platforms? If you guys can speak to that in general, it'd be pretty interesting.

00:26:58 - Ishan Anand

Great question.

00:27:03 - Fuzzy Bear

I'll take this one, if you don't mind, Ben.

00:27:06 - Ben Holmes

Go for it.

00:27:07 - Fuzzy Bear

Oh, thank you. Actually, it's strange. We know of a number of enterprise users who have adopted Astro internally within their workflows. They've seen it as a great way for them to create, test, and rapidly prototype out their ideas and bring them in. One story that I can kind of tell without naming names is that it was two particular projects working at a similar time. Both tried to achieve the same outcome. One ended up going their own particular route using their existing methodologies. The other one chose Astro. The other one got there four weeks ahead of the other group and ahead of their sprint schedules, et cetera, and have now slowly started to adopt that into their wider workflow, which is really interesting to see. And as a result of that, they've seen massive amounts of efficiencies in terms of their build times, resulting in savings in their margins that has allowed them to actually be resilient within the current market because of the efficiencies that they're getting elsewhere in their margin lines. So it's the small little things that I've been hearing, and I've been in communication with a number of users who have adopted that within their companies as well and are slowly starting to see the benefits of having Astro within their predominantly marketing content side.

00:28:47 - Fuzzy Bear

Whereas their workflow for their application development is already set in stone. And for that, they are pretty easy with that just being its own isomorphic team that is completely specialized in that field. Whereas Astro allows them to hire more different developers as well from different skill sets now, whereas it's not just your atypical React developer that you go for. Somebody who understands JSX now is pretty much your developer that is on the market.

00:29:20 - Dax

Yeah, that makes sense. Sounds similar to what I expected.

00:29:23 - Fuzzy Bear

It's like Astro is such a no

00:29:25 - Dax

brainer to drop in even if you have a bunch of other stuff in a different stack.

00:29:28 - Fuzzy Bear

Whatever it is.

00:29:30 - Dax

The thing I'm curious about is, I don't know how much you've been exposed to this, but given some of these companies, they already have their tech stack probably deployed on something boring like AWS. How are they deploying Astro? Are they doing a one-off thing where they're deploying Astro just through, like, a Vercel or equivalent? Or are they kind of fitting it into their existing infrastructure?

00:29:52 - Fuzzy Bear

Into their existing. I've seen it being deployed with Akamai, AWS, right the way through to Azure, you name it. We've got guides actually in the docs written up about how to go about setting these up for yourselves.

00:30:06 - Anthony Campolo

You have 18 deployment integrations.

00:30:10 - Fuzzy Bear

Exactly. And yeah, that number has been growing. Dude, seriously, the community, I cannot stress how awesome everyone is in there. There are 1,844 contributors to the project, all around the docs and the core code base. And that's everything from an issue being raised right the way through to actually having a PR merged.

00:30:36 - Ben Holmes

Yeah, I think docs actually passed core with the amount of contributions we have, and also the amount of translations that we have as well. We have sort of a line graph that goes up to 100% for all of our languages, and they're all pushing past 40-plus percent, and we have like 10 languages. It's crazy. I normally don't see docs as something people are passionate about, let alone things that have leaders born out of them, which I'd shout out Sarah and Chris for, of course, many others.

00:31:03 - Anthony Campolo

Yeah.

00:31:04 - Ben Holmes

But I also do want to speak to that deployment a little bit, since I was surprised to see how many people just use the Node adapter with Astro, because we do offer a simple, like, we'll give you a Node server. You can either inject Astro as middleware to your existing server, or you can host your own standalone app on whatever service you prefer. And that is definitely one of the more popular server-rendering adapters that we have, so that people can just implement it into their existing workflow, try out a few routes on Astro, serve them as little Node endpoints, and if they like it, they can slowly expand that middleware application to cover their entire site, depending on how they want to use it.

00:31:45 - Ishan Anand

So I'd be remiss for not being that guy and putting it: if you go to docs.astro.build, you go to the deploy guides. One of those multiple deployment partners is Edgio, where I work, among a lot of other names you'll probably recognize. Let me rephrase the question, though. What's the biggest Astro site you can publicly disclose that's out there? I went to your showcase page and I noticed it looks like the Firebase blog, Guardian Engineering's blog, NordVPN are listed there. Are there other names that come to mind as big?

00:32:24 - Fuzzy Bear

Yeah. Bloomberg has published recently a couple of landing pages made in Astro for their sites, not their entire Bloomberg site. That'd be amazing if they did that one day. But it is really... there's a couple. Bloomberg was the most recent. IKEA...

00:32:44 - Anthony Campolo

Ben mentioned, I think IKEA as well.

00:32:47 - Fuzzy Bear

Yeah, yeah. They've been great as well. They've really adopted it quite well. I seen The Telegraph internally are using it for their internal blogs, and the Guardian as well, them too. God, I'm really scratching my head now.

00:33:10 - Ben Holmes

Those are big.

00:33:10 - Fuzzy Bear

But yeah, the showcase is pretty much your home. And there's also the Hyperdrive. So basically, something about the showcase, right, it's like the Astro Showcase channel... if you build anything or do anything, if you've got something to scream about, right, always showcase it to us because that's what the community is all about. We like to support everyone and each other. And so we've got a showcase channel on the Astro Discord channel. If you're not part of the Discord, it's astro.build/chat, that's your invite. And not only that, if you do have a site that you want to put out there, put a PR into the Astro build showcase page itself. We'll put it there and it gets put into the Hyperdrive and somewhat of a little competition, an internal competition, to see if you get the number-one spot and who's the most performant website there is, kind of thing. So it's kind of cool. The Hyperdrive is kind of an internal thing. So you need to be a real astronaut to get on that thing.

00:34:10 - Ishan Anand

Well, I love a challenge. Maybe I'll have to drop into that one.

00:34:15 - Anthony Campolo

Yeah.

00:34:16 - Scott Steinlage

Thanks for shouting all that out. I just wanted to really quickly, since it's a little past half past here, just say thank you all so much so far for joining us today. We've gotten so much awesome value here from Ben and Fuzzy and everybody else coming up here as well, asking these great questions that are just prompting some amazing answers and furthering the conversation about Astro 2.0 and moving forward with everything. Really looking forward to the rest of the conversation here and getting more people up here. So if you have any questions, opinions, facts, statements, whatever, please request to come up. Now's the time. Let's talk about Astro 2.0 and moving...

00:34:57 - Fuzzy Bear

...forward in the future with it.

00:34:59 - Scott Steinlage

And yeah, just real quick here, if you're a beginner or you've been doing this a long time, it doesn't matter. We want to hear from everybody, okay? So come on up. Just request. We do this every Wednesday, 12 p.m. Pacific Standard Time, so be here every week. And speaking of that, if you want to get some awesome news in the web development world and/or JavaScript, be sure to subscribe to our newsletter. If you go to javascriptjam.com, you can subscribe to our newsletter there and you would have been in the know. And hey, you know what, we've got Astro coming up today, right? So don't miss out.

00:35:31 - Ishan Anand

Thanks, Scott. I'll turn it over to Daniel, who is next up on the stage.

00:35:37 - Scott Steinlage

Oh, real quick, Daniel, I apologize. One last thing, one last thing. If you are getting any value from anybody up here, which I feel like some people probably are, okay, be sure to click on their face and follow them, because guess what, you're not just going to get value from them here, you're probably going to get value from them in other places. So if you're not already following them, which most of you probably are, but be sure to do so. And hey, you know what? JavaScript Jam wouldn't mind a follow too. Thank you.

00:36:03 - Ishan Anand

Okay, Daniel, I think that's you.

00:36:06 - Fuzzy Bear

Awesome.

00:36:07 - Ben Holmes

Well, it's awesome to have you guys here. Fellow astronaut.

00:36:09 - Ishan Anand

Love, love Astro.

00:36:10 - Ben Holmes

It's absolutely awesome. And one of the things I was wondering is, like, when you actually got started on the project, what was kind of the inspiration behind it, way back in the original Astro days? You're actually speaking to someone who joined a little bit later. But I know that the...

00:36:29 - Fuzzy Bear

Oh, I know that.

00:36:30 - Ben Holmes

Oh, you know it. I think I know too. I know the original commit was called Magic Thing from Matthew. I'll shout that out.

00:36:37 - Anthony Campolo

Anyone who listens to FSJam would know because Fred was on like two years ago to tell the story.

00:36:42 - Ben Holmes

Oh, you know the history too.

00:36:44 - Ishan Anand

And there's a specific...

00:36:46 - Ben Holmes

reason why I asked is that, you know, when I first discovered Astro and dove into it, it's like a magic feeling. It's that environment that you kind of always really wanted to be inside of, and you've had to deal with so many other problematic things, and it's just really reminiscent of what things used to be, but in a much more efficient way. But anyways, that's why I was curious.

00:37:14 - Fuzzy Bear

It really originated from a couple of experimentations, seeing what could be done given what the field was at the time. And bear in mind, this was heavily leveraged towards client-side rendering, and a lot of the frameworks and a lot of the direction and the attention focus for the ecosystem was towards that purpose. When it really boils down to the question, it's like, should we try and send less now? A couple of projects came about. There was Nate working on... oh, forgive me, what's the name of that project, Ben?

00:37:58 - Ben Holmes

Which project?

00:38:00 - Fuzzy Bear

Nate's, like, oh, you know the one I'm talking about.

00:38:07 - Ben Holmes

Oh, I know what you're talking about. This is all history here. I think it's... I want to say small something. I could be wrong. Microsite.

00:38:16 - Fuzzy Bear

Microsite, that's the unit. That's the one.

00:38:19 - Ben Holmes

Yeah, yeah. So the [unclear] was small, S-O-M-L. That's when you know it's something good. But yeah, I will also say the original team involved was, and I guess myself too, since I was working on something kind of similar to Astro in the space, seeing how things could work. But at the time, the original people like Fred and Nate, they were working on both Skypack, which is a way to manage your dependencies in the cloud and pull them down without actually installing dependencies yourself, and also Snowpack, which was sort of a precursor. Well, not even a precursor. It was happening at the same time as Vite and ideas were taken from either side. And ultimately the Vite community blossomed in a really big way, so Astro ended up switching over to Vite internally as that sort of shook out. But when you're building these tools to make bundling easier and to just ship ESM, or ECMAScript modules, to the web, that's very nerdy speak for not bundling things. When you realize you can do that, you start seeing all these possibilities to inject islands. What would it look like to have a framework that supports any other framework, and how easy would it be?

00:39:29 - Ben Holmes

And Vite kind of blew the doors off on anyone being able to create their own framework around ideas. It's what inspired me to bootstrap components into Eleventy. It's what's inspired SvelteKit and Solid Start to start emerging, to build up meta frameworks around the thing that they built. So some of it is just having the right tools at the right time sort of let us try out these ideas, and then we sort it out. There's definitely a performance story here. There's definitely a content story. We build in more Markdown features. Let's go deeper into that. So that's really sort of the angle that blossomed out of just some engineering nerdity.

00:40:07 - Fuzzy Bear

Oh, totally. And I just want to say, the move from Snowpack to Vite unlocked so much for us, for the project, for the community in time. Hot module reloading got so much better. It actually made it something that was a possibility. Server-side rendering came in about April when it came out with the beta. But then it didn't really get sorted with as many deployment providers, because Netlify was one of the first deployment providers that we had for server-side rendering when it got launched. And then by August, by v1, it was watertight. And a lot of that was, yeah, community-driven action, man.

00:40:51 - Ben Holmes

That's awesome. It's just an amazing framework.

00:40:54 - Scott Steinlage

Love it.

00:40:55 - Ben Holmes

Stoked you guys are here. Appreciate it.

00:40:57 - Fuzzy Bear

And yeah, big shout out to the Vite team. Huge shout out to Bjorn and the core team, who's basically helped really show us what we can do with Vite and help power Astro with Vite 4. He helped with the Vite migration to Vite 3 and Vite 4 for us as well. Bjorn's done an amazing job.

00:41:23 - Ishan Anand

Very cool. I think [unclear].

00:41:36 - Dax

My Internet is not really great, so I hope you hear me.

00:41:42 - Ishan Anand

Scott, sorry, go ahead.

00:41:58 - Dax

I'm driving, so my Internet isn't good. Can you hear me, guys?

00:42:03 - Anthony Campolo

Yeah, we can hear you. I think you're good.

00:42:06 - Ben Holmes

That's what I noticed.

00:42:07 - Anthony Campolo

Yeah.

00:42:07 - Dax

Right, thanks. So I think going back a bit to roadmap and what is kind of in front of the project for version 3 or something like that, one thing that is not discussed often is that Astro is a company that got some money behind it, and presumably that means that it needs to bring money in to pay the investors. Do you imagine that's going to happen soon, or is that still kind of like version, I don't know, five or six out?

00:42:47 - Anthony Campolo

If you make it up in collective, people just give you money.

00:42:51 - Fuzzy Bear

Astro is free. It's a free and open-source project and always will be. So to the community, understand that that won't change in any roadmap.

00:43:11 - Ben Holmes

Yeah, that's a really big point that's driving basically anything that we explore as a company. And also to sort of speak to the Open Collective part a little bit, we do have an Open Collective component, but any money that's received through that, both through donors and sponsors, is given straight back to the community. And Fuzzy, you can speak to that more than anyone about our sort of community contributions that we give once a quarter, to use business terms, whoever in the community we voted, or the community has voted, should receive.

00:43:42 - Fuzzy Bear

Yep, indeed. We had the nominations for community awards for the Astronaut of the Year for 2022. Eight and a half thousand dollars, which was our monthly take for December, which is huge for the Open Collective, is going to be redistributed back. And I won't say any more on that because I'm really bad at keeping secrets, so don't press me. But no, that announcement should be made in the coming days about who the recipients of those awards are, about who the astronauts of the 2022 award are. And not only that, last year we had the hackathon, which saw prize totals of $15,000. We've had, in total, I think we've given around... don't quote me on this, please. Nobody quote me on this.

00:44:39 - Anthony Campolo

About...

00:44:43 - Fuzzy Bear

$30,000, $40,000 to the community. And we sponsor projects on a monthly basis as well. So we are looking to try and give a lot more back. We're trying to come up with robust ways that we could actually help keep our community sustainable and show how open source is meant to be. And that's going to take time, guys, like with everything, you know. But it is definitely a focus for us all.

00:45:16 - Anthony Campolo

I do think, though, that it's kind of a valid question, which is, like, all that stuff is really great, but there is VC investment now, like millions and millions of dollars, and I'm sure there is some sort of expectation that some sort of product will be created. And if the answer is we still don't know yet, that's fine, that's valid. But is there even an inkling of an idea of what that product may be at some point? Yeah.

00:45:39 - Ben Holmes

There's definitely discussion, of course, around what we would want that feature to be. And we're definitely trying to build a story where, first off, as Fuzzy mentioned, the Astro core, the Astro framework, will be free and open source for anyone to use. That is core to our mission and our values. So that will always be available. There are no paywalls to ever expect. But if we build anything else, that needs to slot alongside that vision in a way that feels natural to what the community is already doing and serves needs that are already existent. We're not trying to funnel you into this service that you didn't need. We're not locking away certain features just so that we can sell something instead. So that's all that we're really trying to keep in mind with whatever we build. But I can definitely say it's on the roadmap.

00:46:27 - Anthony Campolo

Yeah, the term open core is what they used to call this, like MongoDB. There's actually a long history of open-source projects that have done this, some more successful than others. But I think it's a legitimate model, and if it allows the Astro open-source project to continue to thrive, then all the better.

00:46:47 - Scott Steinlage

Yeah, and I do want to mention also that, speaking of Open Collective, I put a link at the top there. So if you feel the need to and you have a passion for Astro, go there. They have individual backer as well. So, you know, as little as $10 a month. But yeah, there's $2,000 a month too if you want to go get that done.

00:47:09 - Dax

So yeah, it just depends how...

00:47:13 - Fuzzy Bear

much you want to write off your tax returns.

00:47:18 - Dax

I think there is a good example of a successful product like that, like Tailwind and Tailwind UI, where they sell a product that is not essential for the core product. But maybe you have, right now, themes and integrations. What if you can have premium themes or premium integrations that are...

00:47:42 - Anthony Campolo

I'd pay for a super-sweet Astro blog template. I'm using a community one. It's decent, but it could be better, I'm sure.

00:47:51 - Fuzzy Bear

Well, the thing is, we have such a great and diverse community range of astronauts. They come in all shapes, all ages, and all sizes, and they can do many different things and many cool things. And we want to create a space where they can actually promote their themes. For instance, Jason... sorry, Jaden, I forgot his surname. Little Sticks has created a number of great themes. There's actually a number of paid themes that community members have put up on the astro.build/themes page. By all means, yeah, it's a space that we're slowly starting...

00:48:35 - Anthony Campolo

...to...

00:48:38 - Fuzzy Bear

...work on and see how it takes. All things in small doses, with all good medicine, I suppose. But yeah, it's one of those where it's starting to take root. It's starting to go really well. Some of the themes that have been made are outstanding, by the way. Seriously, design quality is out this roof, and they've been built properly, with the code as well. And these are astronauts who know how to use Astro, y'all.

00:49:15 - Ben Holmes

Yeah.

00:49:16 - Fuzzy Bear

Yeah,

00:49:19 - Anthony Campolo

You're good, man. Don't worry. Yeah, yeah. No, I think this is cool because obviously I love open source. I think as much open source that can be done is great, but I'm also someone who is acutely aware of the challenge of getting paid for the work you do, which is the work all of us do, which is legit dev work that we could be getting paid a lot of money for in a lot of other places.

00:49:37 - Fuzzy Bear

Places.

00:49:38 - Anthony Campolo

So anytime we can find the right middle ground where, you know, we get to benefit from open source, but also have ways to, you know, pay for specialized kind of things that people can provide. I think that's really great.

00:49:54 - Fuzzy Bear

I totally agree, Anthony. And it's something that, you know, we'll see what happens. I mean, the roadmap is... yeah. But that's the thing. I really want to drive home the point of the community, because the community helps drive a lot of the decisions that are made to the project. Do you want to come back to the new feature release for Astro 2.0 for a second? Hybrid rendering.

00:50:22 - Ishan Anand

Feel free.

00:50:22 - Anthony Campolo

Yeah, feel free to drive the convo any direction you want.

00:50:25 - Fuzzy Bear

Awesome. Hybrid rendering. Right, so the story of rendering in Astro. Astro began as a static site generator. And for the love of God, it could have just stayed there, right, and been fantastic, just being the best.

00:50:42 - Anthony Campolo

Right.

00:50:42 - Fuzzy Bear

And just put the blinkers on and stayed where it was.

00:50:46 - Scott Steinlage

Right.

00:50:48 - Fuzzy Bear

The community helped. I mean, the Vite community drove the Vite project to where Vite was. Community action is everything in open source. Without Vite being where it was and making it possible for Astro to be ported over back at the start of last year, right, this time last year actually is when we had the beta come out.

00:51:12 - Ishan Anand

Right.

00:51:13 - Fuzzy Bear

So then we had the community asking whether or not SSR was possible. And that took us to April, like I said, and then v1 in August. Now after v1, one of the most feature-requested things from the community was some incremental static rendering option for us, so that way we could have the best of both worlds. Because at that point, between August till now, it was either static or server-side rendered. It was either request at build time or... sorry, build at request time, kind of thing.

00:51:52 - Scott Steinlage

Right.

00:51:52 - Fuzzy Bear

I'm sorry, I've got myself...

00:51:53 - Anthony Campolo

Yeah,

00:51:55 - Dax

yeah, exactly.

00:51:56 - Fuzzy Bear

I got myself mixed up there. But this stuff is so...

00:51:59 - Anthony Campolo

...confusing to talk about. Oh my God.

00:52:01 - Fuzzy Bear

Oh, I mean, you're either one or two. You're either one or the other. You couldn't have that golden middle ground where Goldilocks likes to play. And that was driven again by the community, because it was requested so fiercely, so vehemently, that the project, the VC money, went into getting that there. So that's that relationship in real time.

00:52:33 - Anthony Campolo

Yeah, it's pretty interesting how it started out more static and client-side-rendered kind of meta-framework type idea. And SSR, there's just such a strong pull from other frameworks that have it. So if you wanted to be competitive, I would imagine most people like, yeah...

00:52:49 - Ben Holmes

I'd love to use Astro, but you...

00:52:51 - Anthony Campolo

...kind of need to have SSR. This is something that Redwood still hasn't done yet. And we've been getting people asking for SSR since the first month the framework was announced. So I understand that pain.

00:53:05 - Fuzzy Bear

But I mean, yeah, hybrid rendering is here, which is fantastic. It allows you to have literally the best of both worlds where you can just choose which routes, which pages you want to be statically generated, and the rest handle off the server.

00:53:28 - Anthony Campolo

Do you want to talk about that at all, Ben? Or other topics you want to talk about? We're getting close to the hour. We can go over if people have time, or we can kind of call it, or if other people have questions. Looks like actually we have a request.

00:53:44 - Scott Steinlage

It was Henri.

00:53:46 - Anthony Campolo

Ah, awesome. Good stuff. What's up, Henri? Good to have you here.

00:53:50 - Henri

Good afternoon, folks. Thanks for having me. I've been tuned in from the start, in and out, just because I keep forgetting that the desktop will not allow for a straight connection. Yeah, it's so annoying. But first of all, congratulations on 2.0, team. And I do have a question that just actually came up from this quick conversation around themes. So that's actually one of two questions. The theme part I'm super curious about because I know there's a big emphasis on performance, as Ben sort of alluded to in his ongoing conversation from the start. I'm very curious about the themes bit, or the theme store that you have, because what I've seen from, say more recently, orgs that have themes, they've been shifting toward a process of scanning the theme for best practices and trying to maintain some performance as well before admitting them. So is that something that Astro will be doing? That's my first question. And two, I'd love to hear more about the roadshow that's going to be happening soon. Thanks.

00:55:14 - Ben Holmes

Oh, the roadshow?

00:55:16 - Scott Steinlage

Oh man.

00:55:17 - Ben Holmes

Yeah, that's a separate thing. We can get to that. There was a fun tweet that went out with some ideas, and also great to see you. I remember joining Eleventy's way back in the day. That event was awesome. Yeah, you know, Anthony. But yeah, speaking to themes, we do actually have a new theme submission form where you can submit the full details of the theme, banner images that you want to display so that people can understand what the theme does, what it's built for. And through that there is a small, I guess you could call it a review process. I don't think we have an actual checklist of what we look for other than looking at the repo: is it what it says it is as advertised? Can it be used as an Astro project? And then we go. But you do bring up good points on, like, if we also had a checklist to understand that this is something we really recommend to our users. It's not just good-looking on the surface level, but it's really good from a Lighthouse and end-user perspective, or...

00:56:13 - Anthony Campolo

[unclear].

00:56:16 - Ben Holmes

Yes.

00:56:17 - Anthony Campolo

[unclear].

00:56:19 - Ben Holmes

Yeah. Further than Lighthouse, that's definitely the metric. I remember hearing about it through Shop Talk and started exploring it myself. But yeah, definitely something that we can look out for because we do want to lean into themes more. Because a lot of people using Astro are coming from that space where they just want to get something on the Internet, and themes end up being their entry point, not even our CLI, which we put a lot of time into. People are just window-shopping for the perfect theme and then spinning something up from there, which, embarrassingly, is something that I don't try that often. I'm definitely the CLI guy that's trying to add all of my tools quickly and build it from scratch. So I think recognizing that theme story is a huge part of it. And now that we have this submission flow, going deeper into, first off, best practices on building a theme to sort of guide people into the pits of success. They can't build a bad theme because we give a great starting point. And then from there, having a nice vetting process for what you see on the end page, because it is like people's...

00:57:21 - Ben Holmes

It is the face of Astro in a way.

00:57:25 - Henri

And thanks for that. And I say that, and I'm not here trying to compare anyone, really. But I know classically at WordPress, themes have been a problem. Shopify, I know someone who left Shopify to start his own agency, and one of the things he said specifically was that they were going to make sure it was all performant themes because he saw that challenge happening over there as well. So I always found that to be one of the hurdles. And so to hear that you're inviting themes over was interesting because I was really curious as to what the team was going to do in trying to maintain that conversation around performance. Because, again, there are free themes and then there are paid themes, and especially when the paid theme comes around, sometimes the shiny objects sell more than best practices.

00:58:34 - Anthony Campolo

Yeah.

00:58:37 - Ben Holmes

Yeah, that's the perfect way to put it. And I'll probably actually quote that because I do want to bring it up to the core team to see how we're going to treat themes going forward, since I know it's a developing story. What you see today on the themes page isn't the end goal of Astro. It's just like this was our starting point to make themes more prominent, and now we want to... the main thing that comes up is, how do I make a theme? What should the starter template be? Should it be a combination of a package of components and a GitHub template to clone? Is it both? Are there ways to embed snippets of those things? So none of that has really been explored the way we want to. So I definitely want to go further on that.

00:59:15 - Anthony Campolo

A performance audit, something like an accessibility audit could also be really valuable.

00:59:21 - Fuzzy Bear

This is all great feedback, guys. Thank you.

00:59:24 - Ben Holmes

It actually just is great feedback, and I'd be interested to hear how the WordPress and Shopify stories sort of play that out and all that. I don't want to clog the space with that, but I'll be asking.

00:59:36 - Scott Steinlage

Yeah, through the theme submission link up there in the chat here or in the comments. And then I also threw in and linked to the space here not only that, but the Discord link there as well. So...

00:59:54 - Ben Holmes

Awesome.

00:59:54 - Fuzzy Bear

Thank you very much.

00:59:56 - Henri

Well, thanks for your time. And you could actually drag me off the stage if you want to make room, so don't worry.

01:00:04 - Fuzzy Bear

Well, appreciate it. Thank you very much.

01:00:06 - Scott Steinlage

Henri, you're fine.

01:00:07 - Fuzzy Bear

Really interested in that. Second question. The Astro road show.

01:00:10 - Ben Holmes

Yes.

01:00:11 - Anthony Campolo

Yeah, explain. I don't think I've even heard of this.

01:00:17 - Fuzzy Bear

We need to find a van big enough.

01:00:20 - Ben Holmes

Yeah. So, I mean, Astro van, it's a thing. It's catchy.

01:00:25 - Scott Steinlage

Yeah.

01:00:25 - Ben Holmes

We need to road trip in an Astro van. That's just it. Name-driven development, no dates planned. Fred shares a picture of a van. I mean, at the end of the day, I don't know, feels inevitable, but...

01:00:40 - Scott Steinlage

...you have to do it on version 4.33 because the motor that's in the Astro is a 4.3.

01:00:48 - Ben Holmes

Oh, is it? That's actually funny.

01:00:54 - Scott Steinlage

Oh, we had one of those when...

01:00:55 - Fuzzy Bear

I was a kid.

01:00:56 - Scott Steinlage

That's crazy nice.

01:01:01 - Fuzzy Bear

Like I said, once we find an Astro van big enough...

01:01:06 - Ben Holmes

...we've got to stop hiring.

01:01:08 - Scott Steinlage

Got...

01:01:08 - Ben Holmes

...we've got to make this happen.

01:01:10 - Fuzzy Bear

No, but the team is like... the people that we have on the team are just amazing. From the designers to the core team and even those who lead the docs itself, it's just all around the board, all fantastic. And the maintainers and the community members. Seriously, guys, come and join Astro. You'll have a great time.

01:01:37 - Anthony Campolo

It's like the opposite of that South Park meme. You're gonna have a bad time.

01:01:43 - Ben Holmes

Have a good time. Yeah.

01:01:45 - Fuzzy Bear

What's that saying that we have in Astro? We'll throw you under the bus, but we'll be there to pick you back up and dust you off again.

01:01:57 - Anthony Campolo

What was that acronym you used to always say? Not... not have the T. Not...

01:02:04 - Fuzzy Bear

Not worse than what we had before. That's the coinage.

01:02:08 - Anthony Campolo

"Not worse" really stuck with me. It's a good one. Yep.

01:02:12 - Ben Holmes

If there's ever back and forth in docs and we have a new way to explain it, it's like, you know what? Not worse than what we had before. That's how you get contributors, man. If someone's got a good idea, just get it in there.

01:02:25 - Anthony Campolo

We seem to have kind of devolved here. Are there other topics we want to hit on in terms of Astro 2.0? Do we answer all the other questions sufficiently?

01:02:40 - Fuzzy Bear

Well, I would like to bring up one last thing because it was kind of mentioned around, I think it was Brandon or Daniel's point about the roadmap. Sorry, no, it was [unclear] who mentioned the roadmap, maybe Parasocial. Basically, we've got the RFC process, the Request for Features call, which happens every Tuesday in the community, and it's an open process where we go through whatever features or additions are going to be added to Astro. But we're kind of looking to change that up and make it so that all the great ideas don't get bottlenecked and can have more space to be pursued. And so there is now a roadmap repo in the Astro organization. By all means, go in and check that out. So yeah, the public roadmap for v3 and the future is already up there, guys, for you to all get in and start contributing to the discussion.

01:03:43 - Anthony Campolo

Exciting. Yeah, that's cool. It's great that you're already thinking ahead to that. You got a clear roadmap, and the more you can bring transparency to that kind of stuff, I think the better. And you have a new RFC process too. I think that was something you mentioned a little bit on yesterday's stream, if you want to just talk about that really quick.

01:04:06 - Fuzzy Bear

So the new RFC process is kind of split up into stages where discussion can get streamlined out and be able to generate into something more tangible. The aim here is to try to elicit more conversations and interactions between members of the core team and the community and maintainers to help champion a lot of these great ideas through to stage two, stage three, stage four kind of thing. Because we used to be quite a linear process. For a feature to be added to Astro, it would be proposed. The majority of the features were proposed by the core, and that was understandable. And they made all these transparent, and at the end of each community call, the day after, we try and put them up on YouTube so it's there for everybody to consume if you can't make the call in the Discord community on Tuesday night. So the new process is again trying to elicit... there's no right way of doing it. There's no tried-and-tested way of doing it. So we're just basically trying to find a model that's evolved from the past year, which has been fantastic because...

01:05:30 - Fuzzy Bear

Because the conversations, the activity, the people who pop in on a Tuesday alone is just heartwarming. So yeah, we just want to really channel that in a better way. And that's what the new process is really all about at the heart of it. And it's written up there. So if you go to that repo, you know, Astro/roadmap, you'll be able to see the process written out for you in full detail.

01:05:57 - Anthony Campolo

Awesome.

01:06:00 - Scott Steinlage

Cool.

01:06:00 - Anthony Campolo

Yeah, I think we're probably getting close to the end of our conversation. So if there's any other parting things, Ben, you want to mention, or other places we want to point people before we close out here, we of course want to thank both of you for joining us and answering questions. Thank you everyone in the audience who came up as well. This is a super fun discussion.

01:06:24 - Ben Holmes

Yeah, just content collections. Try them now. There's a post on the Astro Twitter. We just put out a little deep-dive blog post if you want to see what the heck that is and why type-safe Markdown is awesome. You can also follow me. I do record videos talking about web dev. But go try content collections, seriously.

01:06:45 - Fuzzy Bear

Everything Ben said for you. Follow Ben on Twitter for your daily dose of whiteboard [unclear]. The web is amazing. Content collections is fantastic. The new hybrid rendering mode is gonna blow your mind open. There's so much to Astro. There's so many small things to use in Astro that would surprise you. So by all means, guys, go in there and discover as much as you can. Look forward to meeting you all in the community at some point.

01:07:17 - Anthony Campolo

Yeah, I need to update my blog. Actually, my blog is on Astro and I have not yet done the major increment yet, but I'm looking forward to doing so and seeing if anything breaks. I know that I now have the _astro dist folder. So I think that's gonna be the only thing I'll have to do since it's just a static build. But yeah, looking forward to digging in.

01:07:40 - Fuzzy Bear

Just remember to add that to your .gitignore. Sorry.

01:07:44 - Scott Steinlage

You're good. I think there's one more question that we may have missed here from somebody. I think it was a question for you guys, but this is a pretty good one. Is there anything that just missed the 2.0 release that you wish had made it in? That's a good one.

01:08:04 - Ben Holmes

No, we shipped everything feature-complete.

01:08:08 - Anthony Campolo

Three is actually a lie. There will be no three.

01:08:11 - Scott Steinlage

Right.

01:08:12 - Fuzzy Bear

We're done at two.

01:08:13 - Ben Holmes

Guys, we've been talking about it. I'm just going to say it: resumable stores, a way to manage global state. Yeah, not that. Not that kind. Give it a different name then.

01:08:28 - Anthony Campolo

Yes.

01:08:29 - Scott Steinlage

Right.

01:08:29 - Ben Holmes

No, we're going to call it Exit.

01:08:31 - Dax

We're going to call it X Doors.

01:08:32 - Fuzzy Bear

We've got to call it X Doors. Yeah, X Doors, right. And we're going to be bringing an X element as well, for those aficionados.

01:08:41 - Ben Holmes

Yes, people have asked for, like, global state management in context. We have solutions for that today. But it would be cool to have some built-in stuff for that. It was something that we actually played with a little bit but couldn't really get to an RFC level. So a road to that would be awesome. But there's other stuff that's already known as stuff we're thinking about. So check out the RFCs and proposals.

01:09:03 - Anthony Campolo

Yeah, sharing state across components is one of the first things, and people who are pretty deep into these kinds of frameworks, that's usually one of the first things they ask, like, how do you do this? Yep.

01:09:17 - Ben Holmes

Wrote a big old sharing-state guide just for that, but would love to have something built in, so you just find it while you're using Astro yourself by accident.

01:09:28 - Anthony Campolo

Dude, Twitter spaces. It's bound to happen.

01:09:32 - Fuzzy Bear

How many developers do Twitter have and this is the best UI that they could come up with?

01:09:39 - Ben Holmes

They have about five.

01:09:44 - Scott Steinlage

right? Yeah. Yeah. Well, with that being said, like Anthony said earlier, you look down, you're gonna fall. You're gonna have a bad time. So let's not have a bad time.

01:09:58 - Fuzzy Bear

No.

01:09:58 - Scott Steinlage

Yeah.

01:10:00 - Fuzzy Bear

Thank you very much for hosting this, guys. This has been fantastic.

01:10:05 - Ben Holmes

Yeah, it's been great.

01:10:08 - Scott Steinlage

Thank you all so much. Appreciate it. Really, really, really, really appreciate Astro coming in here and having a chat with us. Ben, Fuzzy, you guys are amazing. Thank you. For everybody who came up on the stage, too many to even mention, like, so awesome. Thank you all for coming up and having questions and stating opinions. In fact, let's give a huge round of applause for Ben and the Astro team and Fuzzy. Yeah, let's get some claps, some hundreds in here, some hearts, you know. Yeah...

01:10:40 - Fuzzy Bear

[unclear].

01:10:44 - Scott Steinlage

Yeah, absolutely.

01:10:46 - Dax

Yeah.

01:10:46 - Scott Steinlage

Go check out FSJam as well. Anthony is over there.

01:10:51 - Ben Holmes

Technically, there's...

01:10:52 - Anthony Campolo

There's a bunch of Astro episodes that are about to come out that were recorded when 1.0 came out, and that's my fault. But they're fun conversations anyway, so you'll get to hear more from Fuzzy.

01:11:01 - Scott Steinlage

There you go.

01:11:02 - Anthony Campolo

In the next couple weeks.

01:11:03 - Scott Steinlage

Be sure to check out FSJam. If you're not following them, you're missing out, yo. All right, so follow everybody up here and give them some love. And yeah, I'm so excited for people to be digging into Astro who haven't dug into it yet, and for those who have to really be in there even more and be more involved and in Discord and all that fun stuff. Really looking forward to seeing the future of Astro. All right, thank you all so much. We greatly, greatly, greatly appreciate you. We will be back here next week, Wednesday at 12:00 p.m. Pacific Standard Time, and we have some pretty cool stuff coming up. Don't want to let out the deets yet, but it has something to do with events, and it's going to be fun.

01:11:53 - Ben Holmes

Super secret. Super secret.

01:11:57 - Scott Steinlage

All right, y'all. We love y'all. And we'll see you in the next one.

01:12:19 - Fuzzy Bear

Yeah, we can get that...

01:12:22 - Scott Steinlage

...rocking. All right. Nice. All right, y'all.

01:12:27 - Anthony Campolo

All.

01:12:27 - Fuzzy Bear

Peace them up, guys.

01:12:29 - Scott Steinlage

All right.

On this pageJump to section