Setting up a development environment for Office 365 and SharePoint Online

As we more and more evolve from working exclusively with SharePoint on-premises with our complex local SharePoint farm rigged with several virtual machines eating up our highly spec'd laptop, the new way of working with SharePoint in-cloud offers a more attractive setup for us developers.

My background before starting with SharePoint, as for most others, was as a general programmer used to pretty simple and lightweight development environments. I must say I almost had forgotten what a lightweight and clean development environment feels like. It feel like coming home after a long and tough journey ;-)

Setting up a development environment for doing Office 365 and SharePoint Online development is really easy, I that's the reason I chose to create this post it just to keep a note to myself what the essentials are.

o365-dev-env-1

Where to run it

I recommend to set up a dedicated virtual machine for this setup. I prefer using Hyper-V as it is included in Windows 8, and for many other reasons.

Specification:

Getting the necessary software

Operative system

Software

SDKs

These SDKs are pre-requirements to getting started with development against Office 365. It is important to install them in the listed order to avoid errors.

Title

Description

URL

Office Developer Tools for Visual Studio 2013 - July 2014 update

This can also be installed from Web Platfrom installer.

http://msdn.microsoft.com/en-us/office/aa905340.aspx

Microsoft Online Services Sign-In Assistant for IT Professionals BETA

The Microsoft Online Services Sign-In Assistant provides end user sign-in capabilities to Microsoft Online Services, such as Office 365.

http://www.microsoft.com/en-my/download/details.aspx?id=39267

Azure Active Directory Module for Windows PowerShell

Use Windows PowerShell cmdlets to manage your Windows Azure tenant.

http://msdn.microsoft.com/en-us/library/azure/jj151815.aspx#bkmk_installmodule

SharePoint Online Management Shell

The SharePoint Online Management Shell is a tool that contains a Windows PowerShell Module to manage your SharePoint Online subscription in the Office 365.http://www.microsoft.com/en-us/download/details.aspx?id=35588
Azure SDK for .NET (OPTIONAL)Install this if you plan to develop provider hosted ASP.NET apps in Azure.http://azure.microsoft.com/en-us/downloads/ (VS 2013 install)

Development tools

 Going from on-premises development to cloud, first of all reduces the available tools. Luckily a few of those contributing with their excellent tools have also made them compatible with SharePoint Online. These tools I recommend to increase your productivity working with developing solutions for SharePoint Online. Spend some time to learn what you can gain from using them.

Title

Description

URL

CAML Designer 2013

http://www.camldesigner.com/

Fiddler

http://www.telerik.com/fiddler

SharePoint Client Browser

https://spcb.codeplex.com/

SharePoint Search Query Tool

https://sp2013searchtool.codeplex.com/

Utilities

There as some basic utilities I always find handy to have available on every computer I work on. So this is only a recommendation, and not necessary to get the environment working.

Title

Description

URL

Notepad++

http://notepad-plus-plus.org/

Paint.NET

http://www.getpaint.net/

7zip

http://www.7-zip.org/

Foxit PDF reader

http://www.foxitsoftware.com/Secure_PDF_Reader/

CutePDF printer

http://www.cutepdf.com/products/cutepdf/writer.asp

Setting it up

This is pretty a straight forward top-down installation. Only be careful to click away some of the ad-ware stuff on the utilities to avoid getting crazy toolbars in your not-default browser IE.

One important factor is to install the SDKs in the right order as listed. I had some trouble getting this to work, and it turned out installing SharePoint Online Management shell too early gave some bad consequences.

Troubleshooting

When I tried to install Azure Active Directory Module for Windows PowerShell it got an error:

"In order to install Windows Azure Active Directory Module for PowerShell, you must have Microsoft Online Services Sign-In Assistant version 7.0 or greater installed on this computer.".

For the time being I had version 7.250.4303.0 installed, I this error message made no sense. It turns out there is a newer BETA version (7.250.4551.0) that is required. I have linked to the correct version above, so just make sure you are using it.

Summary

Getting started with developing for SharePoint Online in Office 365 is a much more pleasant journey than the traditional on-premises story. We are now able to be productive using a very lightweight machine with a small set of tool available to do our work.

I wrote this guide primarily for my own use I as tend to forget all those small details between each time I set up a new environment, but I also hope it can help others getting started as quick and hassle-free as possible with developing for SharePoint Online.

NOTE: This topic is always subject to change as new versions roll out all the time.