{
  "title": "Poll Graphic Maker",
  "human_url": "https://happytails.ai/en/marketing-tools/poll-graphic-maker/",
  "agent_url": "https://happytails.ai/agents/en/marketing-tools/poll-graphic-maker/",
  "language": "en",
  "markdown_url": "https://happytails.ai/en/marketing-tools/poll-graphic-maker.md",
  "content": "Poll Graphic Maker\nTurn a question and two to six options into a clean poll graphic for social posts. Add vote counts to show percentages that always add up to 100.\nHow can we improve this tool?\nReport a problem or share an idea.\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\nHow to use Poll Graphic Maker\nType the question on the first line, without a vertical bar.\nAdd each option on its own line, with an optional vote count after a vertical bar, such as Dark mode | 128.\nChoose the graphic size, percentage decimals and colors.\nDownload the SVG graphic, the CSV results and the JSON report.\nUseful next steps\nOpen graph preview\nQR code generator\nPalette visualizer\nHow percentages are calculated\nPercentages come only from the vote counts you enter. Each share is computed with whole-number arithmetic and rounded with the largest remainder method (also called the Hamilton method), so the displayed values always add up to exactly 100. When two options have the same remainder, the earlier option gets the extra point. Without vote counts the graphic shows the options as an open poll with no percentages.\nContrast check\nThe report compares your text color and bar color with the background using the contrast ratio formula from the W3C Web Content Accessibility Guidelines (WCAG) 2.2, published 5 October 2023. Text passes at 4.5 to 1 and bars pass the non-text threshold at 3 to 1. The ratio is cut, not rounded, to two decimals so a near miss is never shown as a pass.\nLimits of the layout\nText widths are estimated from standard Helvetica character widths, so line breaks can differ slightly if the viewer substitutes another font. The report lists any text that needs more lines than its space allows. Image options and PNG export are not part of this version.",
  "content_format": "text/plain",
  "visibility": "public",
  "links": [
    {
      "name": "Open graph preview",
      "url": "https://happytails.ai/en/marketing-tools/open-graph-preview/"
    },
    {
      "name": "QR code generator",
      "url": "https://happytails.ai/en/marketing-tools/qr-code-generator/"
    },
    {
      "name": "Palette visualizer",
      "url": "https://happytails.ai/en/design-tools/palette-visualizer/"
    }
  ],
  "tool": {
    "id": "poll-graphic-maker",
    "category": "marketing-tools",
    "built": true,
    "requirements": "Up to 2000 characters, a question of up to 200 characters with no vertical bar (|), 2 to 6 options of up to 80 characters each and whole vote counts from 0 to 1000000000. Everything is computed on your device. Downloads are an SVG graphic, a CSV results table, a JSON report and an editable scene JSON file.",
    "implementation": {
      "fields": [
        {
          "key": "size",
          "label": "Graphic size",
          "value": "1080x1080",
          "type": "select",
          "values": [
            "1080x1080",
            "1080x1350",
            "1200x675",
            "1080x1920"
          ]
        },
        {
          "key": "decimals",
          "label": "Percentage decimals",
          "value": "0",
          "type": "select",
          "values": [
            "0",
            "1"
          ]
        },
        {
          "key": "showCounts",
          "label": "Show vote counts",
          "value": true,
          "type": "checkbox"
        },
        {
          "key": "background",
          "label": "Background",
          "value": "#ffffff",
          "type": "color"
        },
        {
          "key": "textColor",
          "label": "Text",
          "value": "#1f2937",
          "type": "color"
        },
        {
          "key": "accent",
          "label": "Bars",
          "value": "#2563eb",
          "type": "color"
        }
      ],
      "registrationFamily": "scene-composer-reference",
      "inputMaxLength": 2000,
      "inputErrorCode": "SCENE_COMPOSER_REFERENCE_POLL_TOO_LONG",
      "note": "The poll graphic, percentages and contrast check are computed on your device from at most 2000 characters.",
      "experience": {
        "automatic": false,
        "single": false,
        "inputMaxLength": 2000,
        "inputMode": "text",
        "label": "Question and options",
        "placeholder": "Which feature should we build next?\nDark mode | 128\nOffline sync | 64",
        "help": "Put the question first, then one option per line. Add | and a vote count after an option to show percentages. The question cannot contain |. Up to 2,000 characters. Review the settings before running.",
        "action": null
      },
      "mode": "explicit",
      "interactive": false
    },
    "execution": "Browser interface",
    "api": null,
    "browser_agent": {
      "supported": true,
      "name": "run_current_tool",
      "discovery": "WebMCP on the human page in a supporting browser",
      "verification": "See audit/API-AUDIT.md; availability is not verification"
    }
  },
  "markdown": "# Poll Graphic Maker\n\n- Human page: https://happytails.ai/en/marketing-tools/poll-graphic-maker/\n- Markdown: https://happytails.ai/en/marketing-tools/poll-graphic-maker.md\n- Structured JSON: https://happytails.ai/agents/en/marketing-tools/poll-graphic-maker/index.json\n- Visibility: public\n\n## Tool capabilities\n\n| Property | Value |\n| --- | --- |\n| Tool ID | `poll-graphic-maker` |\n| Category | marketing-tools |\n| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |\n| Browser execution | Use the visible action or interactive controls. |\n| Browser processing | Browser; see tool notes for network behavior. |\n| HTTP API | Not callable through HTTP. |\n| Browser-agent interface | run_current_tool |\n\n### Implementation notes\n\nThe poll graphic, percentages and contrast check are computed on your device from at most 2000 characters.\n\n### Inputs and settings\n\nText input: Question and options.\n\nExample or placeholder shown in the interface (not a validated fixture):\n\n```text\nWhich feature should we build next?\nDark mode | 128\nOffline sync | 64\n```\n\nPut the question first, then one option per line. Add | and a vote count after an option to show percentages. The question cannot contain |. Up to 2,000 characters. Review the settings before running.\n\n| Setting | Meaning | Control type | Default | Constraints |\n| --- | --- | --- | --- | --- |\n| `size` | Graphic size | select | \"1080x1080\" | Allowed: 1080x1080, 1080x1350, 1200x675, 1080x1920 |\n| `decimals` | Percentage decimals | select | \"0\" | Allowed: 0, 1 |\n| `showCounts` | Show vote counts | checkbox | true |  |\n| `background` | Background | color | \"#ffffff\" |  |\n| `textColor` | Text | color | \"#1f2937\" |  |\n| `accent` | Bars | color | \"#2563eb\" |  |\n\n### Browser-agent workflow\n\n1. Open the human page in a browser that supports WebMCP.\n2. Discover the interface exposed by that page; use its actual schema.\n3. Select files on the page first when the tool requires files.\n4. Call `run_current_tool` with valid input and settings.\n5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.\n\nCalls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.\n\n### Planning specification\n\nUp to 2000 characters, a question of up to 200 characters with no vertical bar (|), 2 to 6 options of up to 80 characters each and whole vote counts from 0 to 1000000000. Everything is computed on your device. Downloads are an SVG graphic, a CSV results table, a JSON report and an editable scene JSON file.\n\nThis describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.\n\n### Complete machine-readable capability record\n\n```json\n{\n  \"id\": \"poll-graphic-maker\",\n  \"category\": \"marketing-tools\",\n  \"built\": true,\n  \"requirements\": \"Up to 2000 characters, a question of up to 200 characters with no vertical bar (|), 2 to 6 options of up to 80 characters each and whole vote counts from 0 to 1000000000. Everything is computed on your device. Downloads are an SVG graphic, a CSV results table, a JSON report and an editable scene JSON file.\",\n  \"implementation\": {\n    \"fields\": [\n      {\n        \"key\": \"size\",\n        \"label\": \"Graphic size\",\n        \"value\": \"1080x1080\",\n        \"type\": \"select\",\n        \"values\": [\n          \"1080x1080\",\n          \"1080x1350\",\n          \"1200x675\",\n          \"1080x1920\"\n        ]\n      },\n      {\n        \"key\": \"decimals\",\n        \"label\": \"Percentage decimals\",\n        \"value\": \"0\",\n        \"type\": \"select\",\n        \"values\": [\n          \"0\",\n          \"1\"\n        ]\n      },\n      {\n        \"key\": \"showCounts\",\n        \"label\": \"Show vote counts\",\n        \"value\": true,\n        \"type\": \"checkbox\"\n      },\n      {\n        \"key\": \"background\",\n        \"label\": \"Background\",\n        \"value\": \"#ffffff\",\n        \"type\": \"color\"\n      },\n      {\n        \"key\": \"textColor\",\n        \"label\": \"Text\",\n        \"value\": \"#1f2937\",\n        \"type\": \"color\"\n      },\n      {\n        \"key\": \"accent\",\n        \"label\": \"Bars\",\n        \"value\": \"#2563eb\",\n        \"type\": \"color\"\n      }\n    ],\n    \"registrationFamily\": \"scene-composer-reference\",\n    \"inputMaxLength\": 2000,\n    \"inputErrorCode\": \"SCENE_COMPOSER_REFERENCE_POLL_TOO_LONG\",\n    \"note\": \"The poll graphic, percentages and contrast check are computed on your device from at most 2000 characters.\",\n    \"experience\": {\n      \"automatic\": false,\n      \"single\": false,\n      \"inputMaxLength\": 2000,\n      \"inputMode\": \"text\",\n      \"label\": \"Question and options\",\n      \"placeholder\": \"Which feature should we build next?\\nDark mode | 128\\nOffline sync | 64\",\n      \"help\": \"Put the question first, then one option per line. Add | and a vote count after an option to show percentages. The question cannot contain |. Up to 2,000 characters. Review the settings before running.\",\n      \"action\": null\n    },\n    \"mode\": \"explicit\",\n    \"interactive\": false\n  },\n  \"execution\": \"Browser interface\",\n  \"api\": null,\n  \"browser_agent\": {\n    \"supported\": true,\n    \"name\": \"run_current_tool\",\n    \"discovery\": \"WebMCP on the human page in a supporting browser\",\n    \"verification\": \"See audit/API-AUDIT.md; availability is not verification\"\n  }\n}\n```\n\n## Page guide\n\nTurn a question and two to six options into a clean poll graphic for social posts. Add vote counts to show percentages that always add up to 100.\n\nHow can we improve this tool?\n\nReport a problem or share an idea.\n\nPlease leave out private information. Your message and the tool name go to our team via PostHog.\n\n### How to use Poll Graphic Maker\n\n1. Type the question on the first line, without a vertical bar.\n2. Add each option on its own line, with an optional vote count after a vertical bar, such as Dark mode | 128.\n3. Choose the graphic size, percentage decimals and colors.\n4. Download the SVG graphic, the CSV results and the JSON report.\n\n## Useful next steps\n\n- [Open graph preview](https://happytails.ai/en/marketing-tools/open-graph-preview/) ([Markdown](https://happytails.ai/en/marketing-tools/open-graph-preview.md))\n\n- [QR code generator](https://happytails.ai/en/marketing-tools/qr-code-generator/) ([Markdown](https://happytails.ai/en/marketing-tools/qr-code-generator.md))\n\n- [Palette visualizer](https://happytails.ai/en/design-tools/palette-visualizer/) ([Markdown](https://happytails.ai/en/design-tools/palette-visualizer.md))\n\n## How percentages are calculated\n\nPercentages come only from the vote counts you enter. Each share is computed with whole-number arithmetic and rounded with the largest remainder method (also called the Hamilton method), so the displayed values always add up to exactly 100. When two options have the same remainder, the earlier option gets the extra point. Without vote counts the graphic shows the options as an open poll with no percentages.\n\n### Contrast check\n\nThe report compares your text color and bar color with the background using the contrast ratio formula from the W3C Web Content Accessibility Guidelines (WCAG) 2.2, published 5 October 2023. Text passes at 4.5 to 1 and bars pass the non-text threshold at 3 to 1. The ratio is cut, not rounded, to two decimals so a near miss is never shown as a pass.\n\n### Limits of the layout\n\nText widths are estimated from standard Helvetica character widths, so line breaks can differ slightly if the viewer substitutes another font. The report lists any text that needs more lines than its space allows. Image options and PNG export are not part of this version.\n"
}