SharePoint New Team Site. Inside Out

New Team Site which has been released for SharePoint Online became available for on-premise SharePoint 2019 Server.

The availability of this site template for the on-premise SharePoint instance makes it possible to figure out how it works and what it actually is.

I've looked through assemblies, files such as configurations, XML-definitions, and so on. And after that, I can show you what there are under the hood.

Team Site

New Team Site is a new configuration of an existing SharePoint site template - STS. Identity of the new site template - STS#3. Let's go through the list of existing and new STS templates:

STS#0 - Team site (classic experience).
STS#1 - Blank site. Hidden since SharePoint 2016 release.
STS#2 - Document Workspace. Legacy site template released with MOSS 2007 to work together on a document. Hidden and obsoleted site template. Never use it.
STS#3 - New Team site about which we are talking in this post.

The New Team Site template can be used only for creating a root site, at least using UI. You can always use PowerShell command like the following to create subsite based on the new team site template (STS#3):

New-SPWeb -Url https://sharepoint/subsite -Template STS#3 -Name "New Team Site"

New VS Classic

What's the difference between the Team site (classic experience) and the new Team Site?

The following table contains Site and Web features which used by Classic or new Team Site:

ScopeFeatureClassic Team SiteNew Team Site
SiteBasic Web Parts
SiteThree-state workflow
WebDocument Library instance
WebTeam Collaboration Lists
WebSite Notebook
WebDocument Library instance
WebMobility Shortcut URL
Web[Wiki Page Home Page](/en/resources/features-sp2016/00BFEA71-D8FE-4FEC-8DAD-01C19A6E4053
WebGetting Started
WebMinimal Download Strategy
WebGroupify Button
SiteSite Page Resources
SiteVisio Web Access
SiteRatings
WebDefault SPGroups SiteMaster
WebDefault SPGroups Async
WebMUIWeb
WebSite Pages
WebGroup Homepage

As you see the difference is great. Even the classic team site template has been modified and is not the same as the classic team site in SharePoint 2016.

Minimal download strategy (MDS) is not in use anymore.

We'll miss you "Working on it..." message.

Site Pages

New team site has a new modern Pages for which there is a special content type (ContenTypeID - 0x0101009D1CB255DA76424F860D91F20E6C4118):

Authoring Canvas Content and Page Layouts Content properties are used to store content of the page. Field values for this page:

is the following:

<div>
    <div data-sp-canvascontrol="" data-sp-canvasdataversion="1.0" data-sp-controldata="">
        <div data-sp-rte="">
            <p>SharePoint 2019 Preview</p>
        </div>
    </div>
    <div data-sp-canvascontrol="" data-sp-canvasdataversion="1.0" data-sp-controldata="">
        <div data-sp-webpart="" data-sp-webpartdataversion="1.2" data-sp-webpartdata="">
            <div data-sp-componentid="">{GUID}</div>
            <div data-sp-htmlproperties="">
                <div data-sp-prop-name="title" data-sp-searchableplaintext="true"></div>
                <div data-sp-prop-name="persons[0].name" data-sp-searchableplaintext="true">Vitaly Zhukov</div>
                <div data-sp-prop-name="persons[0].email" data-sp-searchableplaintext="true"></div>
                <img data-sp-prop-name="persons[0].imageUrl" src="/_layouts/15/userphoto.aspx?size=L&amp;amp;accountname=dev%5cvitaly"
                />
            </div>
        </div>
    </div>
    <div data-sp-canvascontrol="" data-sp-canvasdataversion="1.0" data-sp-controldata=""></div>
</div>

data-sp-controldata property contains JSON-data for the control like the following:

{
    "id": "cbe7b0a9-3504-44dd-a3a3-0e5cacd07788",
    "instanceId": "cbe7b0a9-3504-44dd-a3a3-0e5cacd07788",
    "title": "Title Region",
    "description": "Title Region Description",
    "serverProcessedContent": {
        "htmlStrings": {},
        "searchablePlainTexts": {},
        "imageSources": {},
        "links": {}
    },
    "dataVersion": "1.4",
    "properties": {
        "title": "page",
        "textAlignCenter": false,
        "imageSourceType": 4,
        "layoutType": "FullWidthImage",
        "textAlignment": "Left",
        "showKicker": false,
        "showPublishDate": false,
        "kicker": ""
    }
}

data-sp-webpartdata attribute stores webpart properties in JSON format:

{
    "id": "7f718435-ee4d-431c-bdbf-9c4ff326f46e",
    "instanceId": "075b6015-60a7-4a7b-bfbc-61dedcec4607",
    "title": "People",
    "description": "Display selected people and their profiles",
    "serverProcessedContent": {
        "htmlStrings": {},
        "searchablePlainTexts": {
            "title": "",
            "persons[0].name": "Vitaly Zhukov",
            "persons[0].email": ""
        },
        "imageSources": {
            "persons[0].imageUrl": "/_layouts/15/userphoto.aspx?size=L&amp;accountname=dev\\vitaly"
        },
        "links": {}
    },
    "dataVersion": "1.2",
    "properties": {
        "layout": 2,
        "persons": [
            {
                "id": "i:0#.w|dev\\vitaly",
                "upn": "DEV\\vitaly",
                "role": "",
                "department": "",
                "phone": "",
                "sip": ""
            }
        ]
    }
}

Document Library instance

Document Library Instance feature just for adding Shared Documents library on the Quick Launch Bar.

Default SPGroups

Default SPGroups* features create user groups for the site.

Group Homepage

Group Homepage feature creates a home page based on defined in the feature home.aspx file. Content of this file:

<%@ Assembly Name="Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"%>
<strong style="color:#0078d4;"><%@ Page Language="C#" Inherits="Microsoft.SharePoint.WebControls.ClientSidePage" %>**
<%@ Import Namespace="Microsoft.SharePoint" %>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Import Namespace="Microsoft.SharePoint" %>
<%@ Assembly Name="Microsoft.Web.CommandUI, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<span style="color:#107c10;"><!--no-store-props--></span>

As you can see it's empty file inherited from Microsoft.SharePoint.WebControls.ClientSidePage class:

That's a new class for SharePoint. And it's absolutely empty:

public class ClientSidePage : ClientSidePageBase
{
}

Summary

New Team Site for SharePoint is a part of new experience. There is no any old-school approach:

Wiki Page. SharePoint is not the best solution to create wiki solutions. Just create pages and links between them.
Dedicated UI for mobile devices. Modern web applications use responsive design. A separate mobile view is simply not necessary.
Minimal Download Strategy. All content rendered on the client-side. So, there is no place for MDS in the new experiences.
Getting Started. Old quick start guide which was used by nobody. Needless feature.
Migration. New pages can contain only new web parts based on SharePoint Framework. Therefore there is no way to migrate existing pages to the new ones unless someone has released a special tool for that.

As for me, the new Team Site template is a very good step forward. No old legacy feature just for backward compatibility.

Vitaly Zhukov

Vitaly Zhukov

Tech Lead, Architect, Developer, Technical Trainer, Microsoft MVP. Over 20 years of experience in system integration and software development. I specialize in designing and implementing scalable, high-performance software solutions across various industries.

You May Also Like

Collect SharePoint telemetry with Azure Application Insights. Part I. Server-Side

Collect SharePoint telemetry with Azure Application Insights. Part I. Server-Side

SharePoint 2019 Preview

SharePoint 2019 Preview

SharePoint Ribbon. Creating multi level menu

SharePoint Ribbon. Creating multi level menu

SharePoint 2013. Geolocation field type

SharePoint 2013. Geolocation field type

Mask "Created By" and "Modified By" user names from forms and views

Mask "Created By" and "Modified By" user names from forms and views

SharePoint list item attachments' size

SharePoint list item attachments' size

SharePoint 2010. Custom forms for ContentType

SharePoint 2010. Custom forms for ContentType

SharePoint 2007. The max/min value of filed in SharePoint list

SharePoint 2007. The max/min value of filed in SharePoint list