From 3652b3c7aa21492717945b6063ae278030101dd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=AD=E6=B5=A9?= Date: Fri, 15 May 2026 13:14:38 +0800 Subject: [PATCH] Add community contribution templates --- .github/ISSUE_TEMPLATE/bug_report.yml | 55 ++++++++++++++++++++++ .github/ISSUE_TEMPLATE/config.yml | 8 ++++ .github/ISSUE_TEMPLATE/feature_request.yml | 39 +++++++++++++++ .github/ISSUE_TEMPLATE/question.yml | 17 +++++++ .github/pull_request_template.md | 24 ++++++++++ CONTRIBUTING.md | 55 ++++++++++++++++++++++ 6 files changed, 198 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml create mode 100644 .github/ISSUE_TEMPLATE/question.yml create mode 100644 .github/pull_request_template.md create mode 100644 CONTRIBUTING.md diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..cc4bb5c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,55 @@ +name: Bug report +description: Report a reproducible layout, rendering, or workflow bug. +title: "bug: " +labels: ["bug"] +body: + - type: markdown + attributes: + value: | + Thanks for reporting a bug. Screenshots and the generated HTML are the fastest way to make this actionable. + - type: textarea + id: summary + attributes: + label: What happened? + description: Describe the issue clearly. + placeholder: "The footer overlaps the final card on slide 6..." + validations: + required: true + - type: textarea + id: expected + attributes: + label: What did you expect? + placeholder: "The content should stay above the footer." + validations: + required: true + - type: textarea + id: reproduce + attributes: + label: How can we reproduce it? + description: Include the prompt, source document, generated deck, or a minimal example. + placeholder: | + 1. Use this prompt... + 2. Generate a Swiss style deck... + 3. Open slide 6... + validations: + required: true + - type: textarea + id: screenshots + attributes: + label: Screenshots or files + description: Drag screenshots or attach the generated index.html if possible. + - type: input + id: environment + attributes: + label: Environment + placeholder: "Claude Code / Codex / Cursor, macOS 15, Chrome 125..." + - type: dropdown + id: theme + attributes: + label: Theme + options: + - Style A · Editorial magazine + - Style B · Swiss international + - Both / unsure + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..100ecf7 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,8 @@ +blank_issues_enabled: true +contact_links: + - name: Read the README + url: https://github.com/op7418/guizang-ppt-skill#readme + about: Start here for installation and usage. + - name: English README + url: https://github.com/op7418/guizang-ppt-skill/blob/main/README.en.md + about: English installation and usage notes. diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..380f87e --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,39 @@ +name: Feature request +description: Suggest a new layout, workflow, platform, or capability. +title: "feat: " +labels: ["enhancement"] +body: + - type: textarea + id: problem + attributes: + label: What problem would this solve? + description: Please describe the real deck-making situation behind the request. + placeholder: "When making product benchmark decks, I often need..." + validations: + required: true + - type: textarea + id: proposal + attributes: + label: What do you want the Skill to do? + placeholder: "Add a layout for..." + validations: + required: true + - type: textarea + id: examples + attributes: + label: Examples or references + description: Screenshots, links, rough sketches, or deck examples are welcome. + - type: dropdown + id: area + attributes: + label: Area + options: + - Layout / template + - Image generation workflow + - Data visualization + - Installation / packaging + - Documentation + - Runtime interaction + - Other + validations: + required: true diff --git a/.github/ISSUE_TEMPLATE/question.yml b/.github/ISSUE_TEMPLATE/question.yml new file mode 100644 index 0000000..3fe8578 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/question.yml @@ -0,0 +1,17 @@ +name: Question +description: Ask about installation, usage, templates, or generated examples. +title: "question: " +labels: ["question"] +body: + - type: textarea + id: question + attributes: + label: Question + placeholder: "How should I..." + validations: + required: true + - type: textarea + id: context + attributes: + label: Context + description: What have you tried? Which agent and theme are you using? diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..e47588e --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,24 @@ +## Summary + +- + +## What Changed + +- + +## Visual QA + +Please attach screenshots for visual changes. + +- [ ] Checked at least one dense text slide +- [ ] Checked at least one image slide +- [ ] Checked navigation / ESC overview / low-power mode when relevant + +## Validation + +- [ ] `node scripts/validate-swiss-deck.mjs path/to/index.html` +- [ ] Manual browser review + +## Notes + +Any tradeoffs, limitations, or follow-up work: diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..60703ee --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,55 @@ +# Contributing + +Thanks for helping improve `guizang-ppt-skill`. + +This project is a Skill for AI agents that generate polished HTML slide decks. The most useful contributions are specific, reproducible, and tied to real deck output. + +## Before Opening an Issue + +Please check whether the problem belongs to one of these buckets: + +- Layout fidelity: a page drifts away from the registered template. +- Content overflow: text, images, charts, or footers overlap. +- Image workflow: generated images do not match the target slot ratio or deck style. +- Runtime behavior: navigation, ESC overview, low-power mode, map interaction, or animations fail. +- Documentation: installation, prompt usage, layout selection, or examples are unclear. + +Screenshots are much more useful than descriptions alone. If possible, include: + +- The prompt or source content used to generate the deck. +- The generated `index.html`. +- A screenshot of the broken slide. +- Browser and OS information. + +## Pull Request Guidelines + +Keep PRs focused. A small fix with a screenshot is easier to review than a large rewrite. + +For Swiss theme changes: + +- Do not invent new default body layouts unless the change is explicitly discussed. +- Keep the registered layout system intact. +- Run the Swiss validator: + +```bash +node scripts/validate-swiss-deck.mjs path/to/index.html +``` + +For template changes: + +- Verify at least one dense text slide. +- Verify at least one image slide. +- Verify navigation, ESC overview, and low-power mode. + +## Good PRs Usually Include + +- A short summary of the problem. +- The exact files changed. +- Before / after screenshots when visual behavior changes. +- Validation or manual QA notes. + +## Style Notes + +This Skill is opinionated by design. It prefers constrained layout systems over unlimited customization, because constraints make AI-generated decks more reliable. + +When in doubt, preserve the existing visual rules and improve the workflow around them.