Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jupyter-incubator/contentmanagement
Jupyter Content Management Extensions
https://github.com/jupyter-incubator/contentmanagement
jupyter jupyter-notebook
Last synced: 2 months ago
JSON representation
Jupyter Content Management Extensions
- Host: GitHub
- URL: https://github.com/jupyter-incubator/contentmanagement
- Owner: jupyter-incubator
- License: other
- Archived: true
- Created: 2015-09-21T15:41:02.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2018-06-11T01:51:35.000Z (over 6 years ago)
- Last Synced: 2024-10-29T05:05:26.666Z (2 months ago)
- Topics: jupyter, jupyter-notebook
- Language: Jupyter Notebook
- Size: 1.41 MB
- Stars: 78
- Watchers: 22
- Forks: 26
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE.md
Awesome Lists containing this project
- awesome-jupyter-resources - GitHub - 25% open · ⏱️ 11.06.2018): (Jupyter拓展)
README
[![PyPI version](https://badge.fury.io/py/jupyter_cms.svg)](https://badge.fury.io/py/jupyter_cms) [![Build Status](https://travis-ci.org/jupyter-incubator/contentmanagement.svg?branch=master)](https://travis-ci.org/jupyter-incubator/contentmanagement) [![Google Group](https://img.shields.io/badge/-Google%20Group-lightgrey.svg)](https://groups.google.com/forum/#!forum/jupyter)
# Jupyter Content Management Extensions
Content management extensions for Jupyter / IPython Notebook.
## What It Gives You
The content management extensions provide the following:
* Search dialog on dashboard, editor, and notebook screens to search over filenames and `.ipynb` content in the notebook directory
* IPython kernel extension to make Python notebooks reusable as modules and cookbooks (see the [cookbooks tutorial](etc/notebooks/cookbooks_demo/use_cookbooks.ipynb))
* Full-page drag-and-drop upload target
* Pop-over table of contents navigation for notebooks## Prerequisites
* Jupyter Notebook >=4.2 running on Python 3.x or Python 2.7.x
* Edge, Chrome, Firefox, or Safari## Installing and Enabling
The following steps install the extension package using `pip` and enable the
extension in the active Python environment.```bash
pip install jupyter_cms
jupyter cms quick-setup --sys-prefix
```Run `jupyter cms quick-setup --help` for other options. Note that the
second command is a shortcut for the following:```bash
jupyter serverextension enable --py jupyter_cms --sys-prefix
jupyter nbextension install --py jupyter_cms --sys-prefix
jupyter nbextension enable --py jupyter_cms --sys-prefix
```Alternatively, the following command both installs and enables the package
using `conda`.```bash
conda install jupyter_cms -c conda-forge
```In either case, you will need to restart your notebook server if it was running
during the enable/activate step.## Disabling and Uninstalling
The following steps deactivate the extension in the active Python environment
and uninstall the package using `pip`.```bash
jupyter cms quick-remove --sys-prefix
pip uninstall jupyter_cms
```Note that the first command is a shortcut for the following:
```bash
jupyter nbextension disable --py jupyter_cms --sys-prefix
jupyter nbextension uninstall --py jupyter_cms --sys-prefix
jupyter serverextension disable --py jupyter_cms --sys-prefix
```The following command deactivates and uninstalls the package if it was
installed using `conda`.```bash
conda remove jupyter_cms
```## Write Bundlers
This extension used to support *bundlers*. That functionality has graduated and
is available in Jupyter Notebook >=5.0. See [Custom bundler
extensions](http://jupyter-notebook.readthedocs.io/en/latest/extending/bundler_extensions.html)
in the documentation for more information.If you cannot upgrade to notebook>=5.0 and need bundler support, install a version of
this extension prior to 0.7.0.## Develop It
This repository is setup for a conda-based development environment. These
instructions assume that have you installed `conda`.```
# clone this repo if you don't have it
git clone https://github.com/jupyter-incubator/contentmanagement.git
cd contentmanagement# create a `cms` conda environment
make env# run unit tests
make test# run a notebook server with the extension installed
make notebook# build a source package
make sdist# release the source package on pypi
make release# remove built artifacts
make clean# remove build artifacts and cms environment
make nuke
```## Other Notes
* Importing notebooks as modules does work with ipyparallel, but not with its `sync_imports` context manager. See the [solution and explanation in issue #32](https://github.com/jupyter-incubator/contentmanagement/issues/32#issuecomment-222053318).