A web-based notebook environment for interactive computing, mixing live code, output and text in one document.
jupyter/nbviewer
A Python web service built on nbconvert that renders Jupyter Notebooks from URLs, GitHub, Gists and other sources as static web pages.
Open-source alternative to:nbviewer.org
- Stars
- 2,284
- Forks
- 575
- Open issues
- 204
- Last commit
- yesterday
What is it?
nbviewer is the web application behind the public Jupyter Notebook Viewer site. It takes a notebook from a URL, GitHub repository, Gist, or other supported source and converts it into a static HTML page, so anyone can read the rendered notebook in a browser without installing Jupyter.
The project ships with providers for url, gist, github, huggingface and local files. Rendering is done with nbconvert, and output can also be presented in other formats such as slides or a plain script. It can be run locally with Docker or a Python install, and it supports GitHub OAuth or API tokens for faster GitHub access, as well as GitHub Enterprise instances.
nbviewer can also run as a JupyterHub service, which restricts access to users who have authenticated with the Hub. This is useful for viewing local notebooks privately with the --localfiles option.
Key features
- 01Renders notebooks from URLs, GitHub, Gists, Hugging Face and local files.
- 02Built on nbconvert, with HTML, slides and script output formats.
- 03Runs locally via Docker Compose or a Python install with memcached caching.
- 04Supports GitHub OAuth, API tokens and GitHub Enterprise.
- 05Can run as a JupyterHub service to restrict access to authenticated users.
Use cases
- Hosting an internal notebook viewer for a team on its own network.
- Sharing rendered notebooks from a GitHub repository without requiring Jupyter installs.
- Browsing private notebooks on a GitHub Enterprise instance.
- Protecting local notebooks behind JupyterHub authentication.
Quick start
- 1
Pull the Docker image
docker pull jupyter/nbviewer - 2
Run the container and open port 8080
docker run -p 8080:8080 jupyter/nbviewer
Things to know
- The license could not be identified automatically, so check the repository's license terms before reuse.
- Running locally needs several system packages such as pandoc and libmemcached, plus a Python environment.
- For fast GitHub access you should configure GitHub OAuth keys or an API token.
In collections
Topics
FAQ
- What is nbviewer?
- A Python web service built on nbconvert that renders Jupyter Notebooks from URLs, GitHub, Gists and other sources as static web pages. nbviewer is the web application behind the public Jupyter Notebook Viewer site. It takes a notebook from a URL, GitHub repository, Gist, or other supported source and converts it into a static HTML page, so anyone can read the rendered notebook in a browser without installing Jupyter.
- Is nbviewer free to use? What license does it have?
- nbviewer is open source under the Other license. Check the license terms before using it in commercial products.
- Is nbviewer still maintained?
- Actively maintained. The last commit to nbviewer was on Nov 5, 2026.
- What can I use nbviewer for?
- Hosting an internal notebook viewer for a team on its own network. Sharing rendered notebooks from a GitHub repository without requiring Jupyter installs. Browsing private notebooks on a GitHub Enterprise instance. Protecting local notebooks behind JupyterHub authentication.
- How do I install nbviewer?
- Pull the Docker image: docker pull jupyter/nbviewer Run the container and open port 8080: docker run -p 8080:8080 jupyter/nbviewer
- Where can I get nbviewer?
- The source code and installation instructions are on GitHub: https://github.com/jupyter/nbviewer
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Turns a Jupyter notebook into an interactive, shareable web app with widgets and reactive re-execution, without writing a frontend.
Enterprise Jupyter notebook sharing and collaboration platform built as a Ruby on Rails application, backed by MySQL and OpenSearch.
Ready-to-run Docker images bundling JupyterLab, Jupyter Notebook and common scientific Python tools for personal or team use.
Stores Jupyter notebooks as plain Markdown or Python, Julia, R scripts so they diff and version cleanly in Git.
Turns Jupyter notebooks into standalone web applications, with each user getting their own kernel for interactive widgets.