Skip to main content

Magic commands for MongoDB in Google Colab using mongosh.

Project description

Mongo Magic for Jupyter

A lightweight Jupyter/Colab magic extension to execute mongosh commands directly in notebook cells.

Installation

You can install this package via pip:

!pip install colab-mongo-magic

Usage

Once installed, load the extension in your notebook:

%load_ext mongomagic
  1. Connection Management Set your connection string by running the magic command without a cell body: Jump to Local Server setup to learn how to test it locally.
%%mongo mongodb://localhost:27017/my_database

To check the current connection, run %%mongo without arguments. 2. Execute Queries Run standard mongosh commands in a cell:

%%mongo
db.users.find().limit(5)

💡 Tip: Enable Syntax Highlighting

Since mongosh is based on JavaScript, you can easily trick the Colab/Jupyter editor into providing JavaScript syntax highlighting. Just add %%js right after the cell magic. The extension will safely ignore it during execution, but your code will look much better!

%%mongo %%js

db.users.insertMany([
  { name: "Ana", age: 28, role: "admin" },
  { name: "Luis", age: 35, role: "user" }
])

3. Automatic Pandas Conversion
   Enable automatic conversion of query results to a Pandas DataFrame by using the configuration magic:

```python
%config MongoMagic.autopandas = True

Install Local Server for testing purposes

To run a full MongoDB server locally (e.g., in a Linux environment or Google Colab), follow these steps:

  1. Add MongoDB Repository
%%bash
wget -qO - https://www.mongodb.org/static/pgp/server-7.0.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-server-7.0.gpg
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
  1. Update and Install
%%bash
sudo apt-get update
sudo apt-get install -y mongodb-org
  1. Configure Data Directory
%%bash
sudo mkdir -p /data/db
sudo chown -R `id -un` /data/db
  1. Start the Server
%%bash
mongod --fork --logpath /var/log/mongodb/mongod.log --dbpath /data/db

Features

  • Auto-installation: Automatically installs the mongosh binary when running in Google Colab.
  • Seamless Integration: Uses mongosh native engine to ensure full compatibility with MongoDB syntax.
  • Pandas Support: Cleanly transforms JSON output from MongoDB into ready-to-use DataFrames.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

colab_mongo_magic-0.1.1.tar.gz (3.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

colab_mongo_magic-0.1.1-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

Details for the file colab_mongo_magic-0.1.1.tar.gz.

File metadata

  • Download URL: colab_mongo_magic-0.1.1.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.8

File hashes

Hashes for colab_mongo_magic-0.1.1.tar.gz
Algorithm Hash digest
SHA256 f1a2e6020459ad9d7cc33fe23204b11e2d5020018dde5982cb2b9a6fb1edeb54
MD5 0468859016ca12d9fe2aa933819944dc
BLAKE2b-256 bb9c6b51c543a764aceeee647c9a6fb72656d6a7d82c510416b9a9722f5513c6

See more details on using hashes here.

File details

Details for the file colab_mongo_magic-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for colab_mongo_magic-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bf79262a560075d450b63a72a62bec2b82735b878ea396aa2cf3ca88a0e4c42b
MD5 8ef60bfdd203f66ebc6bcbb3f68bac03
BLAKE2b-256 055c890202cd655ea822f6c6b1cfac2c2a76b6042291bcb1525fd3bb2619cb99

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page