惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
S
Schneier on Security
The Hacker News
The Hacker News
P
Proofpoint News Feed
Spread Privacy
Spread Privacy
L
LINUX DO - 热门话题
L
Lohrmann on Cybersecurity
I
Intezer
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Schneier on Security
Schneier on Security
Security Latest
Security Latest
AWS News Blog
AWS News Blog
B
Blog RSS Feed
Microsoft Security Blog
Microsoft Security Blog
有赞技术团队
有赞技术团队
博客园 - 叶小钗
The Last Watchdog
The Last Watchdog
O
OpenAI News
月光博客
月光博客
Hacker News: Ask HN
Hacker News: Ask HN
阮一峰的网络日志
阮一峰的网络日志
S
Security @ Cisco Blogs
Google Online Security Blog
Google Online Security Blog
云风的 BLOG
云风的 BLOG
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Latest news
Latest news
P
Palo Alto Networks Blog
Last Week in AI
Last Week in AI
M
MIT News - Artificial intelligence
Google DeepMind News
Google DeepMind News
P
Proofpoint News Feed
C
CERT Recently Published Vulnerability Notes
Apple Machine Learning Research
Apple Machine Learning Research
U
Unit 42
PCI Perspectives
PCI Perspectives
博客园 - 聂微东
SecWiki News
SecWiki News
宝玉的分享
宝玉的分享
Forbes - Security
Forbes - Security
H
Heimdal Security Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Hugging Face - Blog
Hugging Face - Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
Troy Hunt's Blog
博客园 - 三生石上(FineUI控件)
Application and Cybersecurity Blog
Application and Cybersecurity Blog
罗磊的独立博客
WordPress大学
WordPress大学
D
Darknet – Hacking Tools, Hacker News & Cyber Security

StackBlitz Blog

Cloudflare is now backing pkg.pr.new’s data infrastructure! Bolt 100K Open Source Fund ViteConf 2024 was a blast Unbundling the JavaScript ecosystem StackBlitz is joining the Open Source Pledge Announcing TutorialKit: Interactive tutorials in the browser Get ready for ViteConf 2024 Announcing pkg.pr.new StackBlitz welcomes Ari Perkkiö, core team member of Vitest Catch us at Figma Config WebContainers and the future of web dev (interview with Jòan Varvenne) Open Source at StackBlitz Avoiding CORS issues with this one simple trick How to document design system components What is Vite (and why is it so popular)? Improving the developer experience of enterprise design systems Flow state: Why fragmented thinking is worse than any interruption What is Storybook? An Overview for Developers The Self-Rendering Eval Shirt Putting the Dev in Figma’s Dev Mode Announcing StackBlitz Self-hosted Building Together in Illinois 5 lessons design systems teams can learn from open-source maintainers Announcing Native Language Support in WebContainers Introducing StackBlitz Teams ViteConf is back! Bringing Sharp to WebAssembly and WebContainers npm, yarn and pnpm are now supported natively in WebContainers The Atomic Waltz: Unraveling WebAssembly Issues in V8 and SpiderMonkey WebContainers now run on Safari, iOS, and iPadOS Now I am become the Destroyer of Threads WebContainer API is here. StackBlitz September 2022 Update StackBlitz August 2022 Update StackBlitz July 2022 Update Introducing: Collections and Social Previews! Down the caching-hole: adventures in Announcing ViteConf StackBlitz June 2022 Update The Fox and the Bolt: Bringing WebContainers to Firefox WebContainers are now supported in Firefox on desktop and Android StackBlitz May 2022 Update StackBlitz April 2022 Update Cloudflare and StackBlitz partner to bring Cloudflare Workers to your browser Powering over 2M developers a month, StackBlitz has raised $7.9M StackBlitz March 2022 Update Announcement: WebContainers are out of beta in Chromium StackBlitz has joined the Bytecode Alliance StackBlitz February 2022 Update Bringing WebContainers to all Browsers: a call to action for COEP Credentialless Cross-Browser support with Cross-Origin isolation StackBlitz welcomes Patak, core maintainer of Vite Chasing Memory Bugs through V8 and WebAssembly Remix v1 has landed, and it runs on WebContainers SvelteKit is now fully supported in WebContainers We Shopify partners with StackBlitz to bring Hydrogen development in-browser StackBlitz September 2021 Update Introducing Vite.new Templates! Announcing WebContainers Astro support! 🛰 Introducing: SQLite3 support in WebContainers! 🧪 StackBlitz July 2021 Update StackBlitz June 2021 Update Introducing WebContainers: Run Node.js natively in your browser Interactive Docs: The new norm for Remote Work
Starters Upgrade: WebContainers and Vite
Tomek Sułkowski · 2024-02-15 · via StackBlitz Blog

It finally happened: Vite and WebContainers have pushed us to make significant changes to our Starters list. Let me explain.

How the StackBlitz Starters started

When StackBlitz first launched in 2017, the primary focus of our experience was what we now call “Starters.” Since then, we have been focusing on providing the fastest, most frictionless jump-into-code experience possible. Initially, it was a pretty modest list: Angular, React, and Ionic. However, even providing these three was already an impressive technological achievement.

The full list of StackBlitz Starters in 2017

The full list of StackBlitz Starters in 2017

These frameworks, although dedicated to the front end, require various tools during development that, traditionally, you could only run outside of a browser.

But if that’s the case, how did StackBlitz Starters allow you to code in the browser?

That was only possible thanks to a custom runtime we built specifically for this purpose. Imagine simplified versions of webpack and npm that could run inside a browser tab, but were not very configurable or flexible. Very swift, but custom-welded. We called it “EngineBlock.” The runtime, while fast and lightweight due to its narrow focus and specialized nature, could only support a limited range of technologies. As the list of the starters gradually grew (and the underlying frameworks evolved), it required constant maintenance and more custom adjustments. The additional drawback was that it didn’t exactly mirror the local environment. If you wanted to download and run the project locally, that might not work.

All our Starters in 2020

All our Starters in 2020

WebContainers: a game-changer

In 2021, we introduced WebContainers, which was a breakthrough. In short, WebContainers are a micro-operating system, with their own file system and networking layer, all in the browser. With these foundations, we were now able to run various Node.js toolchains with minimal or no modifications!

This opened the floodgates and suddenly we were able to support dozens of new libraries, frameworks, and even new stacks!

StackBlitz Starters in 2023

StackBlitz Starters in 2023

Enter Vite

Thanks to the WebContainers environment, one of the tools that could now run on StackBlitz was Vite. In fact, it was running so well, that we’ve built a dedicated experience for the Vite-based projects: we’ve created a separate starters section just for the official Vite templates and added vite.new to quickly launch new projects. By the end of 2021, we had made the decision to deepen our commitment to Vite, becoming the official supporter of the project (“We’ve seen enough: StackBlitz is now the largest backer of Vite”).

Since then, Vite has only grown: from 0.5M weekly downloads when we began our shared journey (read more: Patak’s post), to a whopping 10M downloads last week.

Weekly Vite Downloads

Vite is now a de facto standard for starting a whole range of projects in the JavaScript web ecosystem.

In parallel, StackBlitz is fully embracing WebContainers. We’ve proven they work fantastically well and we’re building our new editor on that foundation.

So, what’s changing?

We want the official Starters to reflect the state of StackBlitz and the JavaScript ecosystem. Specifically:

  • We’re replacing the custom EngineBlock starters for the JavaScript and TypeScript flavors of the “Vanilla”, “React”, “Vue” and “Qwik” projects with their Vite templates counterparts that run in WebContainers. We have also removed the “Vite” tab from our starters list since Vite is now a part of most of these most popular stacks.
  • The Angular starter now also runs in WebContainers.
  • The “Static” starter (a plain, no transpilation, no-bundler setup) runs in WebContainers, using a minimalistic dev server, servor.

StackBlitz Frontend Starters in 2024

StackBlitz Starters in 2024 are WebContainers-first 🎉

What do these changes mean for you?

All these projects will closely mirror what you would traditionally create in a local environment. Being based on a Node.js toolchain, they also work the same way they would on local. Additionally, you will now have access to the terminal no matter if it’s a front-end or a back-end project. This allows you to run various posix commands, npx scripts or, for instance, execute ng generate [...] in Angular projects. You can read more about the differences in the UI and capabilities of EngineBlock and WebContainers in our documentation.

Note that these changes only impact new projects. We are not making any changes to the projects you may have already created. Any existing project will continue to work exactly the same way as it did previously.

What’s next?

The JavaScript community is exceptionally vibrant and diverse. We’ve been thrilled to continue growing with it, and we are so proud that our starters reflect that: with over 70 of these entry points to various frameworks, libraries, and other tools, you can click the one you like and just code, without having to care about any setup.

We love that this also helps open-source creators by providing reproduction templates and numerous “Getting Started” links in their docs that make learning about their projects so much more engaging.

The changes we made this week are just the first step. Soon, we are releasing our new editor with support for extensions and various other DX improvements. In parallel, we are also working with our open-source and enterprise partners on a whole new level of starters’ capabilities, to make building for the web even more productive and fun.

This year is going to be so exciting!

Founding Engineer & DevRel at StackBlitz. Let's talk about docs, live examples, teaching, and experimenting in browsers!