Open samuelsycamore opened 1 year ago
There could actually be more combinations between the CSS framework (e.g. Tailwind) + Base + the "application" framework (e.g. Vite) like this:
base-vite-sass
base-vite-tailwind
base-vite-system
What do you think @samuelsycamore ?
Absolutely @mj12albert ! The list here is just meant as a starting point for us to reach parity with the existing Material UI examples. Definitely open to creating more as we see fit.
@oliviertassinari all of that makes sense. I do think we should provide examples for Base + Tailwind + major frameworks, because there's enough of a demand for "MUI + Tailwind" that it's worth maintaining those. I'll pare down the lists here, and we can keep an eye on the Material UI analytics to see what else to prioritize (if anything).
Problem
The MUI docs currently contain many scaffold examples and template projects for Material UI, but we're lacking in comparable examples for Base UI. Developers shouldn't have to deal with any initial setup steps to start building with each of our libraries using any framework.
Solution
This is an umbrella issue to keep track of the progress in expanding our collection of Base UI examples.
As a first step, I've created #36112 to establish naming conventions in the
examples
folder to keep things organized.From there, I'd like to reach parity with the Material UI examples, so we should plug Base into Create React App, Next.js, Vite, etc., both in JS and TS.
Scope
The scope of this issue is limited to bare-bones scaffold projects. I also want to build more templates and fully functional starter apps, but that will be for a separate issue.
I think it makes sense to add JS and TS examples together in one PR for each framework.
Tasks
Base UI
base-ui-nextjs-tailwind
- #40236base-ui-nextjs-tailwind-ts
- #37656base-ui-vite-tailwind
base-ui-vite-tailwind-ts
- #37595base-ui-vite-system
base-ui-vite-system-ts
base-ui-cra
- #36825base-ui-cra-ts
- #36825Naming conventions
library-framework(-ts)
Library prefixes:
base-ui
joy-ui
material-ui
TypeScript examples get a
-ts
suffix.✅
base-ui-nextjs-ts
❌base-ui-nextjs-js
// omit the "-js" flag since this is the default✅
base-ui-remix
❌mui-base-remix
// needs to start with lib prefix "base-ui"