https://github.com/brisvag/webknossos
A fully cloud- and browser-based 3D annotation tool for distributed large-scale data analysis in light- and electron-microscopy based Connectomics
Science Score: 23.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 1 DOI reference(s) in README -
✓Academic publication links
Links to: nature.com -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.4%) to scientific vocabulary
Last synced: 10 months ago
·
JSON representation
Repository
A fully cloud- and browser-based 3D annotation tool for distributed large-scale data analysis in light- and electron-microscopy based Connectomics
Basic Info
- Host: GitHub
- Owner: brisvag
- License: agpl-3.0
- Default Branch: master
- Homepage: https://webknossos.org
- Size: 606 MB
Statistics
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
- Releases: 0
Fork of scalableminds/webknossos
Created almost 4 years ago
· Last pushed almost 4 years ago
https://github.com/brisvag/webknossos/blob/master/
# [webKnossos](https://webknossos.org/)webKnossos is an open-source tool for annotating and exploring large 3D image datasets. * Fly through your data for fast skeletonization and proof-reading * Create 3D training data for automated segmentations efficiently * Scale data reconstruction projects with crowdsourcing workflows * Share datasets and annotations with collaborating scientists [Start using webKnossos](https://webknossos.org) - [On your own server](https://docs.webknossos.org/webknossos/installation.html) - [User Documentation](https://docs.webknossos.org) - [Contact us](mailto:hello@webknossos.org) [](https://circleci.com/gh/scalableminds/webknossos) [](https://github.com/scalableminds/webknossos/releases/latest) [](https://github.com/scalableminds/webknossos/blob/master/LICENSE) [](https://twitter.com/webknossos) ## website and hosted version [https://webknossos.org](https://webknossos.org/) ## Features * Exploration of large 3D image datasets * Fully browser-based user experience with efficient data streaming * Creation/editing of skeleton and volume annotations * [Innovative flight mode for fast skeleton annotation](https://www.nature.com/articles/nmeth.4331) * Optimized performance for large annotations * User and task management for high-throughput crowdsourcing * Sharing and collaboration features * [Standalone datastore component](https://github.com/scalableminds/webknossos/tree/master/webknossos-datastore) for flexible deployments * [Supported dataset formats: WKW](https://github.com/scalableminds/webknossos/wiki/Datasets), [Neuroglancer Precomputed, and BossDB](https://github.com/scalableminds/webknossos-connect) * Supported image formats: Grayscale, Segmentation Maps, RGB, Multi-Channel * [Support for 3D mesh rendering and on-the-fly isosurface generation](https://docs.webknossos.org/webknossos/mesh_visualization.html) * [Documented frontend API for user scripts](https://webknossos.org/assets/docs/frontend-api/index.html), REST API for backend access * Open-source development with [automated test suite](https://circleci.com/gh/scalableminds/webknossos) * [Docker-based deployment](https://hub.docker.com/r/scalableminds/webknossos/) for production and development * [Detailed Documentation](https://docs.webknossos.org) ## Publication > Boergens, Berning, Bocklisch, Brunlein, Drawitsch, Frohnhofen, Herold, Otto, Rzepka, Werkmeister, Werner, Wiese, Wissler and Helmstaedter > webKnossos: efficient online 3D data annotation for connectomics. > [Nature Methods (2017) DOI:10.1038/NMETH.4331.](https://www.nature.com/articles/nmeth.4331) [Read more about the original publication.](https://publication.webknossos.org) ## Installation webKnossos is open-source, so you can install it on your own server. [Check out the documentation](https://docs.webknossos.org/webknossos/installation.html) for a tutorial on how to install webKnossos on your own server. For development installations, please see below. ## Contributions, Contact and Support We welcome community feedback and contributions! We are happy to have * [general feedback, observations and questions](#feedback-observations-and-questions) on the [image.sc forum](https://forum.image.sc/tag/webknossos), * [feature suggestions and bug reports](#issues-feature-suggestions-and-bug-reports) as [issues on GitHub](https://github.com/scalableminds/webknossos/issues/new), * [documentation, examples and code contributions](#pull-requests-docs-and-code-contributions) as [pull requests on GitHub](https://github.com/scalableminds/webknossos/compare). For details on community contributions, please refer to our [Contributing guide](./Contributing_Guide.md). Contact us at [hello@webknossos.org](mailto:hello@webknossos.org). [scalable minds](https://scalableminds.com) offers commercial hosting, support and development services for webKnossos. ## Development installation ### Docker This is only recommended for local testing. Docker 17+ and Docker Compose 1.18+ are required. ```bash git clone -b master --depth=1 git@github.com:scalableminds/webknossos.git cd webknossos docker-compose pull webknossos ./start-docker.sh ``` Open your local webknossos instance on [localhost:9000](http://localhost:9000) and complete the onboarding steps in the browser. Now, you are ready to use your local webKnossos instance. See the wiki for [instructions on updating](https://github.com/scalableminds/webknossos/wiki/Development-setup) this development setup. For non-localhost deployments, check out the [installation guide in the documentation](https://docs.webknossos.org/webknossos/installation.html). ### Dependencies * [Oracle JDK 8+](http://www.oracle.com/technetwork/java/javase/downloads/index.html) or [Open JDK 8+](http://openjdk.java.net/) (full JDK, JRE is not enough) * [sbt](http://www.scala-sbt.org/) * [PostgreSQL 10+](https://www.postgresql.org/) * [Redis 5+](https://redis.io/) * [Blosc](https://github.com/Blosc/c-blosc) * [node.js 16+](http://nodejs.org/download/) * [yarn package manager](https://yarnpkg.com/) * [git](http://git-scm.com/downloads) ### MacOS ```bash # webKnossos needs to be run from x86_64 environment (only applicable for arm64-based Macs) arch -x86_64 /bin/zsh # Install Homebrew package manager /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" # Install git, node.js, postgres, sbt, gfind, gsed brew install openjdk@8 openssl git node postgresql sbt findutils coreutils gnu-sed redis yarn # Set env variables for openjdk and openssl # You probably want to add these lines manually to avoid conflicts in your zshrc echo 'if [ $(arch) = "i386" ]; then' >> ~/.zshrc echo ' export PATH="/usr/local/opt/openjdk@8/bin:$PATH"' >> ~/.zshrc echo ' export PATH="/usr/local/opt/openssl/bin:$PATH"' >> ~/.zshrc echo ' export LDFLAGS="-L/usr/local/opt/openssl/lib"' >> ~/.zshrc echo ' export CPPFLAGS="-I/usr/local/opt/openssl/include"' >> ~/.zshrc echo 'fi' >> ~/.zshrc # Start postgres and redis brew services start postgresql brew services start redis # Create PostgreSQL user createdb psql -c "CREATE DATABASE webknossos;" psql -c "CREATE USER postgres WITH ENCRYPTED PASSWORD 'postgres';" psql -c "ALTER USER postgres WITH SUPERUSER;" psql -c "GRANT ALL PRIVILEGES ON DATABASE webknossos TO postgres;" # Checkout the webKnossos git repository git clone git@github.com:scalableminds/webknossos.git ``` Note: On arm64-based Macs (e.g. M1), you need to run webKnossos in an x86_64 environment (Rosetta 2). In case you accidentally started webKnossos in an arm64 environment, it is advisable to delete several caches `~/.m2`, `~/ivy2`, `~/.sbt`, `~/.yarn-cache` and run `./clean`. Since Postgres and Redis are isolated processes, they can be run either from arm64 or x86_64 environments. ### Ubuntu 20.04 LTS ```bash sudo apt install -y curl ca-certificates wget # Adding repositories for nodejs, sbt and yarn curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - echo "deb https://repo.scala-sbt.org/scalasbt/debian all main" | sudo tee /etc/apt/sources.list.d/sbt.list echo "deb https://repo.scala-sbt.org/scalasbt/debian /" | sudo tee /etc/apt/sources.list.d/sbt_old.list curl -sL "https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x2EE0EA64E40A89B84B2DF73499E82A75642AC823" | sudo apt-key add curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list sudo apt update sudo apt install -y nodejs git postgresql postgresql-client scala sbt openjdk-8-jdk yarn redis-server build-essential libblosc1 # Assign a password to PostgreSQL user sudo -u postgres psql -c "ALTER USER postgres WITH ENCRYPTED PASSWORD 'postgres';" # Clone the git repo to the current directory git clone -b master --depth=1 https://github.com/scalableminds/webknossos.git ``` If you already have a different Java version installed, set the default version to Java 8: - run `sudo update-alternatives --config java` - when prompted, select the desired version On older Ubuntu distributions: Please make sure to have the correct versions of node, PostgreSQL and java installed. ### Manual Installation ##### Java * Install Java JDK 8 (from Oracle or OpenJDK) * make sure `JAVA_HOME` and `JDK_HOME` are set and `PATH` contains path to JDK ##### sbt See: http://www.scala-sbt.org/release/docs/Getting-Started/Setup.html ##### PostgreSQL * Install PostgreSQL from https://www.postgresql.org/download/ * PostgreSQL version **10+ is required** ##### Redis * Install Redis from https://redis.io/download ##### node.js & yarn * Install node from http://nodejs.org/download/ * node version **16+ is required** * Install yarn package manager: `npm install -g yarn` ### Run locally First, install all frontend dependencies via ```bash yarn install ``` Note: During this installation step, it might happen that the module `gl` cannot be installed correctly. As this module is only used for testing webKnossos, you can safely ignore this error. To start webKnossos, use ```bash yarn start ``` This will fetch all Scala, Java and node dependencies and run the application on Port 9000. Make sure that the PostgreSQL and Redis services are running before you start the application. ## Upgrades For upgrades, please check the [changelog](CHANGELOG.released.md) & [migration guide](MIGRATIONS.released.md). ## Tests ```bash # Frontend linting yarn run lint # Format frontend code yarn run pretty # Format backend code yarn pretty-backend # Frontend type checking yarn flow # Frontend tests yarn test-verbose # End-to-end tests docker-compose run e2e-tests ``` ## Credits * scalable minds - https://scalableminds.com/ * Max Planck Institute for Brain Research https://brain.mpg.de/ webKnossos was inspired by [KNOSSOS](https://knossos.app). ### Thanks * [Browser Stack](https://www.browserstack.com/) for letting us test webKnossos on a variety of different devices
* [CircleCI](https://circleci.com/gh/scalableminds/webknossos) for letting us run builds and tests on their CI # License AGPLv3
Owner
- Name: Lorenzo Gaifas
- Login: brisvag
- Kind: user
- Company: @gutsche-lab
- Twitter: brisvag
- Repositories: 16
- Profile: https://github.com/brisvag
PhD student at @gutsche-lab, doing computational stuff with cryo-ET data.