posit-dev / posit-dev/ggsql

Plans for palette/scale extension API?

Open
#358 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

plot building
Dominant language
Rust
Stars
554
Forks
30
Avg merge
17h 27m
Merged PRs (30d)
8

Description

I'm exploring the possibility for custom color scales in ggsql. From the current codebase, palette names seem to be resolved in core, so external packages can't cleanly register new palettes without patching ggsql. Do you have any plans for an extension API, such as a palette registry, provider trait, or plugin system?

My goal is to port ggsci/py-ggsci in a way that would work cleanly across ggsql and its Python/R bindings. Some palettes in ggsci are also generative rather than just static color arrays, so a properly programmable extension point would be especially useful, for example, extensions as Rust crates.

Thanks!

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing how palette names are resolved in the core codebase and how the Python and R bindings expose palettes. Compare those entry points with the static and generative palette requirements described for ggsci; done would require an agreed extension API design, including how external Rust crates can provide palettes.

Written by the indexing model from the issue text.

Assessment

Tech stack
python, r, rust
Domain
backend-api-design
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.