Getting Started


Welcome to the Arches Installation Guide. This document is intended to help you quickly get Arches running on your server.

What do I need to know to use this guide?

Arches is designed to let you build semantically rich, geospatial applications. If you are a software developer, this document will help you understand how to use Arches to create your own custom applications. We expect that you are comfortable with python and javascript.

If you’re not a software developer, you’ll find useful information in this document such as how to install Arches and how to understand the graph model Arches uses to manage data.

Please note that you will need to install an Arches application to do any real work with Arches. You can visit to get a list of open source Arches applications.

It’s important to recognize that Arches is designed to manage large, enterprise-scale datasets. The software is sophisticated and is designed to support extensive customization. This means that there are many ways to deploy Arches.

We’ve written this guide to streamline the installation of Arches Server in the most straight-forward manner possible. However, you can access the Arches source code at if you wish to extend or contribute to the Arches project.

System Requirements

To begin development on a basic installation of Arches, you will need the following:

Disk Space

  • 1.5gb for all dependencies (Postgres/PostGIS, Python, GEOS, etc.)
  • 300mb for all Arches code with a basic app installed (Arches-HIP, for example)

Ultimately, the amount of disk space you need will depend on the number of resources in your database.

Memory (RAM)

  • 1gb in development, 4-16gb in production (primarily to support ElasticSearch)

Loading a .arches file uses RAM, and you may need to increase your RAM to successfully complete that process if you have a large number of resources.

Please note that Arches has been developed for modern browsers. It supports:

  • Firefox
  • Chrome
  • Safari
  • Opera
  • Internet Explorer 10 or higher.


  • PostgreSQL relational database (version 9.3)
  • PostGIS (version 2.x) spatial module for PostgreSQL
  • Python (version 2.7.6 - there seem to be issues with later versions of python)
  • GEOS

These instructions will provide some guidance on installing the required dependencies and getting Arches up and running quickly.

Installing Arches

For the installation process you will need pip installed on your system. If you don’t already have it, you can find instructions to install it here:

If you have installed the dependencies, you’re ready to install Arches.

#1. Create the Arches Project folder:

Create a folder called ‘Projects’ (or some other meaningful name) on your system.

#2. Install virtualenv:

Open a command prompt and type:

$ pip install virtualenv==1.11.4

virtualenv creates a directory with it’s own installation of Python and Python executables.

#3. Create the ENV folder:

Navigate to your Projects directory (or wherever you named the root Arches folder) and create your virtual environment with the following command:

$ virtualenv ENV

#4. Install Arches:

Activate your virtual environment with the following command:

On Linux (and other POSIX systems):

$ source ENV/bin/activate

On Windows:

\path to 'Projects'\ENV\Scripts\activate

You should see the name of your virtual environment in parentheses proceeding your command prompt like so (ENV):


Install Arches (your virtual environment must be activated):

(ENV)$ pip install arches==3.1.2

That’s it, you’re done. You should now have a folder structure that looks like this:


Arches Applications

Generally arches applications are installed in a folder directly under the Arches root folder. You can install as many Arches applications as you like, and they’ll all use the same Arches framework and virtual environment. A typical Arches application installation will therefore look something like this:

    /ENV (virtual environment where the Arches frameowrk is installed)
If you want to install an existing Arches application, such as the Heritage Inventory Package (HIP), you should stop here and go to: