Skip to content
A fully cloud- and browser-based 3D annotation tool for distributed large-scale data analysis in light- and electron-microscopy based Connectomics
JavaScript Scala Shell Python PLpgSQL CSS Other
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Temporarily disable delete of dev-deployment (#4632) May 28, 2020
.github Split changelogs (#4564) Apr 23, 2020
app Communicate truncated 64 bit segmentation (#4598) May 27, 2020
conf Communicate truncated 64 bit segmentation (#4598) May 27, 2020
docs Add allowsUpload flag to datastores (#4614) May 13, 2020
flow-typed/npm Add sharing modal for view mode (#4543) Apr 30, 2020
fossildb update go fossildb 0.1.19 (#4395) Jan 6, 2020
frontend When requesting data from fallback layer, skip version field (#4644) Jun 3, 2020
project Add slack telemetry messages, remove NewRelic (#4231) Aug 14, 2019
public Better onboarding on demo instance (#4439) Apr 9, 2020
test Add allowsUpload flag to datastores (#4614) May 13, 2020
tools Add allowsUpload flag to datastores (#4614) May 13, 2020
util/src/main/scala/com/scalableminds/util Upload volume tasks (#4565) Apr 29, 2020
webknossos-datastore more logging cleanup for datastore (#4618) May 14, 2020
webknossos-tracingstore Compress Volume Buckets Already in Frontend (#4623) May 19, 2020
.babelrc Upgrade to Babel 7 (#3275) Sep 27, 2018
.bulldozer.yml add bulldozer config (#4212) Jul 30, 2019
.dockerignore Apply agglomerate file (#4469) Mar 26, 2020
.editorconfig fixed snapshot tests (WIP) #935 Mar 22, 2018
.eslintignore Move Frontend code out of app/assets to avoid recompile (#3751) Feb 12, 2019
.eslintrc.json update antd, yarn upgrade and fix import/no-extraneous-dependencies l… May 27, 2019
.flowconfig Support non-quadratic viewports (#3634) Feb 18, 2019
.gitbook.yaml documentation start page Aug 28, 2018
.gitignore Move Frontend code out of app/assets to avoid recompile (#3751) Feb 12, 2019
.importjs.js Move Frontend code out of app/assets to avoid recompile (#3751) Feb 12, 2019
.prettierignore Improved initial data and configs (#4368) Dec 11, 2019
.prettierrc update prettier, add prettierrc and integrate prettier in ci testing Aug 29, 2017
.scalafmt.conf format all subprojects (#3816) Feb 21, 2019
CHANGELOG.released.md Communicate truncated 64 bit segmentation (#4598) May 27, 2020
CHANGELOG.unreleased.md When requesting data from fallback layer, skip version field (#4644) Jun 3, 2020
Dockerfile Apply agglomerate file (#4469) Mar 26, 2020
Dockerfile.dev Make NML import more performant and resilient (#4541) Apr 23, 2020
LICENSE added deployment instructions to Readme + added license Jan 24, 2017
MIGRATIONS.released.md Release 20.06 (#4627) May 26, 2020
MIGRATIONS.unreleased.md Release 20.06 (#4627) May 26, 2020
README.md Split changelogs (#4564) Apr 23, 2020
build.sbt Apply agglomerate file (#4469) Mar 26, 2020
clean Update Public URIs on Startup from Config (#4482) Mar 17, 2020
docker-compose.yml Easier docker-based server installation (#4446) Feb 18, 2020
package.json Compress Volume Buckets Already in Frontend (#4623) May 19, 2020
start-docker.sh Remove wkconnect from default docker-compose setup (#4430) Feb 3, 2020
webpack.config.js Tensorflow segmentation (#3461) Apr 10, 2019
yarn.lock Compress Volume Buckets Already in Frontend (#4623) May 19, 2020

README.md

webKnossos

webKnossos Logo

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 - On your own server - User Documentation - Contact us

Twitter

Demo

https://webknossos.org/

Features

Publication

Boergens, Berning, Bocklisch, Bräunlein, 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.

Read more about the original publication.

Installation

webKnossos is open-source, so you can install it on your own server.

Check out the documentation for a tutorial on how to install webKnossos on your own server.

For installations on localhost, please see below.

Development installation

Docker

This is only recommended for local testing. Docker 17+ and Docker Compose 1.18+ are required.

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 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 this development setup.

For non-localhost deployments, check out the installation guide in the documentation.

Dependencies

OS X

If you are using OS X try using this awesome installer: https://gist.github.com/normanrz/9128496

Or install Java manually and run:

# Install Homebrew package manager
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

# Install git, node.js, postgres, sbt, gfind, gsed
brew install git node postgresql sbt findutils coreutils gnu-sed redis
npm install -g yarn

# Start postgres
brew services start postgresql

# 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

Ubuntu 16.04 LTS

# Adding repositories for sbt, nodejs and yarn
echo "deb https://dl.bintray.com/sbt/debian /" | sudo tee /etc/apt/sources.list.d/sbt.list
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 642AC823
echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/postgresql.list
curl -sS https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
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

# Installing everything
sudo apt-get update
sudo apt-get install -y git postgresql-10 postgresql-client-10 nodejs scala sbt openjdk-8-jdk yarn redis-server

# Assign a password to PostgreSQL user
sudo -u postgres psql -c "ALTER USER postgres WITH ENCRYPTED PASSWORD 'postgres';"

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
Redis
node.js & yarn

Run locally

yarn install
yarn start

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 & migration guide.

Tests

# Frontend linting
yarn run lint

# Format frontend code
yarn run pretty

# Frontend type checking
yarn flow

# Frontend tests
yarn test-verbose

# End-to-end tests
docker-compose run e2e-tests

Contact and support

Contact us at hello@scalableminds.com.

scalable minds offers commercial hosting, support and development services for webKnossos.

Credits

webKnossos was inspired by KNOSSOS.

Thanks

  • CircleCI for letting us run builds and tests on their CI
  • Browser Stack for letting us test WebKnossos on a variety of different devices Browserstack Logo

License

AGPLv3

You can’t perform that action at this time.