Skip to content

docs: add "Have It Your Way" plugin dev note#608

Open
johnnygreco wants to merge 7 commits intomainfrom
johnny/docs/plugins-dev-note
Open

docs: add "Have It Your Way" plugin dev note#608
johnnygreco wants to merge 7 commits intomainfrom
johnny/docs/plugins-dev-note

Conversation

@johnnygreco
Copy link
Copy Markdown
Contributor

@johnnygreco johnnygreco commented May 6, 2026

Summary

Adds a new dev note introducing Data Designer's plugin framework now that plugins have graduated out of experimental mode. The PR is now rebased onto main and targets main directly instead of the former stacked plugin-docs branch.

Changes

Added

Changed

  • Adds the new dev note to the MkDocs navigation in mkdocs.yml
  • Adds reusable devnote dek and floated-image styling in docs/css/style.css
  • Keeps the existing cleanup that removes redundant quotes from two devnote nav labels

Attention Areas

Reviewers: Please pay special attention to the following:

  • have-it-your-way.md - review the plugin framing, example code, and links into the plugin docs and recipe pages.
  • style.css - review the new reusable devnote image/dek styling across desktop and mobile widths.

Description updated with AI

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented May 6, 2026

Docs preview: https://a5eb01eb.dd-docs-preview.pages.dev

Notebook tutorials are placeholder-only in previews.

@johnnygreco johnnygreco force-pushed the johnny/docs/plugins-out-of-experimental-mode branch from c49880f to aae652e Compare May 6, 2026 20:33
@johnnygreco johnnygreco marked this pull request as ready for review May 6, 2026 22:08
@johnnygreco johnnygreco requested a review from a team as a code owner May 6, 2026 22:08
@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented May 6, 2026

Greptile Summary

This PR adds a new "Have It Your Way" dev note documenting the Data Designer plugin framework, along with supporting CSS utilities and a navigation update in mkdocs.yml. It also cleans up a previously flagged url_download: true setting from the snippets preprocessor config.

  • New dev note (have-it-your-way.md): a 265-line walkthrough covering plugin boundaries, a complete markdown-section seed reader example, the local-first development workflow, and the new DataDesignerPlugins GitHub repo; all five internal relative links point to existing files.
  • New CSS utilities (style.css): adds devnote-dek, devnote-float-right, devnote-section-graphic, devnote-clear, and devnote-hide-in-index helper classes with a 60 em mobile breakpoint that collapses floated images to full width.
  • mkdocs.yml: registers the new nav entry, strips unnecessary quotes from two existing nav labels, and removes url_download: true.

Confidence Score: 5/5

Safe to merge — documentation and styling only, with no functional code changes.

All changed files are docs, CSS, and build config. Internal relative links in the new dev note all resolve to existing files. The CSS additions are scoped utilities with a clean mobile breakpoint. The mkdocs.yml change correctly removes the previously flagged snippets setting and adds the new nav entry without disturbing anything else.

No files require special attention.

Important Files Changed

Filename Overview
docs/devnotes/posts/have-it-your-way.md New dev note introducing the plugin framework; all internal relative links resolve correctly to existing files in docs/plugins/ and docs/recipes/plugin_development/.
docs/css/style.css Adds reusable devnote-dek, devnote-float-right, devnote-section-graphic, devnote-clear, and devnote-hide-in-index classes with appropriate responsive breakpoint handling at 60em.
mkdocs.yml Adds new dev note to nav, removes unnecessary quotes from two existing nav labels, and removes url_download: true from the snippets extension (addressing a previously raised concern).

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A[User installs plugin package] --> B[Entry point registers Plugin descriptor]
    B --> C{Data Designer discovers plugin}
    C --> D[Seed Reader Plugin\nMarkdownSectionSeedSource]
    C --> E[Column Generator Plugin\ncustom column types]
    C --> F[Processor Plugin\nexport / transform]
    D --> G[build_manifest\nlight index of candidates]
    G --> H[hydrate_row\nparse & fan-out selected rows]
    E --> I[generate column values\nduring dependency ordering]
    F --> J[transform records\nbefore or after generation]
    H --> K[Data Designer pipeline\nvalidation · batching · model calls · output]
    I --> K
    J --> K
Loading

Reviews (3): Last reviewed commit: "docs: remove unused snippet URL download..." | Re-trigger Greptile

Comment thread mkdocs.yml Outdated
johnnygreco and others added 6 commits May 6, 2026 22:15
Introduces a dev note covering Data Designer's plugin framework:
seed reader, column generator, and processor extension points,
with packaging and entry-point examples.
YAML does not require quoting these titles — removing them keeps the
nav entries consistent with the surrounding lines.
- Refine the intro, customization, and authoring sections
- Add wrapped devnote imagery and shared image styling
- Link readers to plugin implementation references
@johnnygreco johnnygreco force-pushed the johnny/docs/plugins-dev-note branch from f3bd9b9 to 9dbb9e5 Compare May 6, 2026 22:18
@johnnygreco johnnygreco changed the base branch from johnny/docs/plugins-out-of-experimental-mode to main May 6, 2026 22:18
Copy link
Copy Markdown
Contributor

@nabinchha nabinchha left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added one minor comment/question. Also should this post mention custom column generator somewhere?


from typing import Literal

from data_designer.config.seed_source import FileSystemSeedSource
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should we encourage the dd pattern here too?

import data_designer.config as dd


class MarkdownSectionSeedSource(dd.FileSystemSeedSource):

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants