SharePoint App and I “MEAN” It

This week at SharePoint Fest Chicago I will be unveiling a new and much awaited for session, SharePoint Apps and I “MEAN” It. I choose to do this session because there has been quite a bit of talk about how the provider hosted SharePoint App model may work with any backend technology, but I only see people building C# apps on Azure. I wanted to see would could be done with fully open source technology, on a JavaScript based full stack. This session is targeted towards developers who will be looking to build SharePoint 2013 Apps.

In the SharePoint 2013 app model you are able to combine your existing business processes directly into intranet portals, SharePoint Online, SharePoint on-prem, etc. using a SharePoint App. A popular framework (and the one I advocate in this session) to use to build these feature rich web apps using the MEAN stack, a combination of Mongo DB, Express, AngularJS and Node.js. Once you understand the power of the components in the MEAN stack you are ready to learn how to configure the stack and combine it with SharePoint’s CSOM and REST API’s to build an app that uses all your enterprise data.

First, a quick overview of why you should be using the MEAN stack. The stack consists of MongoDB, Express, AngularJS and NodeJS and some smaller “glue” components. This combination is an end to end JavaScript/JSON based application framework. All elements of the stack are open source, making it easily accessible to anyone. The stack is very scalable with quick processing. NodeJS in particular is very good at dispatching requests and heavy I/O. Not being based on .NET, C# or other like programming languages is another benefit. Finally you may already be familiar or using components in the MEAN stack for other business apps such as NodeJS or AngularJS. With such a large community that uses the MEAN Stack and its components it is easy to find support for any questions or concerns you may have.

If the SharePoint App model can work with any technology, I wanted to prove it.

Moving forward the next step is to install the MEAN stack. The stack can be installed on almost any combination of server architecture, including legacy hardware. You can install all the main components separately or use a prebuilt NodeJS module. I prefer to use MeanJS ( I find this prebuilt module to be the most lean while providing great documentation, a simple boilerplate app that includes Bootstrap.

After installing the MEAN stack you need to combine it with SharePoint in order to build the apps. In this session, I will review this “combining” step in my primary demo as it is the “fun” part. But it does work. I plan over the next few months to further document my solution including releasing overview videos via my blog, GitHub and YouTube. Stay tuned.


  1. Your github refrence for the project : is incorrect. You wrote it as

  2. Great slides! Really hope you can share your demo on Github. Thanks Eric!

Speak Your Mind