notebook/IPython/html
Min RK eba94f4e0b remove superfluous event.preventDefault
from #7416

only one of the additions from that PR was necessary to address the issue
2015-01-15 10:10:42 -08:00
..
auth address review in custom auth 2014-12-08 10:51:14 -08:00
base use single WebSocket connection for all channels 2015-01-06 11:15:15 -08:00
edit Rename texteditor files & folders to edit 2014-11-25 10:07:52 -08:00
files Rename get_model() to get() 2014-11-11 14:51:21 -08:00
kernelspecs Fix HEAD requests for kernelspec resources 2014-12-17 10:40:55 -08:00
nbconvert removing spurious import 2015-01-13 22:45:38 -05:00
notebook make FilesRedirectHandler redirect logic accessible 2014-12-27 15:11:42 -08:00
services Merge pull request #7389 from minrk/one-websocket 2015-01-09 11:37:51 -08:00
static remove superfluous event.preventDefault 2015-01-15 10:10:42 -08:00
templates remove tree override.css 2015-01-14 12:51:22 -08:00
terminal Merge pull request #6886 from minrk/tornado-4 2014-11-13 12:23:32 -08:00
tests fix highlight test for failed highlighting 2015-01-10 11:05:45 -08:00
tree fix clientside notebook manager and assume tree is dir by default 2014-11-19 11:52:03 +01:00
widgets python3 does not like adding lists and map results 2015-01-08 18:43:38 +00:00
__init__.py DOC: Fix typo in comment. 2014-11-06 14:59:44 -05:00
__main__.py
allow76.py Websockets were not started correctly on QtWebKit 4 2014-11-15 19:26:06 -05:00
log.py
nbextensions.py path.sep 2015-01-09 14:18:31 -08:00
notebookapp.py allow system-wide paths for nbextensions 2015-01-09 14:15:31 -08:00
README.md
tasks.py friendlier error messages when invoke/lessc are missing 2014-12-27 00:16:28 -08:00
utils.py escaped URLs are always utf-8 2015-01-14 12:06:12 -08:00

IPython Notebook development

Development dependencies

Developers of the IPython Notebook will need to install the following tools:

  • invoke
  • node.js
  • less (npm install -g less)

Components

We are moving to a model where our JavaScript dependencies are managed using bower. These packages are installed in static/components and committed into a separate git repo ipython/ipython-components. Our dependencies are described in the file static/components/bower.json. To update our bower packages, run bower install in this directory.

less

If you edit our .less files you will need to run the less compiler to build our minified css files. This can be done by running python setup.py css from the root of the repository. If you are working frequently with .less files please consider installing git hooks that rebuild the css files and corresponding maps in ${RepoRoot}/git-hooks/install-hooks.sh.

JavaScript Documentation

How to Build/ view the doc for JavaScript. JavaScript documentation should follow a style close to JSDoc one, so you should be able to build them with your favorite documentation builder. Still the documentation comment are mainly written to be read with YUI doc. You can either build a static version, or start a YUIdoc server that will live update the doc at every page request.

To do so, you will need to install YUIdoc.

Install NodeJS

Node is a browser less javascript interpreter. To install it please refer to the documentation for your platform. Install also NPM (node package manager) if it does not come bundled with it.

Get YUIdoc

npm does by default install package in ./node_modules instead of doing a system wide install. I'll leave you to yuidoc docs if you want to make a system wide install.

First, cd into js directory :

cd IPython/html/static/js/
# install yuidoc
npm install yuidocjs

Run YUIdoc server

From IPython/html/static/js/

# run yuidoc for install dir 
./node_modules/yuidocjs/lib/cli.js --server .

Follow the instruction and the documentation should be available on localhost:3000

Omitting --server will build a static version in the out folder by default.