Giter VIP home page Giter VIP logo

nteract's Introduction

nteract animated logo

codecov.io Build Status slack in

Overview

๐Ÿ““ It's an Electron-based Notebook! ๐Ÿ““

nteract demo

Note: this isn't feature complete yet. There will be ๐Ÿ›s and we're currently lacking a lot of core features like jupyter-js-widgets, introspection, cut/copy/paste of cells.

Scope and goals

  • Notebook environment to explore and get things done
  • Standalone cross-platform desktop application
  • Easy install with pre-configured Python3 and JavaScript runtimes
  • Grow an ecosystem of tooling to allow others to build their own platforms relying on the Jupyter specifications

Contributing

The contributors are listed in contributors

nteract uses the C4.1 (Collective Code Construction Contract) process for contributions.

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to [email protected].

Design

  • Full compliance with Jupyter message spec v5
  • Full compliance with Notebook format v4
  • Follow notebook model operations flow from commutable
  • Rely on common interfaces for kernel communication via enchannel's comm spec (Go read it!)
  • Mocks for UI can be explored in issues, while design references go in mocks
  • React for views (pushing notebook state down into the view)
  • Full node, direct to zmq (no running a Python server underneath)

Development

To get started developing install a python runtime, the dependencies and nteract itself.

Python runtime

At least for now, we need the python 3 kernel installed when hacking on nteract:

python3 -m pip install ipykernel
python3 -m ipykernel install --user

Dependencies

For all systems, you'll need

  • Node.js 5.x
  • npm
  • ZeroMQ
  • Python 2 (for builds - you can still run Python 3 code)

Each operating system has their own instruction set. Please read on down to save yourself time.

OS X
homebrew on OS X
Windows

After these are installed, you'll likely need to restart your machine (especially after Visual Studio).

Linux

For Debian/Ubuntu based variants, you'll need libzmq3-dev (preferred) or alternatively libzmq-dev.
For RedHat/CentOS/Fedora based variants, you'll need zeromq and zeromq-devel.

Install nteract itself

Requires node 6.x and npm 3.

  1. Fork this repo
  2. Clone it git clone https://github.com/nteract/nteract
  3. cd to where you cloned it
  4. npm install
  5. npm run start

Assets are compiled via electron-compile directly, no build steps until we make a release. As you hack on components, you can reload directly or pop open the dev console and run location.reload(). No hot reloading at the moment.

Troubleshooting

I did: "$ npm install", and I got: "Authorization service failure : @reactivex/rxjs"

  • Try $ npm login then $ npm install
  • Try $ npm install @reactivex/rxjs; npm install;
  • Try $ npm install @reactivex/[email protected]; npm install;

I did: "$ npm install" then "$ npm start", and I got: "no such file or directory, open '.../node_modules/electron-prebuilt/path.txt'"

  • Try $ npm install electron-prebuilt

Frontend background

As much as possible, we'd like to get people speaking a common language for development of nteract components and packages.

Core tech behind the scenes:

These are our suggested tutorials and background to help you get up to speed:

Depending on where you plug yourself in, you may find the introduction to Reactive programming is the biggest help.

If you'd like to experiment with the core Jupyter messaging and Observables without working with React, check out ick, an interactive console.

Post in Slack if you need help with these or have questions. Several people are working through tutorials right now and would love a study group! If you have trouble creating an account, either email [email protected] or post an issue on GitHub.

Support

Sponsors

Work on the nteract notebook is currently sponsored by

Plotly

Domino Data Lab

We're on a common mission to build a great notebook experience. Feel free to get in touch if you'd like to help. Resources go towards paying for additional work by seasoned designers and engineers.

Made possible by

The nteract project was made possible with the support of

Carina by Rackspace.

If your employer allows you to work on nteract during the day and would like recognition, feel free to add them to the "Made possible by" list.

nteract's People

Contributors

rgbkrk avatar jdfreder avatar captainsafia avatar kenwheeler avatar carreau avatar betatim avatar ivanov avatar okdistribute avatar freeman-lab avatar minrk avatar stevenlangbroek avatar

Watchers

Ariel Rokem avatar James Cloos avatar

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.