Global/Master artboard templates (pin objects across all artboards)
Ability to have a single object (or group) break out of its artboard and cross multiple artboards within a single prototype. The simplest use case is the creation of a global navigation bar that spans across multiple screens. This object's interactive elements would also work across multiple screens as well, and any edits to this object would update across the rest of the screens.
Easy interaction management and editing. Also provides consistency with consistent elements within an experience.
Paul Mackinnon commented
Symbols in Illustrator are like master items. If you repeated a symbol on many pages, and later updated that symbol, the change would propagate everywhere.
Page Masters in InDesign - if you change the master page contents, all pages based on that master change accordingly. Theres dynamic data in the page numbers too !
I like the Master pages idea since you could have a number of Master Pages which represent similar pages in an App.
You are then adding extra content to the actual pages. If the actual page needs to make a change to the master content, you ned to right click -> break link to Master. It is now unique.
If you "unique" a page, maybe the new edits will be required to propagate to more pages down this experience line. Perhaps You can right-click and "Make new Master". So lets say the pasteboard is filled with pages, and some are "Masters". You need to indicate with a small icon which are Masters. You may or may not use the Master as an instance as may suit your workflow. Alternatively like in InDesign, the Master Pages could have a special area to access, and edit. However I prefer to edit in place. This is behavour in Trimble Sketchup with "Components" - change to one affects all. However, that is no good, as the initial Master is like up a hierarchy, and its clones are children that should not change the Master in the use case. So the UI/UX needs to be considered. I would go for my suggestion of Masters indicated as such, and children pages able to show their inheritance tree.
Now considering the same concept applied to "Symbols" which would operate similarly but as objects on a page - this is exactly possible in AxureRP and known as "dynamic panels".
When I learned AxureRP recently I realised that for a dynamic experience, the best way is to make every page a dynamic panel. And so that covers both cases - dynamic pages, and dynamic widgets.
Manish Shah commented
This is my suggestion of creating Master Objects.
Zach Bruce commented
As a UX Designer, I need to demonstrate several states of a webpage redesign in it's modular/design system nature. I need to easily design an element like a navigation bar that repeats across several different pages. Sometimes this element can also have varying states (like Authenticated vs. Unauthenticated), so the ability to change the "view" of the repeating element is also helpful.
A great example of this is how Photoshop can achieve this through Linked Smart Objects that contain different Layer Comps.
I am a designer and I want to be able to create one prototype link on one button and if I duplicate that button within the design mode it should take the prototype link with it where ever it goes. That would mean I wouldn't have to keep going back in to prototype mode and linking every instance of the same button again and again... (Example being a 'menu' button)
This I would hope is a quick fix which I would hope is a fairly easy to implement and could path the way to a more comprehensive and elegant solution.
Basically; if you duplicate - in design mode - a button that already has a prototype link don't just duplicate the object in design mode, duplicate the prototype link. This would be SO AMAZING!!!! I would LOVE that SO much. A small thing but would have a massive benefit to all users.
Giacomo Ardesi commented
Crucial!!! Every time a client asks for a rework on a repeated element (such as headers or footers for example) on a dozens pages layout...it's a freaking pain in the arse!
master pages in muse or indesign.
Giacomo Ardesi commented
I think of master pages in Muse...
joshue ott commented
This feature can be easily accomplished if we were able to nest prototypes within each other:
1. Create my master prototype (including the main NAV menu).
2. create smaller (inner) prototype for content that is controlled by the nav menu.
3. Import the "inner" prototype into the master prototype,
4. on the nav buttons of the master prototype, NEXT sends commands to the inner prototype to change its content.
David Anderson commented
...but on thinking a bit more, I wonder if, even better than creating "master artboards," we could define a "Block," which could then be instanced on multiple artboards in multiple locations. Any subsequent changes to a block will update all instances of that block in a project. This way it doesn't necessarily need to stay in the same location on every artboard...or you could have multiple instances of the same block on a single artboard, etc.
David Anderson commented
This would be a great feature—for me, it would be ideal if I could define a number of master artboards, which i could then apply to any given artboard, in the same way that InDesign can apply a master to different pages. Of course, this would really reach maximum utility if we could also link to external PSD/AI/etc files, which could be refreshed. Then add layers to manage the organization of all of these elements, and I'll be happy.
Joelle Bataille commented
Global elements are a must have if XD is to keep up with other design/prototyping tools. As a XD newbie I'm already questioning changing tools as it just creates too much work for me and too much room for error.
Ben Azzam commented
I imagine this being very similar to a master pages in indesign with the added ability to save common interactions as well. I agree with some of the other comments, in the fact this this feature would do a lot to speed up workflow.
Vincent Koopmans commented
As a Designer I would like to be able to set and forget behaviour and attributes for design elements. For instance sticky header/footers etc. This could be achieved by creating page-templates that have these elements.
This feature needs to be a high priority. I want to use XD, but without single referenced, master items, if I need to make changes in iterations, that is a huge time effort across many, multiple artboards. Please get this implemented soon!
Oleg Shilin commented
At first mechanic like smart object in PS would be nice (another example is master object in Axure RP). It's painful to change headers in 12+ screens.
Justin Wilden commented
1. Global pinned header.
2. Global pinned element, e.g. a logo.
3. Non-global pinned element.
4. Pinned panel e.g. a menu UI; top, right, left or base.
5. Pinned panel that slides from off-canvas; top, right, left or base.
6. If scroll is a function: Trigger a pinned element on scroll to dynamically change; e.g. menu changes from a large header to small header with new or removed content.
Have a tap bar (Navigation) that does not have any transitions on it when you are in prototype mode.
Therefore it is constantly there and does not slide in and out with Art board transitions.
Matt Power commented
Additionally I need the ability to have every page display a common legend bar with a back button (back to parent screen) as well as a button to reveal / call up the top level navigation.
Matt Power commented
The usage I need for this is a persistent top level navigation that can be accessed from anywhere within the app.
Stateful symbols would be ideal. Define a symbol in the project, if the symbol has multiple states (such as a tabbed navigation element) then you could also define states (like Layer Comps in PS) and when placing a symbol on an artboard, you should choose the state of the symbol on that screen.