Skip to main content

Custom Streamlit AgGrid component with 0.1.5 and greater having major grid options

Project description

Filter Persist

Filter Persist is a custom Streamlit component that integrates AG Grid and enables persistent filtering using a local JSON file.

Built with care by Parshav Shivnani, this component is ideal for dashboards where user filter preferences need to be retained between sessions. With 0.1.5 version it has majority of AG-Grid builder options

🔧 Features

  • Interactive AG Grid component for Streamlit
  • Filters are saved and restored from a JSON file
  • Simple to integrate in any Streamlit workflow
  • No need for AG Grid enterprise modules

📦 Installation

Install the package from PyPI:

pip install filter-persist

Example using python

import streamlit as st
import pandas as pd
import json
from filter_persist import custom_aggrid

# Sample DataFrame
df = pd.DataFrame({
    "name": ["Alice", "Bob", "Charlie"],
    "age": [25, 30, 30],
})

# Load saved filters from JSON file
try:
    with open("filter_model.json", "r") as f:
        saved_filters = json.load(f)
except FileNotFoundError:
    saved_filters = None

st.title("Filter Persist - AG Grid with JSON Persistence")

# Call the component
result = custom_aggrid(
    data=df.to_dict("records"),
    column_defs=[{"field": c} for c in df.columns],
    filter_model=saved_filters,
)

# Save current filter state to JSON file
if result:
    with open("filter_model.json", "w") as f:
        json.dump(result, f)

# Display current filters
st.subheader("Current Filter Model:")
st.json(result)

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

filter_persist-0.1.5.tar.gz (2.2 MB view details)

Uploaded Source

Built Distribution

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

filter_persist-0.1.5-py3-none-any.whl (4.2 MB view details)

Uploaded Python 3

File details

Details for the file filter_persist-0.1.5.tar.gz.

File metadata

  • Download URL: filter_persist-0.1.5.tar.gz
  • Upload date:
  • Size: 2.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for filter_persist-0.1.5.tar.gz
Algorithm Hash digest
SHA256 7bd90b6cddf255076ac3714013fba2df0f2c746f0486032f746a8e646e434961
MD5 915fb973b3d2dea5d9449d6bb2d8ed25
BLAKE2b-256 38586fb30bbe545056618b2adf94b7a729abb41973800b63307b0cd65a053bf2

See more details on using hashes here.

File details

Details for the file filter_persist-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: filter_persist-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for filter_persist-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 2cebde3e88c5b59cb901c8d45d2dcf32e59d2869fbbc60f179b5a7be9a72d223
MD5 9fcfbbce210fb4880fc2139a41166192
BLAKE2b-256 962aa0817948e2f6bf911341707bd9bc83506dd7009836d3ec960e0bfb0a8f38

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