Going to just blog what’s on my mind/docket. Open source my brain or something.
Since I started contributed to core, I’ve thought about how we need to have UI components in core admin CSS (and used whenever an API outputs something in the admin). In 3.8, I would like to tackle Trac tickets #18909 and #16413. First, though, we need styling, and I think MP6 is a great place to do some rapid iteration.
In MP6, I’ve started a little initiative that serves several purposes – I call them test pages, and the intent is for them to serve as visual unit tests as well as the backbone for a style guide / UI docs. They’re hidden – to turn them on, define the MP6_STYLE_GUIDE constant to true somewhere, probably in your wp-config.php. These will definitely not become a part of core; when merge time comes, they would get split off into a separate plugin.
As of this writing, all you’ll get is a new top level menu item for a style guide, with one child page that serves up jQuery UI components, using their standard test page. It enqueues CSS from Google – namely, Smoothness, so it doesn’t look MP6. Yet. The goal (and this is open to anybody who wants to contribute) is to re-style jQuery UI components into something that looks and feels like WordPress+MP6. There are some technical considerations that probably have to be made – namespacing to avoid conflicts, possible conflicts with styles already in core/changing those places to use new styling, how styles are loaded and how color overloads work. But first: it needs to look and feel good.
Next up is a form test page. I’ll be using a few things as inspiration for the HTML: UIKit, Bootstrap, and perhaps Gumby Framework. I’m open to other suggestions as well. We’ll want to make form styling reusable (of course) and responsive. I’d love it so that no extra classes are needed when creating your extensions – forms “just work”, whether on a settings page or in a meta box. The test page should probably account for these various typical places of use.
There are lots more components we can look at over time – it perhaps shouldn’t be as thorough as a front-end framework like Bootstrap, but if we’re talking about refining WordPress as a platform, it needs to apply to the front-end side of building, too. Let’s just make sure we keep our eye on the iterative prize.