@nguyenphp/antigravity-marketing 1.0.16 → 1.0.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +187 -74
- package/bin/index.js +4 -4
- package/package.json +4 -3
- package/templates/.agent/agents/backend-specialist.md +263 -0
- package/templates/.agent/agents/database-architect.md +226 -0
- package/templates/.agent/agents/debugger.md +225 -0
- package/templates/.agent/agents/devops-engineer.md +242 -0
- package/templates/.agent/agents/documentation-writer.md +104 -0
- package/templates/.agent/agents/explorer-agent.md +73 -0
- package/templates/.agent/agents/frontend-specialist.md +527 -0
- package/templates/.agent/agents/game-developer.md +162 -0
- package/templates/.agent/agents/mobile-developer.md +377 -0
- package/templates/.agent/agents/orchestrator.md +400 -0
- package/templates/.agent/agents/penetration-tester.md +188 -0
- package/templates/.agent/agents/performance-optimizer.md +187 -0
- package/templates/.agent/agents/project-planner.md +403 -0
- package/templates/.agent/agents/security-auditor.md +170 -0
- package/templates/.agent/agents/seo-specialist.md +111 -0
- package/templates/.agent/agents/test-engineer.md +158 -0
- package/templates/.agent/rules/GEMINI.md +248 -0
- package/templates/.agent/skills/analytics-marketing/SKILL.md +172 -324
- package/templates/.agent/skills/api-patterns/SKILL.md +81 -0
- package/templates/.agent/skills/api-patterns/api-style.md +42 -0
- package/templates/.agent/skills/api-patterns/auth.md +24 -0
- package/templates/.agent/skills/api-patterns/documentation.md +26 -0
- package/templates/.agent/skills/api-patterns/graphql.md +41 -0
- package/templates/.agent/skills/api-patterns/rate-limiting.md +31 -0
- package/templates/.agent/skills/api-patterns/response.md +37 -0
- package/templates/.agent/skills/api-patterns/rest.md +40 -0
- package/templates/.agent/skills/api-patterns/scripts/api_validator.py +211 -0
- package/templates/.agent/skills/api-patterns/security-testing.md +122 -0
- package/templates/.agent/skills/api-patterns/trpc.md +41 -0
- package/templates/.agent/skills/api-patterns/versioning.md +22 -0
- package/templates/.agent/skills/app-builder/SKILL.md +75 -0
- package/templates/.agent/skills/app-builder/agent-coordination.md +71 -0
- package/templates/.agent/skills/app-builder/feature-building.md +53 -0
- package/templates/.agent/skills/app-builder/project-detection.md +34 -0
- package/templates/.agent/skills/app-builder/scaffolding.md +118 -0
- package/templates/.agent/skills/app-builder/tech-stack.md +40 -0
- package/templates/.agent/skills/app-builder/templates/SKILL.md +39 -0
- package/templates/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
- package/templates/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
- package/templates/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
- package/templates/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
- package/templates/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
- package/templates/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
- package/templates/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
- package/templates/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +82 -0
- package/templates/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +100 -0
- package/templates/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +106 -0
- package/templates/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +101 -0
- package/templates/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
- package/templates/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +93 -0
- package/templates/.agent/skills/architecture/SKILL.md +55 -0
- package/templates/.agent/skills/architecture/context-discovery.md +43 -0
- package/templates/.agent/skills/architecture/examples.md +94 -0
- package/templates/.agent/skills/architecture/pattern-selection.md +68 -0
- package/templates/.agent/skills/architecture/patterns-reference.md +50 -0
- package/templates/.agent/skills/architecture/trade-off-analysis.md +77 -0
- package/templates/.agent/skills/banner-design/SKILL.md +192 -0
- package/templates/.agent/skills/banner-design/references/banner-sizes-and-styles.md +118 -0
- package/templates/.agent/skills/bash-linux/SKILL.md +199 -0
- package/templates/.agent/skills/behavioral-modes/SKILL.md +242 -0
- package/templates/.agent/skills/brainstorming/SKILL.md +163 -0
- package/templates/.agent/skills/brainstorming/dynamic-questioning.md +350 -0
- package/templates/.agent/skills/brand/SKILL.md +97 -0
- package/templates/.agent/skills/brand/references/approval-checklist.md +169 -0
- package/templates/.agent/skills/brand/references/asset-organization.md +157 -0
- package/templates/.agent/skills/brand/references/brand-guideline-template.md +140 -0
- package/templates/.agent/skills/brand/references/color-palette-management.md +186 -0
- package/templates/.agent/skills/brand/references/consistency-checklist.md +94 -0
- package/templates/.agent/skills/brand/references/logo-usage-rules.md +185 -0
- package/templates/.agent/skills/brand/references/messaging-framework.md +85 -0
- package/templates/.agent/skills/brand/references/typography-specifications.md +214 -0
- package/templates/.agent/skills/brand/references/update.md +118 -0
- package/templates/.agent/skills/brand/references/visual-identity.md +96 -0
- package/templates/.agent/skills/brand/references/voice-framework.md +88 -0
- package/templates/.agent/skills/brand/scripts/extract-colors.cjs +341 -0
- package/templates/.agent/skills/brand/scripts/inject-brand-context.cjs +349 -0
- package/templates/.agent/skills/brand/scripts/sync-brand-to-tokens.cjs +266 -0
- package/templates/.agent/skills/brand/scripts/validate-asset.cjs +387 -0
- package/templates/.agent/skills/brand/templates/brand-guidelines-starter.md +275 -0
- package/templates/.agent/skills/clean-code/SKILL.md +201 -0
- package/templates/.agent/skills/code-review-checklist/SKILL.md +109 -0
- package/templates/.agent/skills/copywriting/SKILL.md +250 -0
- package/templates/.agent/skills/database-design/SKILL.md +52 -0
- package/templates/.agent/skills/database-design/database-selection.md +43 -0
- package/templates/.agent/skills/database-design/indexing.md +39 -0
- package/templates/.agent/skills/database-design/migrations.md +48 -0
- package/templates/.agent/skills/database-design/optimization.md +36 -0
- package/templates/.agent/skills/database-design/orm-selection.md +30 -0
- package/templates/.agent/skills/database-design/schema-design.md +56 -0
- package/templates/.agent/skills/database-design/scripts/schema_validator.py +172 -0
- package/templates/.agent/skills/deployment-procedures/SKILL.md +241 -0
- package/templates/.agent/skills/docker-expert/SKILL.md +409 -0
- package/templates/.agent/skills/frontend-design/animation-guide.md +331 -0
- package/templates/.agent/skills/frontend-design/color-system.md +311 -0
- package/templates/.agent/skills/frontend-design/decision-trees.md +418 -0
- package/templates/.agent/skills/frontend-design/motion-graphics.md +306 -0
- package/templates/.agent/skills/frontend-design/scripts/accessibility_checker.py +183 -0
- package/templates/.agent/skills/frontend-design/scripts/ux_audit.py +722 -0
- package/templates/.agent/skills/frontend-design/typography-system.md +345 -0
- package/templates/.agent/skills/frontend-design/ux-psychology.md +541 -0
- package/templates/.agent/skills/frontend-design/visual-effects.md +383 -0
- package/templates/.agent/skills/frontend-slides/SKILL.md +92 -0
- package/templates/.agent/skills/frontend-slides/STYLE_PRESETS.md +347 -0
- package/templates/.agent/skills/frontend-slides/animation-patterns.md +110 -0
- package/templates/.agent/skills/frontend-slides/examples/n8n-jupviec-automation.html +789 -0
- package/templates/.agent/skills/frontend-slides/examples/n8n-jupviec-automation.pptx +0 -0
- package/templates/.agent/skills/frontend-slides/html-template.md +347 -0
- package/templates/.agent/skills/frontend-slides/scripts/export-pptx.py +58 -0
- package/templates/.agent/skills/frontend-slides/scripts/extract-pptx.py +96 -0
- package/templates/.agent/skills/frontend-slides/viewport-base.css +153 -0
- package/templates/.agent/skills/game-development/2d-games/SKILL.md +119 -0
- package/templates/.agent/skills/game-development/3d-games/SKILL.md +135 -0
- package/templates/.agent/skills/game-development/SKILL.md +167 -0
- package/templates/.agent/skills/game-development/game-art/SKILL.md +185 -0
- package/templates/.agent/skills/game-development/game-audio/SKILL.md +190 -0
- package/templates/.agent/skills/game-development/game-design/SKILL.md +129 -0
- package/templates/.agent/skills/game-development/mobile-games/SKILL.md +108 -0
- package/templates/.agent/skills/game-development/multiplayer/SKILL.md +132 -0
- package/templates/.agent/skills/game-development/pc-games/SKILL.md +144 -0
- package/templates/.agent/skills/game-development/vr-ar/SKILL.md +123 -0
- package/templates/.agent/skills/game-development/web-games/SKILL.md +150 -0
- package/templates/.agent/skills/geo-fundamentals/SKILL.md +156 -0
- package/templates/.agent/skills/geo-fundamentals/scripts/geo_checker.py +289 -0
- package/templates/.agent/skills/growth-engine/SKILL.md +244 -0
- package/templates/.agent/skills/i18n-localization/SKILL.md +154 -0
- package/templates/.agent/skills/i18n-localization/scripts/i18n_checker.py +241 -0
- package/templates/.agent/skills/lint-and-validate/SKILL.md +45 -0
- package/templates/.agent/skills/lint-and-validate/scripts/lint_runner.py +172 -0
- package/templates/.agent/skills/lint-and-validate/scripts/type_coverage.py +173 -0
- package/templates/.agent/skills/marketing-report-expert/SKILL.md +70 -0
- package/templates/.agent/skills/mcp-builder/SKILL.md +176 -0
- package/templates/.agent/skills/minimax-docx/LICENSE +21 -0
- package/templates/.agent/skills/minimax-docx/SKILL.md +274 -0
- package/templates/.agent/skills/minimax-docx/assets/styles/academic_styles.xml +250 -0
- package/templates/.agent/skills/minimax-docx/assets/styles/corporate_styles.xml +284 -0
- package/templates/.agent/skills/minimax-docx/assets/styles/default_styles.xml +449 -0
- package/templates/.agent/skills/minimax-docx/assets/xsd/aesthetic-rules.xsd +470 -0
- package/templates/.agent/skills/minimax-docx/assets/xsd/business-rules.xsd +130 -0
- package/templates/.agent/skills/minimax-docx/assets/xsd/common-types.xsd +159 -0
- package/templates/.agent/skills/minimax-docx/assets/xsd/wml-subset.xsd +589 -0
- package/templates/.agent/skills/minimax-docx/references/cjk_typography.md +357 -0
- package/templates/.agent/skills/minimax-docx/references/cjk_university_template_guide.md +184 -0
- package/templates/.agent/skills/minimax-docx/references/comments_guide.md +191 -0
- package/templates/.agent/skills/minimax-docx/references/design_good_bad_examples.md +829 -0
- package/templates/.agent/skills/minimax-docx/references/design_principles.md +819 -0
- package/templates/.agent/skills/minimax-docx/references/openxml_element_order.md +308 -0
- package/templates/.agent/skills/minimax-docx/references/openxml_encyclopedia_part1.md +4061 -0
- package/templates/.agent/skills/minimax-docx/references/openxml_encyclopedia_part2.md +2820 -0
- package/templates/.agent/skills/minimax-docx/references/openxml_encyclopedia_part3.md +3381 -0
- package/templates/.agent/skills/minimax-docx/references/openxml_namespaces.md +82 -0
- package/templates/.agent/skills/minimax-docx/references/openxml_units.md +72 -0
- package/templates/.agent/skills/minimax-docx/references/scenario_a_create.md +284 -0
- package/templates/.agent/skills/minimax-docx/references/scenario_b_edit_content.md +295 -0
- package/templates/.agent/skills/minimax-docx/references/scenario_c_apply_template.md +456 -0
- package/templates/.agent/skills/minimax-docx/references/track_changes_guide.md +200 -0
- package/templates/.agent/skills/minimax-docx/references/troubleshooting.md +506 -0
- package/templates/.agent/skills/minimax-docx/references/typography_guide.md +294 -0
- package/templates/.agent/skills/minimax-docx/references/xsd_validation_guide.md +158 -0
- package/templates/.agent/skills/minimax-docx/scripts/doc_to_docx.sh +40 -0
- package/templates/.agent/skills/minimax-docx/scripts/docx_preview.sh +37 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Cli/MiniMaxAIDocx.Cli.csproj +19 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Cli/Program.cs +18 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/AnalyzeCommand.cs +147 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/ApplyTemplateCommand.cs +322 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/CreateCommand.cs +324 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/DiffCommand.cs +155 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/EditContentCommand.cs +487 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/FixOrderCommand.cs +108 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/MergeRunsCommand.cs +122 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Commands/ValidateCommand.cs +107 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/MiniMaxAIDocx.Core.csproj +15 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/CommentSynchronizer.cs +169 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/ElementOrder.cs +80 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/NamespaceConstants.cs +42 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/RunMerger.cs +81 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/StyleAnalyzer.cs +81 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/TrackChangesHelper.cs +99 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/OpenXml/UnitConverter.cs +23 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples.cs +1832 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples_Batch1.cs +910 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples_Batch2.cs +999 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples_Batch3.cs +1048 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/AestheticRecipeSamples_Batch4.cs +1038 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/CharacterFormattingSamples.cs +1020 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/DocumentCreationSamples.cs +1121 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/FieldAndTocSamples.cs +624 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/FootnoteAndCommentSamples.cs +675 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/HeaderFooterSamples.cs +838 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/ImageSamples.cs +917 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/ListAndNumberingSamples.cs +826 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/ParagraphFormattingSamples.cs +1199 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/StyleSystemSamples.cs +1487 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/TableSamples.cs +1163 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Samples/TrackChangesSamples.cs +595 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Typography/CjkHelper.cs +39 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Typography/FontDefaults.cs +24 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Typography/PageSizes.cs +20 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Validation/BusinessRuleValidator.cs +224 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Validation/GateCheckValidator.cs +148 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Validation/ValidationResult.cs +23 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.Core/Validation/XsdValidator.cs +69 -0
- package/templates/.agent/skills/minimax-docx/scripts/dotnet/MiniMaxAIDocx.slnx +4 -0
- package/templates/.agent/skills/minimax-docx/scripts/env_check.sh +196 -0
- package/templates/.agent/skills/minimax-docx/scripts/setup.ps1 +274 -0
- package/templates/.agent/skills/minimax-docx/scripts/setup.sh +504 -0
- package/templates/.agent/skills/minimax-multimodal-toolkit/SKILL.md +359 -0
- package/templates/.agent/skills/minimax-pdf/README.md +222 -0
- package/templates/.agent/skills/minimax-pdf/SKILL.md +201 -0
- package/templates/.agent/skills/minimax-pdf/design/design.md +381 -0
- package/templates/.agent/skills/minimax-pdf/scripts/cover.py +1579 -0
- package/templates/.agent/skills/minimax-pdf/scripts/fill_inspect.py +200 -0
- package/templates/.agent/skills/minimax-pdf/scripts/fill_write.py +242 -0
- package/templates/.agent/skills/minimax-pdf/scripts/make.sh +491 -0
- package/templates/.agent/skills/minimax-pdf/scripts/merge.py +112 -0
- package/templates/.agent/skills/minimax-pdf/scripts/palette.py +559 -0
- package/templates/.agent/skills/minimax-pdf/scripts/reformat_parse.py +374 -0
- package/templates/.agent/skills/minimax-pdf/scripts/render_body.py +1055 -0
- package/templates/.agent/skills/minimax-pdf/scripts/render_cover.cjs +111 -0
- package/templates/.agent/skills/minimax-xlsx/SKILL.md +138 -0
- package/templates/.agent/skills/minimax-xlsx/references/create.md +691 -0
- package/templates/.agent/skills/minimax-xlsx/references/edit.md +684 -0
- package/templates/.agent/skills/minimax-xlsx/references/fix.md +37 -0
- package/templates/.agent/skills/minimax-xlsx/references/format.md +768 -0
- package/templates/.agent/skills/minimax-xlsx/references/ooxml-cheatsheet.md +231 -0
- package/templates/.agent/skills/minimax-xlsx/references/read-analyze.md +97 -0
- package/templates/.agent/skills/minimax-xlsx/references/validate.md +772 -0
- package/templates/.agent/skills/minimax-xlsx/scripts/formula_check.py +422 -0
- package/templates/.agent/skills/minimax-xlsx/scripts/libreoffice_recalc.py +248 -0
- package/templates/.agent/skills/minimax-xlsx/scripts/shared_strings_builder.py +163 -0
- package/templates/.agent/skills/minimax-xlsx/scripts/style_audit.py +575 -0
- package/templates/.agent/skills/minimax-xlsx/scripts/xlsx_add_column.py +395 -0
- package/templates/.agent/skills/minimax-xlsx/scripts/xlsx_insert_row.py +274 -0
- package/templates/.agent/skills/minimax-xlsx/scripts/xlsx_pack.py +87 -0
- package/templates/.agent/skills/minimax-xlsx/scripts/xlsx_reader.py +362 -0
- package/templates/.agent/skills/minimax-xlsx/scripts/xlsx_shift_rows.py +396 -0
- package/templates/.agent/skills/minimax-xlsx/scripts/xlsx_unpack.py +130 -0
- package/templates/.agent/skills/minimax-xlsx/templates/minimal_xlsx/[Content_Types].xml +9 -0
- package/templates/.agent/skills/minimax-xlsx/templates/minimal_xlsx/_rels/.rels +6 -0
- package/templates/.agent/skills/minimax-xlsx/templates/minimal_xlsx/xl/_rels/workbook.xml.rels +19 -0
- package/templates/.agent/skills/minimax-xlsx/templates/minimal_xlsx/xl/sharedStrings.xml +33 -0
- package/templates/.agent/skills/minimax-xlsx/templates/minimal_xlsx/xl/styles.xml +160 -0
- package/templates/.agent/skills/minimax-xlsx/templates/minimal_xlsx/xl/workbook.xml +30 -0
- package/templates/.agent/skills/minimax-xlsx/templates/minimal_xlsx/xl/worksheets/sheet1.xml +70 -0
- package/templates/.agent/skills/mobile-design/SKILL.md +394 -0
- package/templates/.agent/skills/mobile-design/decision-trees.md +516 -0
- package/templates/.agent/skills/mobile-design/mobile-backend.md +491 -0
- package/templates/.agent/skills/mobile-design/mobile-color-system.md +420 -0
- package/templates/.agent/skills/mobile-design/mobile-debugging.md +122 -0
- package/templates/.agent/skills/mobile-design/mobile-design-thinking.md +357 -0
- package/templates/.agent/skills/mobile-design/mobile-navigation.md +458 -0
- package/templates/.agent/skills/mobile-design/mobile-performance.md +767 -0
- package/templates/.agent/skills/mobile-design/mobile-testing.md +356 -0
- package/templates/.agent/skills/mobile-design/mobile-typography.md +433 -0
- package/templates/.agent/skills/mobile-design/platform-android.md +666 -0
- package/templates/.agent/skills/mobile-design/platform-ios.md +561 -0
- package/templates/.agent/skills/mobile-design/scripts/mobile_audit.py +670 -0
- package/templates/.agent/skills/mobile-design/touch-psychology.md +537 -0
- package/templates/.agent/skills/nestjs-expert/SKILL.md +552 -0
- package/templates/.agent/skills/nextjs-best-practices/SKILL.md +203 -0
- package/templates/.agent/skills/nodejs-best-practices/SKILL.md +333 -0
- package/templates/.agent/skills/parallel-agents/SKILL.md +175 -0
- package/templates/.agent/skills/performance-profiling/SKILL.md +143 -0
- package/templates/.agent/skills/performance-profiling/scripts/lighthouse_audit.py +76 -0
- package/templates/.agent/skills/plan-writing/SKILL.md +152 -0
- package/templates/.agent/skills/powershell-windows/SKILL.md +167 -0
- package/templates/.agent/skills/ppc-advertising/SKILL.md +183 -475
- package/templates/.agent/skills/pptx-generator/SKILL.md +249 -0
- package/templates/.agent/skills/pptx-generator/references/design-system.md +392 -0
- package/templates/.agent/skills/pptx-generator/references/editing.md +162 -0
- package/templates/.agent/skills/pptx-generator/references/pitfalls.md +112 -0
- package/templates/.agent/skills/pptx-generator/references/pptxgenjs.md +420 -0
- package/templates/.agent/skills/pptx-generator/references/slide-types.md +413 -0
- package/templates/.agent/skills/prisma-expert/SKILL.md +355 -0
- package/templates/.agent/skills/python-patterns/SKILL.md +441 -0
- package/templates/.agent/skills/react-patterns/SKILL.md +198 -0
- package/templates/.agent/skills/red-team-tactics/SKILL.md +199 -0
- package/templates/.agent/skills/remotion-best-practices/SKILL.md +45 -111
- package/templates/.agent/skills/remotion-best-practices/rules/3d.md +4 -4
- package/templates/.agent/skills/remotion-best-practices/rules/animations.md +5 -7
- package/templates/.agent/skills/remotion-best-practices/rules/assets/charts-bar-chart.tsx +173 -0
- package/templates/.agent/skills/remotion-best-practices/rules/assets/text-animations-typewriter.tsx +100 -0
- package/templates/.agent/skills/remotion-best-practices/rules/assets/text-animations-word-highlight.tsx +103 -0
- package/templates/.agent/skills/remotion-best-practices/rules/assets.md +78 -0
- package/templates/.agent/skills/remotion-best-practices/rules/audio-visualization.md +198 -0
- package/templates/.agent/skills/remotion-best-practices/rules/audio.md +1 -4
- package/templates/.agent/skills/remotion-best-practices/rules/calculate-metadata.md +47 -17
- package/templates/.agent/skills/remotion-best-practices/rules/can-decode.md +75 -0
- package/templates/.agent/skills/remotion-best-practices/rules/charts.md +80 -48
- package/templates/.agent/skills/remotion-best-practices/rules/compositions.md +22 -14
- package/templates/.agent/skills/remotion-best-practices/rules/display-captions.md +79 -21
- package/templates/.agent/skills/remotion-best-practices/rules/extract-frames.md +229 -0
- package/templates/.agent/skills/remotion-best-practices/rules/ffmpeg.md +38 -0
- package/templates/.agent/skills/remotion-best-practices/rules/fonts.md +96 -54
- package/templates/.agent/skills/remotion-best-practices/rules/get-audio-duration.md +58 -0
- package/templates/.agent/skills/remotion-best-practices/rules/get-video-dimensions.md +68 -0
- package/templates/.agent/skills/remotion-best-practices/rules/get-video-duration.md +60 -0
- package/templates/.agent/skills/remotion-best-practices/rules/gifs.md +21 -18
- package/templates/.agent/skills/remotion-best-practices/rules/images.md +6 -2
- package/templates/.agent/skills/remotion-best-practices/rules/import-srt-captions.md +69 -0
- package/templates/.agent/skills/remotion-best-practices/rules/light-leaks.md +73 -0
- package/templates/.agent/skills/remotion-best-practices/rules/lottie.md +10 -7
- package/templates/.agent/skills/remotion-best-practices/rules/maps.md +412 -0
- package/templates/.agent/skills/remotion-best-practices/rules/measuring-dom-nodes.md +34 -0
- package/templates/.agent/skills/remotion-best-practices/rules/measuring-text.md +140 -0
- package/templates/.agent/skills/remotion-best-practices/rules/parameters.md +109 -0
- package/templates/.agent/skills/remotion-best-practices/rules/sequencing.md +13 -1
- package/templates/.agent/skills/remotion-best-practices/rules/sfx.md +26 -0
- package/templates/.agent/skills/remotion-best-practices/rules/subtitles.md +36 -0
- package/templates/.agent/skills/remotion-best-practices/rules/tailwind.md +11 -0
- package/templates/.agent/skills/remotion-best-practices/rules/text-animations.md +4 -115
- package/templates/.agent/skills/remotion-best-practices/rules/timing.md +19 -19
- package/templates/.agent/skills/remotion-best-practices/rules/transcribe-captions.md +70 -0
- package/templates/.agent/skills/remotion-best-practices/rules/transitions.md +117 -42
- package/templates/.agent/skills/remotion-best-practices/rules/transparent-videos.md +106 -0
- package/templates/.agent/skills/remotion-best-practices/rules/trimming.md +51 -0
- package/templates/.agent/skills/remotion-best-practices/rules/voiceover.md +99 -0
- package/templates/.agent/skills/seo-fundamentals/SKILL.md +83 -441
- package/templates/.agent/skills/seo-fundamentals/scripts/seo_checker.py +219 -0
- package/templates/.agent/skills/server-management/SKILL.md +161 -0
- package/templates/.agent/skills/systematic-debugging/SKILL.md +109 -0
- package/templates/.agent/skills/tdd-workflow/SKILL.md +149 -0
- package/templates/.agent/skills/testing-patterns/SKILL.md +178 -0
- package/templates/.agent/skills/testing-patterns/scripts/test_runner.py +219 -0
- package/templates/.agent/skills/tutorial-video-expert/SKILL.md +88 -0
- package/templates/.agent/skills/typescript-expert/SKILL.md +429 -0
- package/templates/.agent/skills/ui-ux-pro-max/SKILL.md +1 -1
- package/templates/.agent/skills/ui-ux-pro-max/data/charts.csv +26 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/colors.csv +97 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/icons.csv +101 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/landing.csv +31 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/products.csv +97 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/prompts.csv +24 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/styles.csv +59 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/typography.csv +58 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/templates/.agent/skills/ui-ux-pro-max/data/web-interface.csv +31 -0
- package/templates/.agent/skills/ui-ux-pro-max/scripts/core.py +257 -0
- package/templates/.agent/skills/ui-ux-pro-max/scripts/design_system.py +487 -0
- package/templates/.agent/skills/ui-ux-pro-max/scripts/search.py +76 -0
- package/templates/.agent/skills/vision-analysis/SKILL.md +174 -0
- package/templates/.agent/skills/vue-expert/SKILL.md +374 -0
- package/templates/.agent/skills/vulnerability-scanner/SKILL.md +276 -0
- package/templates/.agent/skills/vulnerability-scanner/checklists.md +121 -0
- package/templates/.agent/skills/vulnerability-scanner/scripts/security_scan.py +458 -0
- package/templates/.agent/skills/webapp-testing/SKILL.md +187 -0
- package/templates/.agent/skills/webapp-testing/scripts/playwright_runner.py +173 -0
- package/templates/.agent/workflows/analyze.md +3 -0
- package/templates/.agent/workflows/brainstorm.md +113 -0
- package/templates/.agent/workflows/brand-report.md +44 -0
- package/templates/.agent/workflows/create.md +59 -0
- package/templates/.agent/workflows/debug.md +103 -0
- package/templates/.agent/workflows/deploy.md +176 -0
- package/templates/.agent/workflows/enhance.md +63 -0
- package/templates/.agent/workflows/orchestrate.md +237 -0
- package/templates/.agent/workflows/plan.md +89 -0
- package/templates/.agent/workflows/preview.md +80 -0
- package/templates/.agent/workflows/report.md +49 -0
- package/templates/.agent/workflows/status.md +86 -0
- package/templates/.agent/workflows/test.md +144 -0
- package/templates/.agent/workflows/ui-ux-pro-max.md +231 -0
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pptx-generator
|
|
3
|
+
description: "Generate, edit, and read PowerPoint presentations. Create from scratch with PptxGenJS (cover, TOC, content, section divider, summary slides), edit existing PPTX via XML workflows, or extract text with markitdown. Triggers: PPT, PPTX, PowerPoint, presentation, slide, deck, slides."
|
|
4
|
+
license: MIT
|
|
5
|
+
metadata:
|
|
6
|
+
version: "1.0"
|
|
7
|
+
category: productivity
|
|
8
|
+
sources:
|
|
9
|
+
- https://gitbrent.github.io/PptxGenJS/
|
|
10
|
+
- https://github.com/microsoft/markitdown
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# PPTX Generator & Editor
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
This skill handles all PowerPoint tasks: reading/analyzing existing presentations, editing template-based decks via XML manipulation, and creating presentations from scratch using PptxGenJS. It includes a complete design system (color palettes, fonts, style recipes) and detailed guidance for every slide type.
|
|
18
|
+
|
|
19
|
+
## Quick Reference
|
|
20
|
+
|
|
21
|
+
| Task | Approach |
|
|
22
|
+
|------|----------|
|
|
23
|
+
| Read/analyze content | `python -m markitdown presentation.pptx` |
|
|
24
|
+
| Edit or create from template | See [Editing Presentations](references/editing.md) |
|
|
25
|
+
| Create from scratch | See [Creating from Scratch](#creating-from-scratch-workflow) below |
|
|
26
|
+
|
|
27
|
+
| Item | Value |
|
|
28
|
+
|------|-------|
|
|
29
|
+
| **Dimensions** | 10" x 5.625" (LAYOUT_16x9) |
|
|
30
|
+
| **Colors** | 6-char hex without # (e.g., `"FF0000"`) |
|
|
31
|
+
| **English font** | Arial (default), or approved alternatives |
|
|
32
|
+
| **Chinese font** | Microsoft YaHei |
|
|
33
|
+
| **Page badge position** | x: 9.3", y: 5.1" |
|
|
34
|
+
| **Theme keys** | `primary`, `secondary`, `accent`, `light`, `bg` |
|
|
35
|
+
| **Shapes** | RECTANGLE, OVAL, LINE, ROUNDED_RECTANGLE |
|
|
36
|
+
| **Charts** | BAR, LINE, PIE, DOUGHNUT, SCATTER, BUBBLE, RADAR |
|
|
37
|
+
|
|
38
|
+
## Reference Files
|
|
39
|
+
|
|
40
|
+
| File | Contents |
|
|
41
|
+
|------|----------|
|
|
42
|
+
| [slide-types.md](references/slide-types.md) | 5 slide page types (Cover, TOC, Section Divider, Content, Summary) + additional layout patterns |
|
|
43
|
+
| [design-system.md](references/design-system.md) | Color palettes, font reference, style recipes (Sharp/Soft/Rounded/Pill), typography & spacing |
|
|
44
|
+
| [editing.md](references/editing.md) | Template-based editing workflow, XML manipulation, formatting rules, common pitfalls |
|
|
45
|
+
| [pitfalls.md](references/pitfalls.md) | QA process, common mistakes, critical PptxGenJS pitfalls |
|
|
46
|
+
| [pptxgenjs.md](references/pptxgenjs.md) | Complete PptxGenJS API reference |
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Reading Content
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
# Text extraction
|
|
54
|
+
python -m markitdown presentation.pptx
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Creating from Scratch — Workflow
|
|
60
|
+
|
|
61
|
+
**Use when no template or reference presentation is available.**
|
|
62
|
+
|
|
63
|
+
### Step 1: Research & Requirements
|
|
64
|
+
|
|
65
|
+
Search to understand user requirements — topic, audience, purpose, tone, content depth.
|
|
66
|
+
|
|
67
|
+
### Step 2: Select Color Palette & Fonts
|
|
68
|
+
|
|
69
|
+
Use the [Color Palette Reference](references/design-system.md#color-palette-reference) to select a palette matching the topic and audience. Use the [Font Reference](references/design-system.md#font-reference) to choose a font pairing.
|
|
70
|
+
|
|
71
|
+
### Step 3: Select Design Style
|
|
72
|
+
|
|
73
|
+
Use the [Style Recipes](references/design-system.md#style-recipes) to choose a visual style (Sharp, Soft, Rounded, or Pill) matching the presentation tone.
|
|
74
|
+
|
|
75
|
+
### Step 4: Plan Slide Outline
|
|
76
|
+
|
|
77
|
+
Classify **every slide** as exactly one of the [5 page types](references/slide-types.md). Plan the content and layout for each slide. Ensure visual variety — do NOT repeat the same layout across slides.
|
|
78
|
+
|
|
79
|
+
### Step 5: Generate Slide JS Files
|
|
80
|
+
|
|
81
|
+
Create one JS file per slide in `slides/` directory. Each file must export a synchronous `createSlide(pres, theme)` function. Follow the [Slide Output Format](#slide-output-format) and the type-specific guidance in [slide-types.md](references/slide-types.md). Generate up to 5 slides concurrently using subagents if available.
|
|
82
|
+
|
|
83
|
+
**Tell each subagent:**
|
|
84
|
+
1. File naming: `slides/slide-01.js`, `slides/slide-02.js`, etc.
|
|
85
|
+
2. Images go in: `slides/imgs/`
|
|
86
|
+
3. Final PPTX goes in: `slides/output/`
|
|
87
|
+
4. Dimensions: 10" x 5.625" (LAYOUT_16x9)
|
|
88
|
+
5. Fonts: Chinese = Microsoft YaHei, English = Arial (or approved alternative)
|
|
89
|
+
6. Colors: 6-char hex without # (e.g. `"FF0000"`)
|
|
90
|
+
7. Must use the theme object contract (see [Theme Object Contract](#theme-object-contract))
|
|
91
|
+
8. Must follow the [PptxGenJS API reference](references/pptxgenjs.md)
|
|
92
|
+
|
|
93
|
+
### Step 6: Compile into Final PPTX
|
|
94
|
+
|
|
95
|
+
Create `slides/compile.js` to combine all slide modules:
|
|
96
|
+
|
|
97
|
+
```javascript
|
|
98
|
+
// slides/compile.js
|
|
99
|
+
const pptxgen = require('pptxgenjs');
|
|
100
|
+
const pres = new pptxgen();
|
|
101
|
+
pres.layout = 'LAYOUT_16x9';
|
|
102
|
+
|
|
103
|
+
const theme = {
|
|
104
|
+
primary: "22223b", // dark color for backgrounds/text
|
|
105
|
+
secondary: "4a4e69", // secondary accent
|
|
106
|
+
accent: "9a8c98", // highlight color
|
|
107
|
+
light: "c9ada7", // light accent
|
|
108
|
+
bg: "f2e9e4" // background color
|
|
109
|
+
};
|
|
110
|
+
|
|
111
|
+
for (let i = 1; i <= 12; i++) { // adjust count as needed
|
|
112
|
+
const num = String(i).padStart(2, '0');
|
|
113
|
+
const slideModule = require(`./slide-${num}.js`);
|
|
114
|
+
slideModule.createSlide(pres, theme);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
pres.writeFile({ fileName: './output/presentation.pptx' });
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Run with: `cd slides && node compile.js`
|
|
121
|
+
|
|
122
|
+
### Step 7: QA (Required)
|
|
123
|
+
|
|
124
|
+
See [QA Process](references/pitfalls.md#qa-process).
|
|
125
|
+
|
|
126
|
+
### Output Structure
|
|
127
|
+
|
|
128
|
+
```
|
|
129
|
+
slides/
|
|
130
|
+
├── slide-01.js # Slide modules
|
|
131
|
+
├── slide-02.js
|
|
132
|
+
├── ...
|
|
133
|
+
├── imgs/ # Images used in slides
|
|
134
|
+
└── output/ # Final artifacts
|
|
135
|
+
└── presentation.pptx
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## Slide Output Format
|
|
141
|
+
|
|
142
|
+
Each slide is a **complete, runnable JS file**:
|
|
143
|
+
|
|
144
|
+
```javascript
|
|
145
|
+
// slide-01.js
|
|
146
|
+
const pptxgen = require("pptxgenjs");
|
|
147
|
+
|
|
148
|
+
const slideConfig = {
|
|
149
|
+
type: 'cover',
|
|
150
|
+
index: 1,
|
|
151
|
+
title: 'Presentation Title'
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
// MUST be synchronous (not async)
|
|
155
|
+
function createSlide(pres, theme) {
|
|
156
|
+
const slide = pres.addSlide();
|
|
157
|
+
slide.background = { color: theme.bg };
|
|
158
|
+
|
|
159
|
+
slide.addText(slideConfig.title, {
|
|
160
|
+
x: 0.5, y: 2, w: 9, h: 1.2,
|
|
161
|
+
fontSize: 48, fontFace: "Arial",
|
|
162
|
+
color: theme.primary, bold: true, align: "center"
|
|
163
|
+
});
|
|
164
|
+
|
|
165
|
+
return slide;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
// Standalone preview - use slide-specific filename
|
|
169
|
+
if (require.main === module) {
|
|
170
|
+
const pres = new pptxgen();
|
|
171
|
+
pres.layout = 'LAYOUT_16x9';
|
|
172
|
+
const theme = {
|
|
173
|
+
primary: "22223b",
|
|
174
|
+
secondary: "4a4e69",
|
|
175
|
+
accent: "9a8c98",
|
|
176
|
+
light: "c9ada7",
|
|
177
|
+
bg: "f2e9e4"
|
|
178
|
+
};
|
|
179
|
+
createSlide(pres, theme);
|
|
180
|
+
pres.writeFile({ fileName: "slide-01-preview.pptx" });
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
module.exports = { createSlide, slideConfig };
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
## Theme Object Contract (MANDATORY)
|
|
189
|
+
|
|
190
|
+
The compile script passes a theme object with these **exact keys**:
|
|
191
|
+
|
|
192
|
+
| Key | Purpose | Example |
|
|
193
|
+
|-----|---------|---------|
|
|
194
|
+
| `theme.primary` | Darkest color, titles | `"22223b"` |
|
|
195
|
+
| `theme.secondary` | Dark accent, body text | `"4a4e69"` |
|
|
196
|
+
| `theme.accent` | Mid-tone accent | `"9a8c98"` |
|
|
197
|
+
| `theme.light` | Light accent | `"c9ada7"` |
|
|
198
|
+
| `theme.bg` | Background color | `"f2e9e4"` |
|
|
199
|
+
|
|
200
|
+
**NEVER use other key names** like `background`, `text`, `muted`, `darkest`, `lightest`.
|
|
201
|
+
|
|
202
|
+
---
|
|
203
|
+
|
|
204
|
+
## Page Number Badge (REQUIRED)
|
|
205
|
+
|
|
206
|
+
All slides **except Cover Page** MUST include a page number badge in the bottom-right corner.
|
|
207
|
+
|
|
208
|
+
- **Position**: x: 9.3", y: 5.1"
|
|
209
|
+
- Show current number only (e.g. `3` or `03`), NOT "3/12"
|
|
210
|
+
- Use palette colors, keep subtle
|
|
211
|
+
|
|
212
|
+
### Circle Badge (Default)
|
|
213
|
+
|
|
214
|
+
```javascript
|
|
215
|
+
slide.addShape(pres.shapes.OVAL, {
|
|
216
|
+
x: 9.3, y: 5.1, w: 0.4, h: 0.4,
|
|
217
|
+
fill: { color: theme.accent }
|
|
218
|
+
});
|
|
219
|
+
slide.addText("3", {
|
|
220
|
+
x: 9.3, y: 5.1, w: 0.4, h: 0.4,
|
|
221
|
+
fontSize: 12, fontFace: "Arial",
|
|
222
|
+
color: "FFFFFF", bold: true,
|
|
223
|
+
align: "center", valign: "middle"
|
|
224
|
+
});
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
### Pill Badge
|
|
228
|
+
|
|
229
|
+
```javascript
|
|
230
|
+
slide.addShape(pres.shapes.ROUNDED_RECTANGLE, {
|
|
231
|
+
x: 9.1, y: 5.15, w: 0.6, h: 0.35,
|
|
232
|
+
fill: { color: theme.accent },
|
|
233
|
+
rectRadius: 0.15
|
|
234
|
+
});
|
|
235
|
+
slide.addText("03", {
|
|
236
|
+
x: 9.1, y: 5.15, w: 0.6, h: 0.35,
|
|
237
|
+
fontSize: 11, fontFace: "Arial",
|
|
238
|
+
color: "FFFFFF", bold: true,
|
|
239
|
+
align: "center", valign: "middle"
|
|
240
|
+
});
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
---
|
|
244
|
+
|
|
245
|
+
## Dependencies
|
|
246
|
+
|
|
247
|
+
- `pip install "markitdown[pptx]"` — text extraction
|
|
248
|
+
- `npm install -g pptxgenjs` — creating from scratch
|
|
249
|
+
- `npm install -g react-icons react react-dom sharp` — icons (optional)
|
|
@@ -0,0 +1,392 @@
|
|
|
1
|
+
# Design System
|
|
2
|
+
|
|
3
|
+
## Color Palette Reference
|
|
4
|
+
|
|
5
|
+
| # | Name | Colors | Style | Use Cases | Tips |
|
|
6
|
+
|---|------|--------|-------|-----------|------|
|
|
7
|
+
| 1 | Modern & Wellness | `#006d77` `#83c5be` `#edf6f9` `#ffddd2` `#e29578` | Fresh, soothing | Healthcare, counseling, skincare, yoga/spa | Deep teal for titles, light pink for background |
|
|
8
|
+
| 2 | Business & Authority | `#2b2d42` `#8d99ae` `#edf2f4` `#ef233c` `#d90429` | Formal, classic | Annual reports, financial analysis, corporate intro, government | Deep blue for professionalism, bright red to highlight data |
|
|
9
|
+
| 3 | Nature & Outdoors | `#606c38` `#283618` `#fefae0` `#dda15e` `#bc6c25` | Grounded, earthy | Outdoor gear, environmental, agriculture, historical culture | Dark green base, cream text |
|
|
10
|
+
| 4 | Vintage & Academic | `#780000` `#c1121f` `#fdf0d5` `#003049` `#669bbc` | Classic, scholarly | Academic lectures, history reviews, museums, heritage brands | Strong contrast between deep red and deep blue |
|
|
11
|
+
| 5 | Soft & Creative | `#cdb4db` `#ffc8dd` `#ffafcc` `#bde0fe` `#a2d2ff` | Dreamy, candy-toned | Mother & baby, desserts, women's fashion, kindergarten | Use dark gray or black for text |
|
|
12
|
+
| 6 | Bohemian | `#ccd5ae` `#e9edc9` `#fefae0` `#faedcd` `#d4a373` | Gentle, muted | Wedding planning, home decor, organic food, slow living | Cream background, green-brown accents |
|
|
13
|
+
| 7 | Vibrant & Tech | `#8ecae6` `#219ebc` `#023047` `#ffb703` `#fb8500` | High energy, sporty | Sports events, gyms, startup pitches, youth education | Deep blue for stability, orange as focal accent |
|
|
14
|
+
| 8 | Craft & Artisan | `#7f5539` `#a68a64` `#ede0d4` `#656d4a` `#414833` | Rustic, coffee-toned | Coffee shops, handicrafts, traditional culture, bakery | Suited for paper/leather textures |
|
|
15
|
+
| 9 | Tech & Night | `#000814` `#001d3d` `#003566` `#ffc300` `#ffd60a` | Deep, luminous | Tech launches, astronomy, night economy, luxury automobiles | Must use dark mode |
|
|
16
|
+
| 10 | Education & Charts | `#264653` `#2a9d8f` `#e9c46a` `#f4a261` `#e76f51` | Clear, logical | Statistical reports, education, market analysis, general business | Perfect chart color scheme |
|
|
17
|
+
| 11 | Forest & Eco | `#dad7cd` `#a3b18a` `#588157` `#3a5a40` `#344e41` | Monochrome gradient, forest | Landscape design, ESG reports, environmental causes, botanical | Monochrome palette is safe and cohesive |
|
|
18
|
+
| 12 | Elegant & Fashion | `#edafb8` `#f7e1d7` `#dedbd2` `#b0c4b1` `#4a5759` | Muted, Morandi tones | Haute couture, art galleries, beauty brands, magazine style | Negative space is key |
|
|
19
|
+
| 13 | Art & Food | `#335c67` `#fff3b0` `#e09f3e` `#9e2a2b` `#540b0e` | Rich, vintage-poster | Food documentaries, art exhibitions, ethnic themes, vintage restaurants | Works well with large color blocks |
|
|
20
|
+
| 14 | Luxury & Mysterious | `#22223b` `#4a4e69` `#9a8c98` `#c9ada7` `#f2e9e4` | Cool, purple-toned | Jewelry showcases, hotel management, high-end consulting, psychology | Purple evokes premium atmosphere |
|
|
21
|
+
| 15 | Pure Tech Blue | `#03045e` `#0077b6` `#00b4d8` `#90e0ef` `#caf0f8` | Futuristic, clean | Cloud/AI, water/ocean, hospitals, clean energy | Deep ocean to sky gradient |
|
|
22
|
+
| 16 | Coastal Coral | `#0081a7` `#00afb9` `#fdfcdc` `#fed9b7` `#f07167` | Refreshing, summery | Travel, summer events, beverage brands, ocean themes | Teal and coral as complementary focal colors |
|
|
23
|
+
| 17 | Vibrant Orange Mint | `#ff9f1c` `#ffbf69` `#ffffff` `#cbf3f0` `#2ec4b6` | Bright, cheerful | Children's events, promotional posters, FMCG, social media | Orange grabs attention, mint feels fresh |
|
|
24
|
+
| 18 | Platinum White Gold | `#0a0a0a` `#0070F3` `#D4AF37` `#f5f5f5` `#ffffff` | Premium, professional | Agent products, corporate websites, fintech, luxury brands | White-gold base, blue for action, gold for emphasis |
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
### Agent Design System — Full Color Scale
|
|
29
|
+
|
|
30
|
+
Based on the Platinum White-Gold Theme design tokens. Provides complete color scales for fine-grained design work.
|
|
31
|
+
|
|
32
|
+
#### White Scale (Backgrounds & Light Surfaces)
|
|
33
|
+
|
|
34
|
+
| Token | Value | Usage |
|
|
35
|
+
|-------|-------|-------|
|
|
36
|
+
| white-0 | `#ffffff` | Primary background |
|
|
37
|
+
| white-50 | `#fefefe` | Slightly warm white |
|
|
38
|
+
| white-75 | `#fcfcfc` | Near-white |
|
|
39
|
+
| white-100 | `#fafafa` | Secondary background |
|
|
40
|
+
| white-200 | `#f7f7f7` | Card background |
|
|
41
|
+
| white-300 | `#f5f5f5` | Tertiary background |
|
|
42
|
+
| white-400 | `#f0f0f0` | Separator zones |
|
|
43
|
+
| white-500 | `#ebebeb` | Light border |
|
|
44
|
+
| white-600 | `#e5e5e5` | Disabled background |
|
|
45
|
+
| white-700 | `#e0e0e0` | Deep white-gray |
|
|
46
|
+
| white-800 | `#d9d9d9` | Placeholder |
|
|
47
|
+
| white-900 | `#d4d4d4` | Divider lines |
|
|
48
|
+
| white-1000 | `#cccccc` | Deepest white |
|
|
49
|
+
|
|
50
|
+
#### Gold Scale (Platinum Business Accent)
|
|
51
|
+
|
|
52
|
+
| Token | Value | Usage |
|
|
53
|
+
|-------|-------|-------|
|
|
54
|
+
| gold-25 | `#FFFDF5` | Extremely light gold background |
|
|
55
|
+
| gold-50 | `#FEF9E7` | Light gold background |
|
|
56
|
+
| gold-75 | `#FCF3D0` | Pale gold highlight |
|
|
57
|
+
| gold-100 | `#FAECB8` | Gold hover state |
|
|
58
|
+
| gold-200 | `#F5DC8A` | Bright gold accent |
|
|
59
|
+
| gold-300 | `#E8C860` | Gold hover |
|
|
60
|
+
| gold-400 | `#D4AF37` | **Primary gold (core)** |
|
|
61
|
+
| gold-500 | `#B8972E` | Gold text |
|
|
62
|
+
| gold-600 | `#9A7E26` | Deep gold accent |
|
|
63
|
+
| gold-700 | `#7C651E` | Dark gold border |
|
|
64
|
+
| gold-800 | `#5E4C16` | Deep gold background |
|
|
65
|
+
| gold-900 | `#40330F` | Very deep gold |
|
|
66
|
+
| gold-1000 | `#221A08` | Black gold |
|
|
67
|
+
|
|
68
|
+
#### Blue Scale (Primary Action Color)
|
|
69
|
+
|
|
70
|
+
| Token | Value | Usage |
|
|
71
|
+
|-------|-------|-------|
|
|
72
|
+
| blue-25 | `#F0F7FF` | Extremely light blue background |
|
|
73
|
+
| blue-50 | `#E0EFFF` | Info alert background |
|
|
74
|
+
| blue-75 | `#C2DFFF` | Light blue highlight |
|
|
75
|
+
| blue-100 | `#A3CFFF` | Disabled blue |
|
|
76
|
+
| blue-200 | `#66AFFF` | Bright blue |
|
|
77
|
+
| blue-300 | `#338FFF` | Blue hover |
|
|
78
|
+
| blue-400 | `#0070F3` | **Primary blue (core)** |
|
|
79
|
+
| blue-500 | `#005FCC` | Blue text |
|
|
80
|
+
| blue-600 | `#004FA6` | Deep blue accent |
|
|
81
|
+
| blue-700 | `#003F80` | Dark blue border |
|
|
82
|
+
| blue-800 | `#002F5A` | Deep blue background |
|
|
83
|
+
| blue-900 | `#001F3D` | Very deep blue |
|
|
84
|
+
| blue-1000 | `#001026` | Black blue |
|
|
85
|
+
|
|
86
|
+
#### Gray Scale (Text & Neutral Colors)
|
|
87
|
+
|
|
88
|
+
| Token | Value | Usage |
|
|
89
|
+
|-------|-------|-------|
|
|
90
|
+
| gray-0 | `#ffffff` | White |
|
|
91
|
+
| gray-50 | `#fafafa` | Extremely light gray |
|
|
92
|
+
| gray-75 | `#f5f5f5` | Light gray background |
|
|
93
|
+
| gray-100 | `#ededed` | Light divider |
|
|
94
|
+
| gray-200 | `#d4d4d4` | Light border |
|
|
95
|
+
| gray-300 | `#a3a3a3` | Quaternary text |
|
|
96
|
+
| gray-400 | `#737373` | Tertiary text |
|
|
97
|
+
| gray-500 | `#525252` | Secondary text |
|
|
98
|
+
| gray-600 | `#404040` | Dark gray |
|
|
99
|
+
| gray-700 | `#2e2e2e` | Dark background |
|
|
100
|
+
| gray-800 | `#1f1f1f` | Deep background |
|
|
101
|
+
| gray-900 | `#141414` | Very deep background |
|
|
102
|
+
| gray-1000 | `#0a0a0a` | **Primary text (core)** |
|
|
103
|
+
|
|
104
|
+
#### Opacity Values
|
|
105
|
+
|
|
106
|
+
##### Opacity Black
|
|
107
|
+
|
|
108
|
+
| Opacity | Value | Usage |
|
|
109
|
+
|---------|-------|-------|
|
|
110
|
+
| 0% | `#0a0a0a00` | Fully transparent |
|
|
111
|
+
| 2% | `#0a0a0a05` | Subtle overlay |
|
|
112
|
+
| 4% | `#0a0a0a0a` | Secondary interactive background |
|
|
113
|
+
| 8% | `#0a0a0a14` | Border / divider |
|
|
114
|
+
| 15% | `#0a0a0a26` | Pressed state |
|
|
115
|
+
| 20% | `#0a0a0a33` | Light overlay |
|
|
116
|
+
| 25% | `#0a0a0a40` | Medium overlay |
|
|
117
|
+
| 50% | `#0a0a0a80` | Semi-transparent |
|
|
118
|
+
| 70% | `#0a0a0ab2` | Deep overlay |
|
|
119
|
+
| 80% | `#0a0a0acc` | Hover state |
|
|
120
|
+
| 90% | `#0a0a0ae5` | Tooltip |
|
|
121
|
+
| 95% | `#0a0a0af2` | Modal |
|
|
122
|
+
|
|
123
|
+
##### Opacity White
|
|
124
|
+
|
|
125
|
+
| Opacity | Value | Usage |
|
|
126
|
+
|---------|-------|-------|
|
|
127
|
+
| 0% | `#ffffff00` | Fully transparent |
|
|
128
|
+
| 2% | `#ffffff05` | Subtle overlay |
|
|
129
|
+
| 4% | `#ffffff0a` | Secondary interactive background |
|
|
130
|
+
| 8% | `#ffffff12` | Border / divider |
|
|
131
|
+
| 15% | `#ffffff26` | Pressed state |
|
|
132
|
+
| 20% | `#ffffff33` | Light overlay |
|
|
133
|
+
| 25% | `#ffffff40` | Medium overlay |
|
|
134
|
+
| 50% | `#ffffff80` | Semi-transparent |
|
|
135
|
+
| 70% | `#ffffffb2` | Deep overlay |
|
|
136
|
+
| 80% | `#ffffffcc` | Hover state |
|
|
137
|
+
| 90% | `#ffffffe5` | Tooltip |
|
|
138
|
+
| 95% | `#fffffff2` | Modal |
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## Color Palette Rules (MANDATORY)
|
|
143
|
+
|
|
144
|
+
### Strict Palette Adherence
|
|
145
|
+
|
|
146
|
+
**Use ONLY the provided color palette. Do NOT create or modify colors.**
|
|
147
|
+
|
|
148
|
+
- All colors must come from the user-provided palette
|
|
149
|
+
- Do NOT use colors outside the palette
|
|
150
|
+
- Do NOT modify palette colors (brightness, saturation, mixing)
|
|
151
|
+
- **Only exception**: Add transparency using the `transparency` property (0-100)
|
|
152
|
+
|
|
153
|
+
```javascript
|
|
154
|
+
// Correct: Using palette colors
|
|
155
|
+
slide.addShape(pres.shapes.RECTANGLE, { fill: { color: theme.primary } });
|
|
156
|
+
slide.addText("Title", { color: theme.accent });
|
|
157
|
+
|
|
158
|
+
// Wrong: Colors outside palette
|
|
159
|
+
slide.addShape(pres.shapes.RECTANGLE, { fill: { color: "1a1a2e" } });
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### No Gradients
|
|
163
|
+
|
|
164
|
+
**Gradients are prohibited. Use solid colors only.**
|
|
165
|
+
|
|
166
|
+
### No Animations
|
|
167
|
+
|
|
168
|
+
**Animations and transitions are prohibited.** All slides must be static.
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
## Font Reference
|
|
173
|
+
|
|
174
|
+
### Recommended Fonts
|
|
175
|
+
|
|
176
|
+
| Language | Default Font | Alternatives |
|
|
177
|
+
|----------|-------------|--------------|
|
|
178
|
+
| **Chinese** | Microsoft YaHei | — |
|
|
179
|
+
| **English** | Arial | Georgia, Calibri, Cambria, Trebuchet MS |
|
|
180
|
+
|
|
181
|
+
- For mixed Chinese-English content: use Microsoft YaHei for Chinese, the chosen font for English
|
|
182
|
+
- Prefer system fonts for cross-platform compatibility
|
|
183
|
+
- Titles and body text can use different font pairings (e.g. Georgia + Calibri)
|
|
184
|
+
|
|
185
|
+
### Recommended Font Pairings
|
|
186
|
+
|
|
187
|
+
| Header Font | Body Font |
|
|
188
|
+
|-------------|-----------|
|
|
189
|
+
| Georgia | Calibri |
|
|
190
|
+
| Arial Black | Arial |
|
|
191
|
+
| Calibri | Calibri Light |
|
|
192
|
+
| Cambria | Calibri |
|
|
193
|
+
| Trebuchet MS | Calibri |
|
|
194
|
+
| Impact | Arial |
|
|
195
|
+
| Palatino | Garamond |
|
|
196
|
+
| Consolas | Calibri |
|
|
197
|
+
|
|
198
|
+
**Choose an interesting font pairing** — don't default to Arial for everything. Pick a header font with personality and pair it with a clean body font.
|
|
199
|
+
|
|
200
|
+
### No Bold for Body Text
|
|
201
|
+
|
|
202
|
+
**Plain body text and caption/legend text must NOT use bold.**
|
|
203
|
+
|
|
204
|
+
- Body paragraphs, descriptions → normal weight
|
|
205
|
+
- Captions, legends, footnotes → normal weight
|
|
206
|
+
- Reserve bold for titles and headings only
|
|
207
|
+
|
|
208
|
+
```javascript
|
|
209
|
+
// Correct
|
|
210
|
+
slide.addText("Main Title", { bold: true, fontSize: 36, fontFace: "Arial" });
|
|
211
|
+
slide.addText("Body text here.", { bold: false, fontSize: 14, fontFace: "Arial" });
|
|
212
|
+
|
|
213
|
+
// Wrong
|
|
214
|
+
slide.addText("Body text here.", { bold: true, fontSize: 14 });
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## Style Recipes
|
|
220
|
+
|
|
221
|
+
The same design can be rendered in 4 distinct visual styles by adjusting corner radius (`rectRadius`) and spacing. Choose the style recipe that fits the presentation tone.
|
|
222
|
+
|
|
223
|
+
> **Unit note**: PptxGenJS uses inches. Slide dimensions are 10" x 5.625" (LAYOUT_16x9).
|
|
224
|
+
|
|
225
|
+
### Style Overview
|
|
226
|
+
|
|
227
|
+
| Style | Corner Radius | Spacing | Best For |
|
|
228
|
+
|-------|--------------|---------|----------|
|
|
229
|
+
| **Sharp & Compact** | 0 ~ 0.05" | Tight | Data-dense, tables, professional reports |
|
|
230
|
+
| **Soft & Balanced** | 0.08" ~ 0.12" | Moderate | Corporate, business presentations, general use |
|
|
231
|
+
| **Rounded & Spacious** | 0.15" ~ 0.25" | Relaxed | Product intros, marketing, creative showcases |
|
|
232
|
+
| **Pill & Airy** | 0.3" ~ 0.5" | Open | Brand showcases, launch events, premium presentations |
|
|
233
|
+
|
|
234
|
+
### Sharp & Compact
|
|
235
|
+
|
|
236
|
+
**Visual character**: Geometric, high information density, formal and serious.
|
|
237
|
+
|
|
238
|
+
| Category | Value (inches) | Notes |
|
|
239
|
+
|----------|---------------|-------|
|
|
240
|
+
| Corner radius — small | 0" | Full right angle |
|
|
241
|
+
| Corner radius — medium | 0.03" | Micro-rounded |
|
|
242
|
+
| Corner radius — large | 0.05" | Slight rounding |
|
|
243
|
+
| Element padding | 0.1" ~ 0.15" | Compact |
|
|
244
|
+
| Element gap | 0.1" ~ 0.2" | Compact |
|
|
245
|
+
| Page margin | 0.3" | Narrow |
|
|
246
|
+
| Block gap | 0.25" ~ 0.35" | Compact |
|
|
247
|
+
|
|
248
|
+
### Soft & Balanced
|
|
249
|
+
|
|
250
|
+
**Visual character**: Moderate rounding, comfortable whitespace, professional yet approachable.
|
|
251
|
+
|
|
252
|
+
| Category | Value (inches) | Notes |
|
|
253
|
+
|----------|---------------|-------|
|
|
254
|
+
| Corner radius — small | 0.05" | Slight rounding |
|
|
255
|
+
| Corner radius — medium | 0.08" | Medium rounding |
|
|
256
|
+
| Corner radius — large | 0.12" | Larger rounding |
|
|
257
|
+
| Element padding | 0.15" ~ 0.2" | Moderate |
|
|
258
|
+
| Element gap | 0.15" ~ 0.25" | Moderate |
|
|
259
|
+
| Page margin | 0.4" | Standard |
|
|
260
|
+
| Block gap | 0.35" ~ 0.5" | Moderate |
|
|
261
|
+
|
|
262
|
+
### Rounded & Spacious
|
|
263
|
+
|
|
264
|
+
**Visual character**: Large corners, generous whitespace, friendly and modern.
|
|
265
|
+
|
|
266
|
+
| Category | Value (inches) | Notes |
|
|
267
|
+
|----------|---------------|-------|
|
|
268
|
+
| Corner radius — small | 0.1" | Medium rounding |
|
|
269
|
+
| Corner radius — medium | 0.15" | Large rounding |
|
|
270
|
+
| Corner radius — large | 0.25" | Very large rounding |
|
|
271
|
+
| Element padding | 0.2" ~ 0.3" | Relaxed |
|
|
272
|
+
| Element gap | 0.25" ~ 0.4" | Relaxed |
|
|
273
|
+
| Page margin | 0.5" | Wide |
|
|
274
|
+
| Block gap | 0.5" ~ 0.7" | Relaxed |
|
|
275
|
+
|
|
276
|
+
### Pill & Airy
|
|
277
|
+
|
|
278
|
+
**Visual character**: Full pill-shaped corners, abundant whitespace, light and open feel, strong brand presence.
|
|
279
|
+
|
|
280
|
+
| Category | Value (inches) | Notes |
|
|
281
|
+
|----------|---------------|-------|
|
|
282
|
+
| Corner radius — small | 0.2" | Large rounding |
|
|
283
|
+
| Corner radius — medium | 0.3" | Pill shape |
|
|
284
|
+
| Corner radius — large | 0.5" | Full pill |
|
|
285
|
+
| Element padding | 0.25" ~ 0.4" | Open |
|
|
286
|
+
| Element gap | 0.3" ~ 0.5" | Open |
|
|
287
|
+
| Page margin | 0.6" | Wide |
|
|
288
|
+
| Block gap | 0.6" ~ 0.9" | Open |
|
|
289
|
+
|
|
290
|
+
### Component Style Mapping
|
|
291
|
+
|
|
292
|
+
| Component | Sharp | Soft | Rounded | Pill |
|
|
293
|
+
|-----------|-------|------|---------|------|
|
|
294
|
+
| **Button / Tag** | rectRadius: 0 | rectRadius: 0.05 | rectRadius: 0.1 | rectRadius: 0.2 |
|
|
295
|
+
| **Card / Container** | rectRadius: 0.03 | rectRadius: 0.1 | rectRadius: 0.2 | rectRadius: 0.3 |
|
|
296
|
+
| **Image Container** | rectRadius: 0 | rectRadius: 0.08 | rectRadius: 0.15 | rectRadius: 0.25 |
|
|
297
|
+
| **Input Field** | rectRadius: 0 | rectRadius: 0.05 | rectRadius: 0.1 | rectRadius: 0.2 |
|
|
298
|
+
| **Badge** | rectRadius: 0.02 | rectRadius: 0.05 | rectRadius: 0.08 | rectRadius: 0.15 |
|
|
299
|
+
| **Avatar Frame** | rectRadius: 0 | rectRadius: 0.1 | rectRadius: 0.2 | rectRadius: 0.5 (circle) |
|
|
300
|
+
|
|
301
|
+
#### PptxGenJS Corner Radius Examples
|
|
302
|
+
|
|
303
|
+
```javascript
|
|
304
|
+
// Sharp style card
|
|
305
|
+
slide.addShape("rect", {
|
|
306
|
+
x: 0.5, y: 1, w: 4, h: 2.5,
|
|
307
|
+
fill: { color: "F5F5F5" },
|
|
308
|
+
rectRadius: 0.03
|
|
309
|
+
});
|
|
310
|
+
|
|
311
|
+
// Rounded style card
|
|
312
|
+
slide.addShape("rect", {
|
|
313
|
+
x: 0.5, y: 1, w: 4, h: 2.5,
|
|
314
|
+
fill: { color: "F5F5F5" },
|
|
315
|
+
rectRadius: 0.2
|
|
316
|
+
});
|
|
317
|
+
|
|
318
|
+
// Pill style button (height 0.4", rectRadius 0.2" = perfect pill)
|
|
319
|
+
slide.addShape("rect", {
|
|
320
|
+
x: 3, y: 4, w: 2, h: 0.4,
|
|
321
|
+
fill: { color: "4A90D9" },
|
|
322
|
+
rectRadius: 0.2
|
|
323
|
+
});
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
### Mixing Rules
|
|
327
|
+
|
|
328
|
+
#### 1. Outer container corner >= inner element corner
|
|
329
|
+
|
|
330
|
+
```javascript
|
|
331
|
+
// Correct: outer > inner
|
|
332
|
+
card: rectRadius: 0.2
|
|
333
|
+
button: rectRadius: 0.1
|
|
334
|
+
|
|
335
|
+
// Wrong: inner > outer → visual overflow effect
|
|
336
|
+
card: rectRadius: 0.1
|
|
337
|
+
button: rectRadius: 0.2
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
#### 2. Information density drives spacing
|
|
341
|
+
|
|
342
|
+
| Zone Type | Recommended Style |
|
|
343
|
+
|-----------|------------------|
|
|
344
|
+
| Data display zone | Sharp / Soft (compact spacing) |
|
|
345
|
+
| Content browsing zone | Rounded / Pill (relaxed spacing) |
|
|
346
|
+
| Title zone | Soft / Rounded (moderate spacing) |
|
|
347
|
+
|
|
348
|
+
#### 3. Corner radius vs element height
|
|
349
|
+
|
|
350
|
+
| Element Height | Sharp | Soft | Rounded | Pill |
|
|
351
|
+
|---------------|-------|------|---------|------|
|
|
352
|
+
| Small (< 0.3") | 0" | 0.03" | 0.08" | height/2 |
|
|
353
|
+
| Medium (0.3" ~ 0.6") | 0.02" | 0.05" | 0.12" | height/2 |
|
|
354
|
+
| Large (0.6" ~ 1.2") | 0.03" | 0.08" | 0.2" | 0.3" |
|
|
355
|
+
| Extra large (> 1.2") | 0.05" | 0.12" | 0.25" | 0.4" |
|
|
356
|
+
|
|
357
|
+
> **Pill tip**: For a perfect pill shape, set `rectRadius = element height / 2`
|
|
358
|
+
|
|
359
|
+
### Typography Scale (PPT)
|
|
360
|
+
|
|
361
|
+
| Usage | Size (pt) | Notes |
|
|
362
|
+
|-------|-----------|-------|
|
|
363
|
+
| Annotations / Sources | 10 ~ 12 | Minimum readable size |
|
|
364
|
+
| Body / Description | 14 ~ 16 | Standard body |
|
|
365
|
+
| Subtitle | 18 ~ 22 | Secondary heading |
|
|
366
|
+
| Title | 28 ~ 36 | Page title |
|
|
367
|
+
| Large Title | 44 ~ 60 | Cover / section title |
|
|
368
|
+
| Data Callout | 60 ~ 96 | Key number display |
|
|
369
|
+
|
|
370
|
+
### Spacing Scale (PPT)
|
|
371
|
+
|
|
372
|
+
Based on 10" x 5.625" slide dimensions:
|
|
373
|
+
|
|
374
|
+
| Usage | Recommended (inches) |
|
|
375
|
+
|-------|---------------------|
|
|
376
|
+
| Icon-to-text gap | 0.08" ~ 0.15" |
|
|
377
|
+
| List item spacing | 0.15" ~ 0.25" |
|
|
378
|
+
| Card inner padding | 0.2" ~ 0.4" |
|
|
379
|
+
| Element group gap | 0.3" ~ 0.5" |
|
|
380
|
+
| Page safe margin | 0.4" ~ 0.6" |
|
|
381
|
+
| Major block gap | 0.5" ~ 0.8" |
|
|
382
|
+
|
|
383
|
+
### Quick Selection Guide
|
|
384
|
+
|
|
385
|
+
| Presentation Type | Recommended Style | Reason |
|
|
386
|
+
|------------------|------------------|--------|
|
|
387
|
+
| Finance / Data reports | Sharp & Compact | High density, serious and precise |
|
|
388
|
+
| Corporate / Business | Soft & Balanced | Balances professionalism and approachability |
|
|
389
|
+
| Product intro / Marketing | Rounded & Spacious | Modern feel, friendly |
|
|
390
|
+
| Launch events / Brand | Pill & Airy | Premium feel, visual impact |
|
|
391
|
+
| Training / Education | Soft / Rounded | Clear, readable, friendly |
|
|
392
|
+
| Tech sharing | Sharp / Soft | Professional, information-dense |
|