All Projects → gusutabopb → imongo

gusutabopb / imongo

Licence: MIT License
A MongoDB kernel for Jupyter

Programming Languages

Jupyter Notebook
11667 projects
python
139335 projects - #7 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to imongo

coq jupyter
Jupyter kernel for Coq
Stars: ✭ 70 (+37.25%)
Mutual labels:  kernel, jupyter, jupyter-kernels
Dyalog Jupyter Kernel
A Jupyter kernel for Dyalog APL
Stars: ✭ 26 (-49.02%)
Mutual labels:  kernel, jupyter, jupyter-kernels
Hydrogen
Run code interactively, inspect data, and plot. All the power of Jupyter kernels, inside your favorite text editor.
Stars: ✭ 3,763 (+7278.43%)
Mutual labels:  jupyter, ipython, jupyter-kernels
Enterprise gateway
A lightweight, multi-tenant, scalable and secure gateway that enables Jupyter Notebooks to share resources across distributed clusters such as Apache Spark, Kubernetes and others.
Stars: ✭ 412 (+707.84%)
Mutual labels:  kernel, jupyter, jupyter-kernels
Gophernotes
The Go kernel for Jupyter notebooks and nteract.
Stars: ✭ 3,100 (+5978.43%)
Mutual labels:  kernel, jupyter
ipolyglot
A polyglot kernel for Jupyter notebooks based on GraalVM.
Stars: ✭ 59 (+15.69%)
Mutual labels:  kernel, jupyter
Jupyter C Kernel
Minimal Jupyter C kernel
Stars: ✭ 463 (+807.84%)
Mutual labels:  kernel, jupyter
Sparkmagic
Jupyter magics and kernels for working with remote Spark clusters
Stars: ✭ 954 (+1770.59%)
Mutual labels:  kernel, jupyter
Spylon Kernel
Jupyter kernel for scala and spark
Stars: ✭ 129 (+152.94%)
Mutual labels:  kernel, jupyter-kernels
rk
The remote Jupyter kernel/kernels administration utility
Stars: ✭ 53 (+3.92%)
Mutual labels:  ipython, jupyter-kernels
ipython pytest
Pytest magic for IPython notebooks
Stars: ✭ 33 (-35.29%)
Mutual labels:  jupyter, ipython
vim-jukit
Jupyter-Notebook inspired Neovim/Vim Plugin
Stars: ✭ 55 (+7.84%)
Mutual labels:  jupyter, ipython
Ipython
Official repository for IPython itself. Other repos in the IPython organization contain things like the website, documentation builds, etc.
Stars: ✭ 15,107 (+29521.57%)
Mutual labels:  jupyter, ipython
Lfortran
Official mirror of https://gitlab.com/lfortran/lfortran. Please submit pull requests (PR) there. Any PR sent here will be closed automatically.
Stars: ✭ 220 (+331.37%)
Mutual labels:  jupyter, jupyter-kernels
Halo
💫 Beautiful spinners for terminal, IPython and Jupyter
Stars: ✭ 2,532 (+4864.71%)
Mutual labels:  jupyter, ipython
Best Of Jupyter
🏆 A ranked list of awesome Jupyter Notebook, Hub and Lab projects (extensions, kernels, tools). Updated weekly.
Stars: ✭ 200 (+292.16%)
Mutual labels:  jupyter, jupyter-kernels
gaia
Gaia is a geospatial analysis library jointly developed by Kitware and Epidemico.
Stars: ✭ 29 (-43.14%)
Mutual labels:  jupyter, ipython
Juniper
🍇 Edit and execute code snippets in the browser using Jupyter kernels
Stars: ✭ 189 (+270.59%)
Mutual labels:  jupyter, ipython
Jupyterhub Deploy Teaching
Reference deployment of JupyterHub and nbgrader on a single server
Stars: ✭ 194 (+280.39%)
Mutual labels:  jupyter, ipython
angr-cli
Repo for various angr ipython features to give it more of a cli feeling
Stars: ✭ 41 (-19.61%)
Mutual labels:  jupyter, ipython

imongo

A MongoDB kernel for Jupyter. Mainly for educational purposes.

This kernel wraps the Mongo shell using pexpect and was inspired by bash_kernel and ipython_mysql_kernel. It uses Renderjson for JSON pretty-printing.

IMongo in action

IMongo in action

How to install

Major requirements

IMongo requires Jupyter and MongoDB.

Install MongoDB

On macOS, use Homebrew: brew install mongodb

For other platforms, please refer to the MongoDB documentation

Install Jupyter and IMongo Kernel using pip

To install Jupyter, IMongo and all other dependencies, use pip install:

$ pip install imongo-kernel

Install Jupyter and IMongo Kernel using conda

Although the installation with pip works fine , we recommend using the conda package manager to create a virtual environment. You need to have either Anaconda or Miniconda installed.

$ conda create -n imongo jupyter "python>3.6"
$ source activate imongo
$ pip install imongo-kernel

Both methods install the imongo package and configure Jupyter to be used with the new kernel by installing a kernel spec.

Configuration (optional)

MongoDB configuration such as host/port can be passed as a YAML file, located at the Jupyter configuration directory. The default path for UNIX systems is ~/.jupyter/imongo_config.yml. The options available are the same as the ones available for the mongo CLI tool. This configuration is necessary in case your MongoDB instance has authentication enabled, runs at a non-standard port, or runs on a remote (non-localhost) location.

Sample imongo_config.yml:

host: some.host.io
port: 27017
username: username
password: password
authenticationDatabase: admin
quiet: null

If imongo_config.yml doesn't exist or is empty, IMongo will attempt to connect to the MongoDB instance at localhost:27017, without any user authentication.

Uninstall:

# Remove library:
$ pip uninstall imongo
# Remove kernel spec
$ jupyter kernelspec remove imongo

TODO:

  • Implement code completion functionality
  • Fix long command issue
  • Send Mongo shell Javascript errors/exceptions to stderr
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].