# Announcing the nbgitpuller Link Generator browser extensions

**URL:** <https://discourse.jupyter.org/t/announcing-the-nbgitpuller-link-generator-browser-extensions/11701>\
**Category:** JupyterHub\
**Tags:** announcement\
**Created:** [November 16, 2021, 2:17pm UTC](https://discourse.jupyter.org/t/announcing-the-nbgitpuller-link-generator-browser-extensions/11701 "2021-11-16T14:17:16Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![yuvipanda](https://yyz1.discourse-cdn.com/flex031/user_avatar/discourse.jupyter.org/yuvipanda/32/17_2.png) [@yuvipanda](https://discourse.jupyter.org/u/yuvipanda)\
**Post date:** [November 16, 2021, 2:17pm UTC](https://discourse.jupyter.org/t/announcing-the-nbgitpuller-link-generator-browser-extensions/11701/1 "2021-11-16T14:17:16Z")

</div>

Cross posting from [my blog](https://words.yuvi.in/post/nbgitpuller-link-generator-extension/).

[nbgitpuller](https://jupyterhub.github.io/nbgitpuller) is my most favorite way to distribute content (notebooks, data files, etc) to students on a JupyterHub. The student mental model is ‘I click a link, and can start working on my notebook’, which is as close to ideal as we have today. That is possible since _all_ the information required for this workflow is embedded in the link itself - so it can be distributed easily via your pre-existing communication channel (like email, [course website](http://data8.org/sp21/), etc), rather than requiring your students to use yet another tool.

However, _creating_ these links often been a bit clunky and error prone. The current [link generator](https://jupyterhub.github.io/nbgitpuller/link) is pretty awesome, but requires a lot of manual copy pasting, and is prone to errors. Particularly problematic was the GitHub switching of the default branch from `master` to `main`, which really caused problems for many instructors.

To make life easier, I’ve now written a browser extension that lets you create these links straight from the GitHub interface!

On the GitHub page for files, folders and repositories, it adds an ‘nbgitpuller’ button.

 ![screenshot-button](https://canada1.discourse-cdn.com/flex031/uploads/jupyter/original/2X/f/f98b844bb744255c1361d8fa891182adb9047ac7.png)

On clicking this, you can enter a JupyterHub URL and the application you want to use to open this file, folder or repository. Then you can just copy the nbgitpuller URL, and share it with your students!

 ![screenshot-popover](https://canada1.discourse-cdn.com/flex031/uploads/jupyter/original/2X/d/d6b1685618520515d3ba27e96c9b31a6def014f2.png)

The JupyterHub URL and application you choose are remembered, so you do not need to enter it over and over again.

## How to install?

### On Mozilla Firefox

I ❤ Mozilla Firefox, and you can install the extension there easily from the official [addons store](https://addons.mozilla.org/en-US/firefox/addon/nbgitpuller-link-generator/). You’ll also get automatic updates with new features and bug fixes this way.

### On Google Chrome

On Google Chrome / Chromium, I have submitted the extension to the Chrome Web Store - but apparently there is a manual review process, and it can take _weeks_. In the meantime, you can install it with the following steps

1. Download the `.zip` version of the latest [release](https://github.com/yuvipanda/nbgitpuller-link-generator/releases) of the extension. You want the file named `nbgitpuller_link_generator-<version>.zip`.
2. Extract the `.zip` file you downloaded.
3. In your Google Chrome / Chromium, go to chrome://extensions.
4. Enable the _Developer Mode_ toggle in the top right. This should make a few options visible in a new toolbar.
5. Select _Load Unpacked_, and select the directory into which the downloaded `.zip` file was extracted to. This directory should contain at least a `manifest.json` file that was part of the `.zip` file.

### Other browsers

The extension is written as a [WebExtension](https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions), so should work easily in other browsers - Safari, Edge, etc. However, since I do not use them myself, I don’t have instructions on how to add them there. However, if you do use those browsers, I’d [love contributions](https://github.com/yuvipanda/nbgitpuller-link-generator-webextension) on how to install the extension there!

## Contribute!

The extension was a overnight hack, and it made me _very_ happy to get it shipped. There is a _lot_ of room for improvement - I would love for you to provide feedback and contribute in any way possible [on GitHub](https://github.com/yuvipanda/nbgitpuller-link-generator-webextension)
