As you may or may not know Blocks and layouts is a design problem that I have been working on for the better part of three years since I first started working at Acquia. Back then Jeff Noyes, Dries and myself were just focused on introducing drag-drop blocks to Drupal Gardens and didn't have a view to the wider problem of layouts because really at that point seven was not even out and it just seemed too big a problem to solve.
None of the many iterations on those initial designs never made it into development but I continued refining the ideas and pushing them further and further into the realm of layouts. Of course over that same time period of time others in the community were working on this same problem with panels, display suite context etc. and this groundswell led Dries to start this initiative. Earlier this year after Kris became B+L initiative maintainer I shared some of the more unified blocks and layouts UIs that I had been working on with him. He had some great feedback and ideas but at that point he saw a mountain of plumbing work (basically re-architecting parts of core with concepts from the contrib modules above) that needed to get done before he could even think about UI.
Then came Spark. The primary goal of Spark has always been the content authoring experience we have also tried to push some significant improvements to the site builder experience, notably layouts. Our work so far has produced or improved on a few foundational elements that we can build on like dynamic regions, global breakpoints and grids and our responsive layout builder.
Meanwhile others in this group like chx, jenlampton, attiks and johnalbin have been working on really important stuff like re-architecting the theme layer, integrating twig, trying to solve the responsive images problem, using CSS preprocessors or even possibly pulling in a frontend framework like Twitter bootstrap or foundation.
My goal has been to try to keep an eye on all of these developments and think about how we can bring them together to produce a unified, cohesive site builder workspace. The designs I am showing here are an incomplete version of that but they are beginning to come together into something that can achieve Dries’ goal of end-to-end site building without the necessity* of writing code.
-A single UI that brings together layout, block placement and styling
-Integration with work that has already been done on responsive design
-Integration with responsive layouts (layout)
-A speculative “style” tab showing how contrib might create plugins to this UI that allow users to scope to the building blocks they built their site from and style them.
-The UI that lists all of the users layouts and lets them sort, filter, perform operations etc.
-The field added to Content types UI that enables the user to select a default layout or create a new one (links to this UI).
-Revisions to the Add/edit content form to allows user to override the default layout, choose a different one, or create a new one (links to this UI).
-Revised dynamic regions list UI with a field that allows users to specify default blocks for each region wherever it appears (not to have this would be a regression)
-And most importantly (and also hardest) a page manager UI that allows users to create landing pages that do not get their URL from a node but may contain any number of nodes plus conditions, arguments, contexts etc. etc.
All of the above are in progress and I’ll be sharing them very soon.
Kris, Bojahn, Gabor, Angie and myself have reviewed this and they all had some great comments which I will be incorporating into the designs. Meantime I am looking for your insights on how we can make this better.
The prototype is here: http://invis.io/7M73WEBZ
Keep in mind it's all static images with image maps. There's no code. Hold the shift key to see the hot zones.
*You’ll always have the option