All Projects → microsoft → Gather

microsoft / Gather

Licence: mit
Spit shine for Jupyter notebooks 🧽✨

Projects that are alternatives of or similar to Gather

Jupyterlab Lsp
Coding assistance for JupyterLab (code navigation + hover suggestions + linters + autocompletion + rename) using Language Server Protocol
Stars: ✭ 796 (+124.23%)
Mutual labels:  jupyter-notebook, jupyterlab-extension
Jupyter Renderers
Renderers and renderer extensions for JupyterLab
Stars: ✭ 395 (+11.27%)
Mutual labels:  jupyter-notebook, jupyterlab-extension
Awesome Jupyter
A curated list of awesome Jupyter projects, libraries and resources
Stars: ✭ 2,523 (+610.7%)
Mutual labels:  jupyter-notebook, jupyterlab-extension
Jupytext
Jupyter Notebooks as Markdown Documents, Julia, Python or R scripts
Stars: ✭ 4,969 (+1299.72%)
Mutual labels:  jupyter-notebook, jupyterlab-extension
Gator
Conda environment and package management extension from within Jupyter
Stars: ✭ 143 (-59.72%)
Mutual labels:  jupyter-notebook, jupyterlab-extension
Nbdime
Tools for diffing and merging of Jupyter notebooks.
Stars: ✭ 2,135 (+501.41%)
Mutual labels:  jupyter-notebook, jupyterlab-extension
Best Of Jupyter
🏆 A ranked list of awesome Jupyter Notebook, Hub and Lab projects (extensions, kernels, tools). Updated weekly.
Stars: ✭ 200 (-43.66%)
Mutual labels:  jupyter-notebook, jupyterlab-extension
Noisereduce
Noise reduction in python using spectral gating (speech, bioacoustics, time-domain signals)
Stars: ✭ 347 (-2.25%)
Mutual labels:  jupyter-notebook
Machine Learning Code Writing
Mathematical derivation and pure Python code implementation of machine learning algorithms.
Stars: ✭ 350 (-1.41%)
Mutual labels:  jupyter-notebook
Notebooks
collection of iPython notebooks
Stars: ✭ 349 (-1.69%)
Mutual labels:  jupyter-notebook
Nbval
A py.test plugin to validate Jupyter notebooks
Stars: ✭ 347 (-2.25%)
Mutual labels:  jupyter-notebook
Tensorflow Tutorials Chinese
TensorFlow 中文教程 (Chinese Tutorials)
Stars: ✭ 349 (-1.69%)
Mutual labels:  jupyter-notebook
Deep Learning With Pytorch
Deep Learning with PyTorch, published by Packt
Stars: ✭ 352 (-0.85%)
Mutual labels:  jupyter-notebook
Ml cheat sheet
My notes and superstitions about common machine learning algorithms
Stars: ✭ 349 (-1.69%)
Mutual labels:  jupyter-notebook
Meta Rl
Implementation of Meta-RL A3C algorithm
Stars: ✭ 355 (+0%)
Mutual labels:  jupyter-notebook
Recommendsystempractice
《推荐系统实践》代码实现
Stars: ✭ 349 (-1.69%)
Mutual labels:  jupyter-notebook
Prospr
ProSPr: Protein Structure Prediction
Stars: ✭ 355 (+0%)
Mutual labels:  jupyter-notebook
Pytorch Tvmisc
Totally Versatile Miscellanea for Pytorch
Stars: ✭ 354 (-0.28%)
Mutual labels:  jupyter-notebook
Convolutional neural network
This is the code for "Convolutional Neural Networks - The Math of Intelligence (Week 4)" By Siraj Raval on Youtube
Stars: ✭ 352 (-0.85%)
Mutual labels:  jupyter-notebook
Magnet
Deep Learning Projects that Build Themselves
Stars: ✭ 351 (-1.13%)
Mutual labels:  jupyter-notebook

nbgather: 🧽✨ Spit shine for Jupyter notebooks

Tools for cleaning code, recovering lost code, and comparing versions of code in Jupyter Lab.

Download the alpha extension with the following command:

jupyter labextension install nbgather

Then you can clean and compare versions of your code like so:

Code gathering tools can help you clean your code and review versions of results.

Want to try it out first? Play around with nbgather on an example notebook on BinderHub.

Did the install fail? Make sure Jupyter Lab is up-to-date, and that you are running Jupyter Lab from Python 3.

This project is in alpha: The code this collects will sometimes be more than you want. It saves your a history of all code you've executed and the outputs it produces to the notebook's metadata. The user interface has a few quirks.

Help us make this a real, practical, and really useful tool. We welcome any and all feedback and contributions. We are particularly in need of the opinions and efforts of those with a penchant for hacking code analysis.

Usage Tips

Can it extract more precise slices of code? Yes. First submit a pull request telling us the desired extraction behavior, so we can incorporate this behavior into the tool.

Meanwhile, you can help the backend make more precise slices by telling the tool which functions don't modify their arguments. By default, the tool assumes that functions change all arguments they're called with, and the objects they're called on, with exceptions for some common APIs. To edit the slicing rules, open the Advanced Settings Editor in the Jupyter Lab Settings menu and choose the "nbgather" tab. In your user-defined settings, override moduleMap, following this format to specify which functions don't modify their arguments.

How do I clear the notebook's history? Open up your .ipynb file in a text editor, find the history key in the top-level metadata object, and set history to [].

Contributing

To run the development version of nbgather, run:

git clone <this-repository-url>  # clone the repository
npm install                      # download dependencies
jupyter labextension link .      # install this package in Jupyter Lab
npm run watch                    # automatically recompile source code
jupyter lab --watch              # launch Jupyter Lab, automatically re-load extension

This requires npm version 4 or later, and was tested most recently with Node v9.5.0.

Submit all change as a pull request. Feel free to author the the lead contributor (Andrew Head, [email protected]) if you have any questions about getting started with the code or about features or updates you'd like to contribute.

Also, make sure to format the code and test it before submitting a pull request, as described below:

Formatting the code

Before submitting a pull request with changed code, format the code files by running npm run format:all.

Testing the code

To run the tests from the command line, call:

npm run test

The first time you run tests, they will take about a minute to finish. The second time, and all subsequent times, the tests will take only a few seconds. The first test run takes longer because the Jest test runner transpiles dependencies like the '@jupyterlab' libraries into a dialect of JavaScript it expects before running the tests.

Troubleshooting

Here are some tips for dealing with build errors we've encountered while developing code gathering tools:

  • Errors about missing semicolons in React types files: upgrade the typescript and ts-node packages
  • Conflicting dependencies: upgrade either the Python Jupyter Lab (may require Python upgrade to Python 3 to get the most recent version of Jupyter Lab) or the Jupyter Lab npm pacakges
  • Other build issues: we've found some issues can be solved by just deleting your node_modules/ directory and reinstalling it.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].