Skip to main content

A clean, interactive Google Sheet explorer for Colab (Jadwal)

Project description

ipyjadwal 📊

PyPI version License: MIT Python Code style: black

ipyjadwal (derived from the Arabic Jadwal جَدْوَل meaning "Table" or "Schedule") is a clean, interactive Jupyter widget for browsing Google Sheets directly inside Google Colab or Jupyter Notebooks.

It simplifies the workflow of selecting spreadsheets, switching sheets, and previewing DataFrames without writing repetitive boilerplate code.

🚀 Quick Start

Installation

pip install ipyjadwal

Basic Usage

ipyjadwal handles the UI, but you must provide the authentication (standard for security reasons).

from google.colab import auth
from google.auth import default
import gspread
import ipyjadwal

# 1. Authenticate with Google
auth.authenticate_user()
creds, _ = default()
gc = gspread.authorize(creds)

# 2. Launch the Jadwal widget
widget = ipyjadwal.Jadwal(gc)
widget.show()

For Jupyter Notebooks (local), you'll need to set up your Google credentials file:

import gspread
from oauth2client.service_account import ServiceAccountCredentials
import ipyjadwal

scope = ['https://spreadsheets.google.com/feeds', 'https://www.googleapis.com/auth/drive']
creds = ServiceAccountCredentials.from_json_keyfile_name('credentials.json', scope)
gc = gspread.authorize(creds)

widget = ipyjadwal.Jadwal(gc)
widget.show()

✨ Features

  • 🔍 Dropdown Interface
    Browse your Google Drive spreadsheets using a searchable dropdown menu.

  • 📑 Instant Sheet Switching
    Automatically loads available worksheets when a file is selected.

  • 🐼 Pandas Preview
    Instantly preview the head of the selected sheet as a Pandas DataFrame.

  • 🔄 Refresh Capability
    Reload your file list or sheet data with a single click.

  • 🎯 Zero Boilerplate
    No need to write repetitive code for browsing and switching between sheets.

🔧 Documentation

API Reference

Jadwal(gc)

Main widget class for browsing Google Sheets.

Parameters:

  • gc (gspread.Client): An authorized gspread client instance

Methods:

  • show(): Display the interactive widget

Example:

widget = ipyjadwal.Jadwal(gc)
widget.show()

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

📞 Support

If you encounter any issues or have questions, please:

  • Open an issue on GitHub Issues
  • Check existing issues and discussions

🙏 Acknowledgments

🔗 Links

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

ipyjadwal-0.1.0.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

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

ipyjadwal-0.1.0-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

Details for the file ipyjadwal-0.1.0.tar.gz.

File metadata

  • Download URL: ipyjadwal-0.1.0.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for ipyjadwal-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b5aaf4ff0eaa2b9042589642fe052a92f4168d72459a3e8725a80cbe11e96387
MD5 c55fa42ce63b5834f1e01ccca7d82866
BLAKE2b-256 6724f31214003826f1e7c8074390593c76054553535ddbe35b92c04c82741c58

See more details on using hashes here.

File details

Details for the file ipyjadwal-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: ipyjadwal-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for ipyjadwal-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2e8117a0bd4ded51b43cbf2d706f082b9b81d8387e2527dafe08264d3169f290
MD5 3afd1d5cfeb3e80e927f9ee95137a078
BLAKE2b-256 6a55722a7c1cbd67d92c31a42f229ac723db841870a96965b5b3b610b9a5d73c

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