Skip to content

rsn491/koopera

Repository files navigation

Koopera

GitHub release (latest by date) Frontend CI Backend CI

Koopera

Koopera is a collaboration app that enables Data Science teams to share and review their jupyter notebooks.

Features

  • Review jupyter notebooks by looking at the diffs and commenting directly on the cells
  • Review source code with syntax highlight for python, scala, etc. (using diff2html)
  • Import notebooks from your GitHub repositories
  • Navigate through your notebooks
  • GitHub authentication via personal access token

Screenshots

Review jupyter notebooks


Review python code


Import and navigate through your notebooks


Quickstart

You can easily start using Koopera with docker in just two steps.

  1. Build and start Koopera + dependencies:

    docker-compose up --build -d

  2. Run migrations:

    docker-compose run --rm koopera alembic upgrade head

When the migration ends, you can now access Koopera at: http://0.0.0.0:8080

Setting up dev environment

Dependencies

  • Python 3.6
  • nodejs 16

Setting up backend for local development

  1. Enable CORS by setting ALLOW_CORS to True in src/backend/config.py

  2. Create virtualenv

    python -m venv venv

  3. Activate virtualenv

    source venv/bin/activate

  4. Install dependencies

    pip install -r requirements.txt

  5. Run migrations alembic upgrade head

  6. Start flask app on default port (5000)

    python run.py

Setting up frontend for local development

  1. Install dependencies

    npm install

  2. Run web server for serving frontend

    npm run serve

A web server for serving frontend with hot reload will be listening on http://localhost:8080

Credits

Icons made by Nikita Golubev from www.flaticon.com is licensed by CC 3.0 BY

About

Collaboration app for sharing and reviewing jupyter notebooks

Topics

Resources

License

Stars

Watchers

Forks

Packages