Getting Started

This guide covers the prerequisites, build process, and running instructions for STRATO Mercata Platform.

Prerequisites

Stack (Build Time Dependency)

Install Stack from: https://docs.haskellstack.org/en/stable/install_and_upgrade/

Docker with Compose Plugin (Runtime Dependency)

Install Docker from: https://docs.docker.com/engine/install/

Library Dependencies

You have two options for installing library dependencies:

Option A: System-wide Installation

Ubuntu 24.04:

sudo apt install -y \
  libleveldb-dev \
  liblzma-dev \
  libpq-dev \
  libsecp256k1-dev \
  libsodium-dev \
  postgresql-client

macOS (requires Homebrew):

Option B: Nix

Install Nix from: https://nix.dev/install-nix.html

The project includes predefined Nix packages, so no manual library installation is needed.

Download

The strato platform currently lives in a monorepo at:

Note: Prior to the open sourcing of the strato platform, the following alternative repo should be used to access published builds:

Download strato-getting-startedarrow-up-right

Build

Build Everything

With system-wide libraries:

With Nix:

Build Single Application

To build only one application (e.g., mercata-backend):

Generate Docker Compose Files

To generate docker-compose YAMLs (overwrites existing):

Run

OAUTH Client Credentials

In order to obtain OAUTH_DISCOVERY_URL, OAUTH_CLIENT_ID, and OAUTH_CLIENT_SECRET, you must request a keycloak client at http://support.blockapps.net/arrow-up-right; after signing in, see section Request Client Credentials.

Local Development

Start:

Wipe:

Dockerized Deployment

Start:

  1. Copy the docker-compose template:

  2. Navigate to bootstrap-docker:

  3. Update strato-run.sh with your credentials:

    • Use network='helium' for testnet

    • Use network='upquark' for mainnet

  4. Run:

Wipe:

Last updated