Skip to content

DURAARK/duraark-system

Repository files navigation

Join the chat at https://gitter.im/DURAARK/duraark-system

DURAARK System

DURAARK is a "semantic building information modeling (BIM) archival and retrieval system". It allows stakeholders in the architecture, engineering and construction (AEC) domain and allows them to carry out the following (meta) use cases:

  • Deposit 3D architectural objects
  • Search and retrieve archived objects
  • Maintain semantic digital archive
  • Detect differences between planning state and as-built state
  • Monitor the evolution of a structure over time
  • Identify similar objects within a point cloud scan
  • Plan, document and verify retrofitting/energy
  • Exploit contextual information for urban planning
  • Enrich BIM/IFC model with metadata from a repository

As architectural data file formats we support building information modeling (BIM) files in the IFC-SPF format and point cloud scans in the E57 format. More information can be found at the http://www.duraark.eu.

Demo

A public demo of the DURAARK WorkbenchUI is available here. It uses the API of the DURAARK Service Platform to power the GUI. The version running there is v0.7.0.

The bleeding edge version of the whole system is also available on our development server. It is a development system. You've been warned ...

That said, if the server is running you will have the newest development version available there, ready to be explored for currently developed features. It is likely to be buggy, though. The development is targeting v0.8.0 at the moment. See our release plan for more information on future features.

Installation

DURAARK is a set of (micro-)services (DURAARK Service Platform) which expose a Web-API and a graphical web application as user interface (DURAARK WorkbenchUI).

Windows

  1. Install Docker Toolbox
  2. Download and run the duraark-installer

Linux

This installation instructions are assuming a Ubuntu 14.04 LTS distribution, but the installation is supported on many other Linux distributions, too.

Prerequisite

  1. Install Docker
  2. Install Docker Compose
  3. Install Git

Installation

The DURAARK System uses about 20GB of space. If you are using a virtual machine to install the system we recommend to use at least a 20GB disk for the installation to not run out of space. To deploy execute the following steps (assuming that Docker and Docker Compose are installed and working):

> git clone https://github.com/DURAARK/duraark-system.git
> cd duraark-system
> docker-compose up -d

This will deploy the system in the current stable version and after some setup time the DURAARK WorkbenchUI web application is available at http://HOST-IP/ (http://localhost if you did the setup on your local host) and can be accessed in the browser.

The system expects a fixed folder structure to exist already on the host. To create the structure use

sudo mkdir -p /duraark-storage/sessions/

This will be configurable and automated in a next release.

Development Environment

This description is targeted for Ubuntu 14.04 LTS.

The development environment consists of the following sub-modules:

To setup the environment follow these steps:

> git clone --recursive https://github.com/DURAARK/duraark-system.git
> cd duraark-system
> (cd duraark-sessions && npm install)
> (cd duraark-sda && npm install)
> (cd duraark-digitalpreservation && npm install)
> (cd duraark-metadata/src && npm install)
> (cd duraark-geometricenrichment/src && npm install)
> (cd ./workbench-ui && bower install && npm install)
> docker-compose -f devenv-compose.yml build
> docker-compose -f devenv-compose.yml up -d

This will checkout all sub-repositories and build the dockerized development environment (this step takes a while, you may want to grab a coffee or tea). After building the docker containers are started and you can access the WorkbenchUI at http://localhost. Changing the source code in a sub-module will live reload the container (except for 'api-gatekeeper', where you have to restart the container manually after an nginx config change).

Platform Support

The system is running on Docker-enabled platforms (Docker)

API

We are hosting public API endpoints of the DURAARK Service Platform at following URLs:

The endpoints provide the respective API documentation.