Skip to content

Files

Latest commit

2247456 · Jan 14, 2025

History

History

cli

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
Jan 14, 2025
Mar 28, 2023
Sep 20, 2024
Nov 17, 2021
Nov 17, 2021
Nov 17, 2021
Mar 8, 2022
Jan 14, 2025
Mar 8, 2022
Sep 20, 2024
Sep 20, 2024
Jan 20, 2022

soya-cli 🌱

SOyA (Semantic Overlay Architecture) provides a framework to manage layers of semantic description for a dataset enabling well-defined annotation, validation, transformation, and human-readable display & data capture.

soya-cli provides easy-to-use interfaces for handling SOyA structures and interacting with SOyA respositories.

soya-cli is built on top of soya-js and exposes most of its features as commands on the command line. In addition there are features like:

  • DRI calculation for SOyA structures
  • Data transformation using
  • Fast prototyping with quick links to JSON-LD Playground

Install and build from source

Install all dependencies with node package manager (npm)

# install all dependencies
npm install

# build project sources
npm run build

# register soya-cli in path
npm run bin

Install from npmjs.com

soya-cli is also available from npmjs.com as a prebuilt package that can be installed with:

# install or update soya-cli globally with -g
npm install -g soya-cli@latest

Build Docker image

To package soya-cli with additional tools (jq, jolt, and OYDID) in a ready-to-use Docker container run the following command in the cli directory:

./build.sh

The current oydeu/soya-cli Docker image is available here: https://hub.docker.com/r/oydeu/soya-cli

Verify with automated tests

Use the following command to run the automated tests in the oydeu/soya-cli Docker image:

docker run -it --rm -w /usr/src/app/docker/pytest oydeu/soya-cli pytest

Run soya-cli

Use soya --help or soya -h to get more information about soya-cli.

Dev note

This project is a prototype, therefore under development.
soya-cli may not behave as expected and should not be used in production!
Also code does surely not satisfy most of best practices in coding :-)