📓 Interactive literate coding notebook!
JavaScript Jupyter Notebook CSS Other
Latest commit 5020b96 Jan 22, 2017 @jdetle jdetle committed on GitHub Merge pull request #1367 from lgeiger/lodash-webpack
chore(webpack): Add lodash plugin
Permalink
Failed to load latest commit information.
.github chore(gh-pr): clean up PR template text Nov 4, 2016
bin feat(cli): Make it work on windows for real Oct 16, 2016
build chore: Add ipynb file-icons Nov 17, 2016
example-notebooks docs(examples): Include JS logo and add more text Jan 20, 2017
flow-typed/npm chore(flow): further typing of document reducer Jan 17, 2017
scripts chore(install): Remove dependency check Dec 8, 2016
src feat(menu): Include the custom revival notebook Jan 20, 2017
static package.json: add desktop entry to build.linux. rm static/nteract.des… Dec 27, 2016
test fix(status-bar): Use display_name in status bar Jan 18, 2017
types chore(flow): Started adding Redux types, enabled typing on provider Jan 14, 2017
.Dockerignore Introduce docker bits for building Linux release Sep 12, 2016
.babelrc chore(webpack): Add lodash plugin Jan 21, 2017
.eslintignore feat(cli): Windows Spawn process from node Oct 16, 2016
.eslintrc chore(lint): Remove no-unused-prop-types eslint rule Jan 17, 2017
.flowconfig chore(flow): Started adding Redux types, enabled typing on provider Jan 14, 2017
.gitattributes chore: normalize line endings Dec 11, 2016
.gitignore chore(packaging): Use one package.json structure Nov 12, 2016
.npmignore feat(cli): Make it work on OS X Oct 16, 2016
.travis.yml chore(install): Remove unnecessary deps on travis Dec 7, 2016
CODE_OF_CONDUCT.md Mirror Atom's adoption of the Contributor Covenant. Jan 22, 2016
CONTRIBUTING.md chore(contributing): Update contribution guide. Jan 20, 2017
Dockerfile Introduce docker bits for building Linux release Sep 12, 2016
LICENSE chore(license): Revert back to BSD-3-Clause Sep 26, 2016
PACKAGING-NOTES.md docs(packaging): Fix minor formatting issues Dec 27, 2016
README.md docs(readme): add Greenkeeper badge Jan 21, 2017
RELEASING.md OS X -> macOS Oct 15, 2016
ROADMAP.md OS X -> macOS Oct 15, 2016
USER_GUIDE.md docs: Added reference to commonmark to user guide Jan 12, 2017
appveyor.yml chore(ci): Run unit test on Appveyor Oct 15, 2016
codecov.yml chore(CodeCov): Remove spammy behavior Sep 22, 2016
esdoc.json chore(esdoc): Add esdoc doc generation Sep 29, 2016
package.json chore(webpack): Add lodash plugin Jan 21, 2017
webpack.config.js chore(webpack): Add lodash plugin Jan 21, 2017

README.md

nteract nteract animated logo

Greenkeeper badge

Build Status Build status codecov.io Documentation Coverage slack in

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 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:main
npm run build:renderer: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 npm run reinstall

I want to debug redux actions and state changes.

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

For maintainers: Creating a release

Bump the version

npm version {major|minor|patch}
git push
git push --tags
npm publish

Create the package

It is recommended to run npm run reinstall before packaging a release.

To package a release for your current platform run:

npm run dist

To package a release for all platforms run:

npm run dist:all

Make sure you have the required dependencies for a multi platform build installed.

The OS X release has to be signed with an Apple developer key. Currently only Kyle (@rgbkrk) has this set up.

Then verify that the copy of nteract in dist/ works properly (mostly ad-hoc basic notebook loading and execution).

Sponsors

Work on the nteract notebook is currently sponsored by

Plotly

Domino Data Lab

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

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.