/ostis-web-platform

Set of scripts and configs for installing a web-oriented version of the OSTIS Technology platform implementation

Primary LanguageShellOtherNOASSERTION

ostis-web-platform

license

It is the repository of the Platform of the OSTIS Technology. Platform OSTIS is intended to be a solid framework to help you deploy existing and create new ostis-systems.

OSTIS Platform contains:

  1. Knowledge base with top-level ontologies
  2. Semantic network storage for intelligent systems
  3. Interpreter of semantic network programs of intelligent systems
  4. Component manager for intelligent systems
  5. Interpreter of web-oriented semantic interfaces of intelligent systems

To learn more about the platform, check out our documentation.

Installation

  • Quick start using Docker Compose

    Additional steps for Windows users

    Make sure you are using UNIX line endings inside the repository and longpaths are enabled, otherwise you may face problems during build or installation process. Use the commands below to reconfigure Git on your machine:

    git config --global core.autocrlf input
    git config --global core.longpaths true

    Requirements: you will need Docker installed and running on your machine.

    git clone https://github.com/ostis-ai/ostis-web-platform --recursive
    cd ostis-web-platform
    # download images from Docker Hub
    docker compose pull
    # build knowledge base
    docker compose run machine build
    # launch web platform stack
    docker compose up
    Building docker images locally

    This may come in handy e.g. when you want to use a custom branch of the sc-machine or sc-web.

    Requirements:

    1. In case you're using Windows, set up git using the installation instructions above
    2. Enable Docker BuildKit. You can use DOCKER_BUILDKIT=1 shell variable for this.

    Build process

    git clone https://github.com/ostis-ai/ostis-web-platform --recursive
    cd ostis-web-platform
    ./scripts/install_submodules.sh # download all submodules without compilation.
    docker compose build
  • Natively (using sc-component-manager)

    git clone https://github.com/ostis-ai/ostis-web-platform
    cd ostis-web-platform
    ./scripts/install_minimal_platform.sh
    ./scripts/run_sc_machine.sh
    # and write write the following commands in the terminal:
    # components init
    # components install sc_web
    # components install knowledge_base_ims
  • Natively

    Note: Currently, only Linux (Ubuntu-20.04, Ubuntu-22.04) and macOS are supported by this installation method. If you're going to use it, it might take a while to download dependencies and compile the components. Use it only if you know what you're doing!

    git clone https://github.com/ostis-ai/ostis-web-platform --recursive
    cd ostis-web-platform
    ./scripts/install_platform.sh

Usage

  • Docker Compose

    # build the knowledge base
    # required before the first startup (or if you've made updates to KB sources)
    docker compose run machine build
    # start platform services and run web interface at localhost:8000
    docker compose up
  • Native installation

    # launch semantic network processing machine
    ./scripts/run_sc_machine.sh
    # *in another terminal*
    # launch semantic interfaces interpreter at localhost:8000
    ./scripts/run_sc_web.sh

Documentation

We document all information about the project development and its components' implementation in sources of its knowledge base to provide opportunity to use it in information processing and knowledge generation.

You can access the current version of the documentation in docs/main.pdf file of this project.

Documentation is written with the help of LaTeX tools in SCn-code representation. To build documentation manually, you'll need a LaTeX distribution installed on your computer. Alternatively, we provide a Docker image to build the documentation in case you can't / don't want to install LaTeX on your PC.

Download scn-tex-plugin and documentation for subprojects

# feel free to skip this step if the platform is already installed natively
./scripts/install_submodules.sh
  • Build steps (using LaTeX)

    cd docs
    TEXINPUTS=./scn: latexmk -pdf -bibtex main.tex
  • Build steps (using Docker)

    docker run -v ${PWD}:/workdir --rm -it ostis/scn-latex-plugin:latest "docs/main.tex"

    After the compilation, the main.pdf file should appear at ostis-web-platform/docs/. You can find more information about scn-latex-plugin here.

Feedback

Contributions, bug reports and feature requests are welcome! Feel free to check our issues page and file a new issue (or comment in existing ones).

License

Distributed under the MIT License. See LICENSE for more information.