Set up your development environment

This guide helps you set up tools so you can create Office Add-ins by following our quick starts or tutorials. You'll need to install the tools from the list below. If you already have these installed, you are ready to begin a quick start, such as this Excel React quick start.

  • Node.js
  • npm
  • An Office 365 (the subscription version of Office) account
  • A code editor of your choice

This guide assumes that you know how to use a command line tool.

Install Node.js

Node.js is a JavaScript runtime you will need to develop modern Office Add-ins.

Install Node.js by downloading the latest recommended version from their website. Follow the installation instructions for your operating system.

Install npm

npm is an open source software registry from which to download the packages used in developing Office Add-ins.

To install npm, run the following in the command line:

    npm install npm -g

To check if you already have npm installed and see the installed version, run the following in the command line:

npm -v

You may wish to use a Node version manager to allow you to switch between multiple versions of Node.js and npm, but this is not strictly necessary. For details on how to do this, see npm's instructions.

Get Office 365

If you don't already have an Office 365 account, you can get a free, 90-day renewable Office 365 subscription by joining the Office 365 Developer Program.

Install a code editor

You can use any code editor or IDE that supports client-side development to build your web part, such as:

Next steps

Try creating your own add-in or use Script Lab to try built-in samples.

Create an Office add-in

You can quickly create a basic add-in for Excel, OneNote, Outlook, PowerPoint, Project, or Word by completing a 5-minute quick start. If you've previously completed a quick start and want to create a slightly more complex add-in, you should try the tutorial.

Explore the APIs with Script Lab

Explore the library of built-in samples in Script Lab to get a sense for the capabilities of the Office JavaScript APIs.

See also