Giter Site home page Giter Site logo

mrnicegyu11 / osparc-simcore Goto Github PK

View Code? Open in Web Editor NEW

This project forked from itisfoundation/osparc-simcore

0.0 0.0 0.0 81.58 MB

osparc-simcore simulation framework

License: MIT License

HTML 0.07% JavaScript 22.42% Python 73.93% Makefile 1.01% Shell 1.28% Batchfile 0.01% Dockerfile 0.79% CSS 0.21% Mako 0.01% PLpgSQL 0.01% Jinja 0.26% HCL 0.01% Jupyter Notebook 0.01%

osparc-simcore's Introduction

osparc-simcore platform

black_badge ci_badge codecov_badge doc_badge dockerhub_badge license_badge sonarcloud_badge osparc_status s4l_status

The SIM-CORE, named o2S2PARCOpen Online Simulations for Stimulating Peripheral Activity to Relieve Conditions – is one of the three integrative cores of the SPARC program’s Data Resource Center (DRC). The aim of o2S2PARC is to establish a comprehensive, freely accessible, intuitive, and interactive online platform for simulating peripheral nerve system neuromodulation/ stimulation and its impact on organ physiology in a precise and predictive manner. To achieve this, the platform will comprise both state-of-the art and highly detailed animal and human anatomical models with realistic tissue property distributions that make it possible to perform simulations ranging from the molecular scale up to the complexity of the human body.

Getting Started

A production instance of o2S2PARC is running at oSPARC.io.

If you want to spin up your own instance, you can follow the common workflow to build and deploy locally using the Linux commandline (Ubuntu recommended). Make sure you first install all the requirements mentioned in the section below.

  # clone code repository
  git clone https://github.com/ITISFoundation/osparc-simcore.git
  cd osparc-simcore

  # show setup info and build core services
  make info build

  # starts swarm and deploys services
  make up-prod

  # display swarm configuration
  make info-swarm

  # open front-end in the browser
  #  127.0.0.1.nip.io:9081 - simcore front-end site
  #
  xdg-open http://127.0.0.1.nip.io:9081/

  # to stop the swarm
  make down

Some routes can only be reached via DNS such as UUID.services.DNS. Since UUID.services.127.0.0.1 is not a valid DNS, the solution is to use nip.io. A service that maps <anything>[.-]<IP Address>.nip.io in "dot", "dash" or "hexadecimal" notation to the corresponding <IP Address>.

Services are deployed in two stacks:simcore-stack comprises all core-services in the framework and ops-stack is a subset of services from ITISFoundation/osparc-ops used for operations during development.

Requirements

To build and run:

  • git
  • docker
  • make >=4.2
  • awk, jq (optional tools within makefiles)

To develop, in addition:

  • python 3.10: we recommend using the python manager pyenv
  • nodejs for client part: we recommend using the node manager nvm
  • vscode (highly recommended)

To verify current base OS, Docker and Python build versions have a look at:

If you want to verify if your system has all the necessary requirements:

    make info

Setting up other Operating Systems

When developing on these platforms you are on your own.

On Windows, it works under WSL2 (Windows Subsystem for Linux version2). Some details on the setup:

MacOS is currently not supported.

Upgrading services requirements

Updates are upgraded using a docker container and pip-sync. Build and start the container:

    cd requirements/tools
    make build
    make shell

Once inside the container navigate to the service's requirements directory.

To upgrade all requirements run:

    make reqs

To upgrade a single requirement named fastapirun:

    make reqs upgrade=fastapi

Releases

WARNING This application is still under development.

Development build

For developers wanting to add/test code changes, a version can be built that will on-the-fly incorporate changes made in the source directory into the running containers. To enable this, the following commands should be used to build, instead of the ones provided in the Getting Started section:

  # clone code repository
  git clone https://github.com/ITISFoundation/osparc-simcore.git
  cd osparc-simcore

  # setup python environment and activate
  make devenv
  source .venv/bin/activate

  # show setup info and build core services
  make info build build-devel

  # starts swarm and deploys services
  make up-devel

  # The above command will keep in running with "[RUN] Running command..."
  # Open another terminal session, to continue

  # display swarm configuration
  make info-swarm

  # open front-end in the browser
  #  127.0.0.1.nip.io:9081 - simcore front-end site
  #
  xdg-open http://127.0.0.1.nip.io:9081/

  # to stop the swarm
  make down

Contributing

Would you like to make a change or add something new? Please read the contributing guidelines.

License

This project is licensed under the terms of the MIT license.


Made with love (and lots of hard work) at www.z43.swiss

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.