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.

Installation

pip install ipyjadwal

Usage

import ipyjadwal

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

# Access selected data as pandas DataFrame
df = widget.df

# Write updates back using gspread
widget.sheet.update_cell(1, 1, "New Value")

For local Jupyter Notebooks, provide a gspread client:

import gspread
import ipyjadwal

gc = gspread.service_account("credentials.json")
widget = ipyjadwal.Jadwal(client=gc)
widget.show()

✨ Features

  • 🔍 Interactive Dropdown
    Browse all your Google Drive spreadsheets through a clean, searchable dropdown interface.

  • 📑 Seamless Sheet Navigation
    Automatically loads and displays all available worksheets when you select a spreadsheet—no manual loading required.

  • 🐼 Live DataFrame Preview
    Instantly preview your data as a pandas DataFrame with automatic updates as you switch between sheets.

  • 📊 Full Data Access
    Access the complete sheet data via widget.df for analysis, transformations, and visualization.

  • ✏️ Full gspread Access
    Access all gspread functionality via widget.sheet (e.g., update cells, append rows, format ranges).

  • 🔄 One-Click Refresh
    Reload your file list or refresh sheet data with a single button click.

  • 🔀 Flexible Sorting
    Sort spreadsheets by name (ascending/descending) or leave untouched to preserve Google Sheets' default order.

  • 🎯 Zero Boilerplate
    Skip repetitive setup code—import, instantiate, and start exploring your data immediately.

🔧 Documentation

API Reference

Jadwal(client=None, sort_method="default")

Main widget class for browsing Google Sheets.

Parameters

  • client (optional): An authorized gspread client. If None, attempts automatic authentication in Google Colab.
  • sort_method: "default" (default), "asc", or "dsc" — Sort order for the file list.

Properties

  • df: pandas DataFrame containing the full data from the currently selected sheet.
  • sheet: gspread worksheet object for the currently selected sheet — use this to write back to Google Sheets.

Methods

  • show(): Display the interactive widget.

Links

License

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

Acknowledgments

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.51.tar.gz (5.4 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.51-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ipyjadwal-0.1.51.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ipyjadwal-0.1.51.tar.gz
Algorithm Hash digest
SHA256 48b1842611b51a192c2e9b24a380160f0c5c27ddf55a355a322d2dbecc4bd8f0
MD5 a4df8ac16a0a7d8d4242497a4bba81ef
BLAKE2b-256 bceb6d028c1571075be0ffea0a63b388b780a0f112abd28a0a69f9fe60d43bb6

See more details on using hashes here.

Provenance

The following attestation bundles were made for ipyjadwal-0.1.51.tar.gz:

Publisher: publish.yml on marzzuki/ipyjadwal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

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

File metadata

  • Download URL: ipyjadwal-0.1.51-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ipyjadwal-0.1.51-py3-none-any.whl
Algorithm Hash digest
SHA256 0da5f0a410dbb9a49230c7d584d9a58232a475e2cf917d90427184c395cd92e2
MD5 e59186e5306ecfc7105aacae9c290e74
BLAKE2b-256 dcd91756c544b2e2a1e47f5027c61ef8aa19752585c3953fc2c5d273810b88e6

See more details on using hashes here.

Provenance

The following attestation bundles were made for ipyjadwal-0.1.51-py3-none-any.whl:

Publisher: publish.yml on marzzuki/ipyjadwal

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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