Add canonical examples for the marketing SDK pages - #91
Draft
Jonesy464 wants to merge 1 commit into
Draft
Conversation
Jonesy464
force-pushed
the
rj/3646-canonical-examples
branch
from
August 20, 2026 23:08
3dc5aed to
7728e01
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part of anvilco/marketing-site#3646 (SDK repos own their code examples; the central anvil-api-usage-examples repo is being sunset).
Renames the overlapping examples to the canonical names the marketing SDK pages source at build (the sourcing shipped with anvilco/marketing-site#3617 scans
examples/and kebab-cases each basename into a concept, sogenerate_markdown.pyserves thegenerate-markdownpage):fill_pdf.py->fill.pygenerate_pdf.py->generate_markdown.py(markdown-only; the HTML variant gets its own file)generate_html.pycreate_etch_existing_cast.py->create_etch_packet.pyThe other examples (workflow, GraphQL, uploads, forge) are untouched. Content refresh along the way:
field_idwas the placeholderdef456, which doesn't exist on the sample template; nowsignature(verified live).add_file_payloadsbefore sending, matching the JS/TS examples, and takes the signer email fromSIGNER_EMAIL.Verification:
isort,black,pylint, andpydocstyleall pass at the poetry.lock-pinned versions.mypyreports only the pre-existingEtchSignerfalse positive that also fires on untouched examples under a newer pydantic; CI's pinned env is unaffected.is_test=True,is_draft=False).deriveLanguageExamplesresolves the four canonical concepts from this directory.