Well it’s that time again, a new version of SharePoint is about to be released for general availability, and with that I have some new starter master pages for you to use for custom branding!
https://github.com/rdrisgill/sharepoint-starter-masterpages
If you haven’t used my starter master pages in the past, the TLDR is that they can be used to apply custom UI / branding to SharePoint sites. They make the job easier than if you just start by editing one of the default Microsoft master pages because I have spaced and tabbed them out nicely, included readable comments for what I think each section does, and stripped out any of the extraneous styling and formatting needed to support the default SharePoint layout.
If you HAVE used my starter master pages in the past, a few things have changed, most importantly I’m moving them to GitHub for this release and I’m hoping everyone in the community can help test and make them better by using the GitHub community features. You should know however that I’m a GitHub beginner, so I’ll probably have to get used to all of that.
Lastly, I’m sure some folks will be asking the all-important question – Should we even use custom master pages to brand SharePoint Online or SharePoint on premises? Well, there is a lot of room for discussion on this topic, so I leave that decision up to you… but I’ll give some my quick take. Microsoft has made some large strides to create open source efforts that provide more “365 Friendly” ways of branding SharePoint, primarily around the Patterns & Practices team’s work with “user custom actions” which inject JavaScript and CSS into a site without the use of WSPs, Sandbox Solutions, or customizing master pages. These solutions are terrific for making light to medium changes to the SharePoint UI but they don’t really conform to the usual workflow that a designer would use to make a fully custom branding intranet portal. Namely, most web designers I know are more comfortable designing in Photoshop and then creating custom HTML and CSS or using Bootstrap or Boilerplate; these solutions typically require more control over the shell of the HTML page design from the beginning rather than making heavy use of manipulating the DOM with JavaScript or jQuery.
For more information on these techniques see:
- Branding SharePoint 2013 with CSOM Code
- A Look at the PnP Responsive UI Package for SharePoint On-Premises
- Microsoft’s Patterns & Practices Resources
All that being said, there are some downsides to just creating your own custom master pages (whether you use my Starter Master Pages or not). Primarily you need to be very careful with updates from Microsoft. This is particularly challenging if you intend to brand Office 365’s SharePoint Online, which can get UI updates at any time without warning… and ultimately your customized master pages could break with this new code. On premises SharePoint 2016 is a little safer when it comes to these updates, you have more control over the update process, but just know that early indications are that Microsoft will be making new features available to SharePoint 2016 as time goes on, and you may be in the same boat as Office 365 with the exception of being able to decide whether you want these updates applied to your on-premises SharePoint server.
At the end of the day, I think if you are doing light to medium UI / branding changes to team sites, you might be better off skipping master pages. Alternatively if you are tasked with making a fully custom intranet portal with full branding I think master pages are likely going to be your best bet.
Check out my Starter Master Pages at GitHub:
https://github.com/rdrisgill/sharepoint-starter-masterpages
Also, my SharePoint 2013 and 2010 Starter Master Pages are also still available at CodePlex:
UPDATE: All of my starter master pages can now be found here: https://github.com/rdrisgill