Skip to main content

Software and Architecture

What software are used in LOC and how is the system structured?

Architecture Overview

loc-architecture

This is a simplified architecture, but it shows how developers can deploy data processes serverlessly which in turn invoked by day-to-day users. The data processes use agents to operate external data as well as emit data events as data lineages.

LOC Logic Runtime

The LOC runtime is responsible to execute logic defined in a data process and has its own dedicated resources.

Since LOC v1.0, LOC runtime supports running logic in different languages with swappable external runtimes.

Software Technologies

The majority of LOC are proprietary software built by FST Network's developer team, mostly using Rust, TypeScript and React. All LOC components (except CLI) will run as custom resource (CR) pods in a Kubernetes cluster.

However, we do recognize and relies on proven third party software and tools, most of them are open-sourced. Some notable ones include:

LOC SDKs are developed and published by FST Network, which are free to download locally.

Supported Logic Languages

A LOC logic can be written in one of the following programming languages:

  • JavaScript
  • TypeScript
  • C# (C Sharp)

Supported Data Sources

LOC data processes can be triggered by the following ways:

  • HTTP requests
  • Message queue messages
  • Scheduled jobs

LOC agents supports the following operating options (with more planned in each category):

  • HTTP endpoints
  • Databases:
    • MySQL
    • PostgreSQL
    • Microsoft SQL Server
    • Oracle Database
  • File storages:
    • FTP
    • S3
    • SMB
  • SMTP email servers

With more can be request by clients and partners.