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:

Scope Feature Classic Team Site New Team Site
Site Basic Web Parts
Site Three-state workflow
Web Document Library instance
Web Team Collaboration Lists
Web Site Notebook
Web Document Library instance
Web Mobility Shortcut URL
Web [Wiki Page Home Page](/en/resources/features-sp2016/00BFEA71-D8FE-4FEC-8DAD-01C19A6E4053
Web Getting Started
Web Minimal Download Strategy
Web Groupify Button
Site Site Page Resources
Site Visio Web Access
Site Ratings
Web Default SPGroups SiteMaster
Web Default SPGroups Async
Web MUIWeb
Web Site Pages
Web Group 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

SharePoint Architect, Developer, Technical Trainer, Microsoft MVP (Office Development). Above 15 years of total experience working with SharePoint, Dynamics CRM, Office 365, and Microsoft stack development.

You May Also Like

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

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

SharePoint 2010. Custom forms for ContentType

SharePoint 2010. Custom forms for ContentType

SharePoint list item attachments' size

SharePoint list item attachments' size

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 2013. Geolocation field type

SharePoint 2013. Geolocation field type