Introduction

Overview

Getting Started

Architecture

Services

Transactions

Development Guides

Testing

Version Guides

Support

Technology Stack

As a team of people using technology to make DLT products, it’s essential to be unambiguous about the technology/tools we use, so that everyone is clear what we all need to learn/use to make product(s) that are functional, fast, beautiful, usable and reliable!

ARK Core is written in TypeScript , and it has been using Lerna to manage the development and publication of its packages and uses Node.js as execution environment.

Development tools

The following development tools need to be installed on your machine to develop an application using ARK Core:

  • Hapi.js - A rich web framework for building applications and services. A base for our public REST API.
  • InversifyJS - A powerful and lightweight inversion of control container for JavaScript & Node.js apps powered by TypeScript.
  • Lerna.js - A tool for managing JavaScript projects with multiple packages.
  • NodeJS - As ARK Core is written exclusively in NodeJS, the server-side framework for JavaScript, installing Node is a necessity for core development.
  • PostgreSQL - our “standard” database is Postgres. Postgres is the most “mature” Open Source Relational Database. It’s 100% Free (including all “advanced” features).
  • TypeORM - ORM for TypeScript and JavaScript (ES7, ES6, ES5). Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, SAP Hana, WebSQL databases. Works in NodeJS, Browser, Ionic, Cordova and Electron platforms.
  • TypeScript - A language for application-scale of JavaScript. TypeScript adds optional types to JavaScript that support tools for large-scale JavaScript applications for any browser, for any host, on any OS. TypeScript compiles to readable, standards-based JavaScript.

Operating System

While we have a strong preference for Linux (e.g. Ubuntu or CentOS), however we know that both Node.js and Postgres run on almost any environment including Microsoft Windows Desktop & Server.

All production and support tools are developed for Linux operating systems. We do not support Windows environment operating system in production. However it is still possible to develop your applications on a windows box.

2021 © ARK.io | All rights reserved An ARK.io Product