All right. With that out of the way, I can start talking about my actual presentation, right? So Storybook is, on itself, pretty complex. And that's because of what we do. Storybook is like a web app that you bootstrap next to your own web app. And so we have to deal with whatever your web app kind of did because we're looking at the same source code as your web app.
So we have to deal with multiple builders, Webpack and Vite. We have to deal with multiple frameworks like React, Vue, Angular, Svelte, et cetera. And then there's meta frameworks layered on top of those, like Next.js and SvelteKit. We have to deal with multiple package managers, npm, yarn, pnp, and pnpm. Some people really love TypeScript, me included. But then some people feel like, no, I don't want like a translation layer between the writing my code and running my code, which is also valid. And so we support both languages. And we try to support them both equally.
And something just went wrong with the slides. And then on top of that, like, all of those kind of things are outside of our control. But we also make our own lives more difficult by adding more feature flags and making Storybook very configurable. Because we want anyone to be able to use our tool, but that means that loads of people become loads of opinions. And making everyone happy means you must add configurability. We try to modularize our feature set into add-ons. And we want to allow anyone else to create such feature sets as well. So we actually have a community add-on API that anyone can use. And then the elephant in the room, honestly, is backwards compatibility. So Storybooks have been around for about 7 to 8 years. And so our code base has changed a lot. Our mentality, our ideas of what Storybooks should do, has actually changed a lot. But at the same time, we don't want to tell users, like, what you've been doing for the last N years, just throw that away, and do this other thing instead. Or when we have to do something like that, we want to give them clear migration guides, or even auto-migrations.
All right, so testing Storybook, and testing all of that complexity. Let's get the easy stuff out of the way. We have a monorepo with 80 plus packages.
Comments