Skip to content

About

A cookiecutter recipe for JupyterLab extensions in Typescript

Topics

Resources

Code of conduct

Security policy

Stars

190 stars

Watchers

16 watching

Forks

Latest commit

 

History

332 Commits

Folders and files

Repository files navigation

JupyterLab extension-cookiecutter-ts

Github Actions Status

⚠️ We strongly advice to use the template next generation: https://github.com/jupyterlab/extension-template

A cookiecutter template for creating a JupyterLab extension. Three kinds of extension are supported:

  • frontend: Pure frontend extension written in TypeScript.
  • server: Extension with frontend (in TypeScript) and backend (in Python) parts.
  • theme: Theme for JupyterLab (using CSS variables).

See also extension-cookiecutter-js for an extension in CommonJS.

Use the template to create package

Install cookiecutter.

pip install cookiecutter

Use cookiecutter to generate a package, following the prompts to fill in the name and authorship of your new JupyterLab extension.

cookiecutter https://github.com/jupyterlab/extension-cookiecutter-ts --checkout 4.0

The available options are:

  • kind:
    • frontend --> Extension has only a frontend (TypeScript + CSS) part
    • server --> Extension has frontend and backend (new Python endpoint handlers for the server) parts
    • theme --> Extension provides a new theme (and nothing else)
  • author_name: The extension author name
  • author_email: The extension author email
  • labextension_name: Extension name
  • python_name: Pythonic extension name (if your extension has no server part, it will only be used to distribute the extension as a Python package)
  • project_short_description: Extension short description
  • has_settings: Whether the extension will have user settings or not.
  • has_binder: Whether to set up binder for the extension or not.
  • test: Whether to add test set ups and skeletons for the extension or not
  • repository: Version Control System repository URI

If you'd like to generate a package for a specific JupyterLab release, use the --checkout option and give a tag or commit from this repository.

cookiecutter https://github.com/jupyterlab/extension-cookiecutter-ts --checkout v1.0
cookiecutter https://github.com/jupyterlab/extension-cookiecutter-ts --checkout v2.0
cookiecutter https://github.com/jupyterlab/extension-cookiecutter-ts --checkout 3.0

A simple example

Your new extension includes a very simple example of a working extension. Use this example as a guide to build your own extension. Have a look at the extension examples repository for more information on various JupyterLab features.

About

A cookiecutter recipe for JupyterLab extensions in Typescript

Topics

Resources

Code of conduct

Security policy

Stars

190 stars

Watchers

16 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages