What’s Up With SharePoint Add-ins?
You might have heard that the name “apps for SharePoint” is changing to SharePoint add-ins and any references to the app within SharePoint ecosystem will now be termed as Add-in. The change, according to Microsoft, was to better distinguish the extension platform from the applications.
SharePoint Add-in is a development model that lets developers extend SharePoint capabilities. Compared to sandboxed solutions that “can” contain custom server-side code (ability to do this is already deprecated, but sandboxed solutions with only JavaScript code is still supported), add-ins run in the cloud instead of on the SharePoint farm and uses client-side SharePoint object model. This gives developers the ability to write code that interacts with SharePoint using standard web technologies that most of us developers are already working with, HTML, JavaScript, and CSS.
You can run an add-in, shown as a tile on a SharePoint site where they are installed in, also called as “host web.”
The experience is that of an immersive-full page where you’ll be directed to the “add-in web” that has the look and feel of a SharePoint page. Changes on the look and feel on the host web cascades to the add-in web. Further customizations can also be done on the CSS through code.
Components included in an add-in are generally in the “add-in web” can be pages, lists, content types, site columns, workflows and custom actions and are deployed to a different website in a special isolated domain.
Definition of lists, site columns, and content types are done on a user interface integrated with Visual Studio development environment. Advanced edits, such as defining default values and setting data source for lookup lists are done using the XML editor.
One other thing you can include in the add-in are workflows. There is a nice workflow editor that allows developers to define activities and other tasks.
Deployment is done through a dedicated site where .app file is just uploaded like any file uploaded to a library. Once uploaded here, the add-in is made available on all the sites and can be added using the “add an app” option. This method deploys the add-in to isolated sites.
There’s also an “app stapling feature” that makes deployment easy. The add-in is installed in the Site Contents of the add-in catalog and then pushed to your preferred sites using the Manage Deployment page. The resources are shared though within the organization so using this feature still depends though on the organization’s needs.
SharePoint Add-in is a significant addition to the SharePoint custom development domain that can help improve the ecosystem of SharePoint applications.
Add-in Model
SharePoint add-ins have no custom code that runs on the SharePoint Servers. It runs on the cloud without the risk of harming the servers or reducing its performance.
Development Model
SharePoint add-ins are created using standard web tehnologies, HTML, CSS, and JavaScript which makes it easier to build even for non-Microsoft stack developers.
Deployment Model
Add-in catalog is a dedicated site collection which enables a streamlined method for distributing SharePoint add-ins within an organization.