Giter Site home page Giter Site logo

samarth-nagar / nbpreview Goto Github PK

View Code? Open in Web Editor NEW

This project forked from paw-lu/nbpreview

0.0 0.0 0.0 5.13 MB

A terminal viewer for Jupyter notebooks. It's like cat for ipynb files.

Home Page: https://nbpreview.readthedocs.io/

License: MIT License

Python 74.65% Jupyter Notebook 25.28% Jinja 0.07%

nbpreview's Introduction

nbpreview light logo nbpreview dark logo

nbpreview

Checked with mypy PyPI Status Python Version License Read the documentation at https://nbpreview.readthedocs.io/ Tests Codecov pre-commit Black Imports: isort security: bandit

A terminal viewer for Jupyter notebooks. It's like cat for ipynb files.

Hero image

Documentation

nbpreview's documentation contains a detailed breakdown of its features, command-line usage, and instructions on how to configure the tool.

Requirements

  • Python 3.8+

Installation

nbpreview can be installed through pipx or pip from PyPI.

pipx provides an easy way to install Python applications in isolated environments. See the documentation for how to install pipx.

% pipx install nbpreview

If pipx is not installed, nbpreview may also be installed via pip:

% python -m pip install nbpreview

Features

Material theme syntax highlighting

Markdown render

Block drawing of image

DataFrame render

DataFrame render

LaTeX render

HTML render

Hyperlink renders

Stderr render

Traceback render

Try it out

Assuming curl and pipx are installed, nbpreview may be tried out on the terminal by running:

% curl https://raw.githubusercontent.com/paw-lu/nbpreview/main/docs/example_notebook_cells/hero_notebook.ipynb | pipx run nbpreview

Usage

To use nbpreview, type nbpreview into your terminal followed by the path of the notebook you wish to view.

% nbpreview notebook.ipynb

See the command-line reference for details on options.

Contributing

Contributions are very welcome. To learn more, see the contributor guide.

License

Distributed under the terms of the MIT license, nbpreview is free and open source software.

Issues

If you encounter any problems, please file an issue along with a detailed description.

Prior art

Similar tools

Thanks to @joouha for maintaining a list of these tools. Many of the projects here were found directly on their page.

Complimentary tools

If you're interested in complimentary tools that help improve the terminal experience for notebooks, there are many amazing projects out there.

  • bat is not a tool for notebooks specifically. But similar to nbpreview, it provides a rich output for many types of files on the terminal, and is the primary inspiration for nbpreview.
  • euporie is a really exciting project that allows you to edit and run Jupyter notebooks on the terminal.
  • nbclient is a library for executing notebooks from the command line.
  • nbpreview is another project that coincidentally shares a name with this one. It allows for Jupyter notebooks to be rendered without running a notebook server.
  • nbqa allows the use of linters and formatters on notebooks. It's also used by this project.
  • jpterm is and up-and-coming successor to nbterm which will be accompanied by a web client. Looking forward to seeing this develop.
  • nbtermix is an actively-developed fork of nbterm.
  • nbterm lets you edit and execute Jupyter Notebooks on the terminal.
  • papermill allows the parameterization and execution of Jupyter Notebooks.

Credits

nbpreview relies on a lot of fantastic projects. Check out the dependencies for a complete list of libraries that are leveraged.

Besides the direct dependencies, there are some other projects that directly enabled the development of nbpreview.

  • bat is not explicitly used in this project, but served as the primary inspiration. This projects strives to be bat—but for notebooks. Many of nbpreview's features and command-line options are directly adopted from bat.
  • Hypermodern Python Cookiecutter is the template this project was generated on. It is a fantastic project that integrates Poetry, Nox, and pre-commit. It's responsible for most of this project's CI.
  • justcharts is directly used by this project to generate the Vega and Vega-Lite charts.

nbpreview's People

Contributors

paw-lu avatar dependabot[bot] avatar waylonwalker avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.