Skip to content

wildtreetech/nteract

Β 
Β 

nteract nteract animated logo

Build Status Build status codecov.io slack in Greenkeeper badge

Users | Contributors and Development | Maintainers

Overview

Edit code cells, write markdown, visualize!

Checkout our Medium blog post to see what amazing things you can do with nteract.

nteract geojson

Note: There will be πŸ›s and quirks. Please come tell us about them!

nteract is a literate coding environment that supports Python, R, JavaScript and other Jupyter kernels. It wraps up the best of the web based Jupyter notebook and embeds it as a desktop application that allows you to open notebooks natively on your system. Double click a .ipynb on the desktop, use Spotlight on the Mac. It Just Worksβ„’

Scope and goals

  • Notebook environment to explore and get things done βœ…
  • Standalone cross-platform desktop application βœ…
  • One notebook document/narrative per window βœ…
  • Work with any Jupyter kernel using message spec v5 βœ…
  • 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 βœ…

Installation - Users

Head to the Releases page and download the version for your OS.

Installation - Contributors and Development

The contributors are listed in contributors

To learn how to contribute, head to our contributing guide.

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to rgbkrk@gmail.com.

Feel free to post issues or chat in Slack (request an invite) if you need help or have questions. If you have trouble creating an account on Slack, either email rgbkrk@gmail.com or post an issue on GitHub.

Development

To get started developing install a python runtime then install nteract in dev mode.

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

Install nteract in dev mode

Requires Node.js 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

As you make changes, close the entire app (cmd-q on OS X, or ctrl-c at the terminal) then run npm run start again.

Progressive Webpack build for the notebook

In separate terminals run:

npm run build:desktop:watch

and

npm run spawn

The webpack build will keep occurring as you modify source. When you open a new notebook, you'll get the freshest copy of the notebook app.

Build Documentation

You can run nteract's documentation generator by running

npm run build:docs

And then opening docs/index.html in your favorite browser.

Troubleshooting

I upgraded my developer installation and things are broken!

  • Try git clean -xdf && npm i

I want to debug redux actions and state changes.

  • Enable redux-logger by spawning the application with npm run spawn:debug.

I keep getting 'Do you want the application "nteract Helper.app" to accept incoming network connections?' while developing or using a custom build of nteract on macOS.

  • This is how the the macOS firewall behaves for unsigned apps. On a signed app, the dialog won't show up again after approving it the first time. If you're using a custom build of nteract, run: sudo codesign --force --deep --sign - /Applications/nteract.app. You will have to do this again every time you rebuild the app.

For maintainers: Creating a release

Individual packages

Allow lerna to publish all of packages/*

$ lerna publish
... follow prompts to publish any packages, choosing the appropriate semver

Desktop application

Follow instructions in Releasing the Desktop application.

Sponsors

Work on the nteract notebook is currently sponsored by

NumFocus

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

Netflix OSS

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.

About

πŸ“˜ Desktop notebook app + packages

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 57.7%
  • Jupyter Notebook 35.2%
  • Python 3.6%
  • CSS 2.0%
  • HTML 0.9%
  • Shell 0.6%