Skip to content

Make it easier to statically embed buckaroo #553

@paddymul

Description

@paddymul

Checks

  • I have checked that this enhancement has not already been requested

How would you categorize this request. You can select multiple if not sure

Other (please describe in Issue Description)

Enhancement Description

Currently to get the real buckaroo experience you need the notebook or a tornado server. This is a heavyweight ask for embedding. For many usecases notably streamlit and xorq integration a simpler experience is desired. This will be a static only buckaroo expreience

Note, initially search, sort, postprocessing functions and the lwocode ui wont work on this experience. search and sort are probably easy to add back in as JS only features.

Pseudo Code Implementation

the user should call prepare_buckaroo_artifact(df:pd.DataFrame|pl.DataFrame|Path('parquet_file')) which produces a single json or b64 encoded string to be served to buckaroo by the frontend.

on the frontend you should be able to call a react component with
<BuckarooTable config={...} artifact={prepared_artifact}/>

Prior Art

I'll just use this for questions.

I have a PR exploring apache flechette and removing hyparquet. #546
I would imagine that parquet is a notably better storage format than flechette, but this needs to be proven out.

Summary stats need to be packaged into the same object.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions