Skip to content

Main content

Random QR Message Card Set Generator

Sample supplied synthetic message templates, replace literal {{index}} and {{code}} tokens with a one-based card index and six random decimal digits, and delegate standard QR SVG symbols with explicit error correction; other text is literal, duplicates are reported, capacity failures stay structured, and app layout/print export are separate.

Loading tool…

Description

Sample supplied synthetic message templates, replace literal the index token and the code token tokens with a one-based card index and six random decimal digits, and delegate standard QR SVG symbols with explicit error correction; other text is literal, duplicates are reported, capacity failures stay structured, and app layout/print export are separate.

A protocol fixture is local test data representing headers, messages, identifiers, or request decisions. Serialization and parsing can be checked without contacting a server, while authentication, delivery, and actual client behavior require separate tests.

Sample supplied synthetic message templates, replace literal the index token and the code token tokens with a one-based card index and six random decimal digits, and delegate standard QR SVG symbols with explicit error correction; other text is literal, duplicates are reported, capacity failures stay structured, and app layout/print export are separate.

When to use this tool

Use this generator to create reproducible qr message card set cases from the supplied model or bank. Inspect the returned evidence before using cases in a test or exercise.

How to use the tool and how it works

  1. Supply templates, count, errorCorrection, scale in the field shapes below. Set seed when you need an explicit replay.
  2. Run the tool and correct any input error. For generated controls, distinguish a successful fixture containing an invalid case from failure to generate the fixture.
  3. Read cards, duplicatePayloadPairs. Use the conventions below and keep answer-bearing fields separate when presenting an exercise.

Sample a template and a six-digit code, substitute literal the index token and the code token, then generate an actual QR symbol at the requested scale and correction level. Return payloads, symbols, and one-based duplicate-payload card pairs.1

Delegated operations used for this result: qr code. Their calculation or parsing conventions apply to the corresponding result fields.2

Input fieldMeaning and unitsAccepted input
templatesTemplatesRequired. Array of Text; minimum UTF-16 length 1; maximum UTF-16 length 1024.; minimum items 1; maximum items 16.
countRequested count; the mechanics explain whether one draw expands into several returned records.Required. Safe integer; minimum 1; maximum 16.
errorCorrectionError CorrectionRequired. Text; one of "L", "M", "Q", "H".
scaleScaleRequired. Safe integer; minimum 1; maximum 10.
seedOptional numeric seed; takes precedence over context randomness. Without either, use the fixed tool.io default seed.Optional. Safe integer.
Output fieldInterpretationReturned shape
cardsCardsRequired. Array of Object; no unknown keys.; minimum items 1; maximum items 16.
cards[].indexIndexRequired. Safe integer; minimum 1; maximum 16.
cards[].templateIndexTemplate IndexRequired. Safe integer; minimum 0; maximum 15.
cards[].templateTemplateRequired. Text; minimum UTF-16 length 1; maximum UTF-16 length 1024.
cards[].randomCodeRandom CodeRequired. Text; minimum UTF-16 length 6; maximum UTF-16 length 6.
cards[].payloadPayloadRequired. Text; minimum UTF-16 length 1; maximum UTF-16 length 1024.
cards[].symbolSymbolRequired. Object; no unknown keys.
cards[].symbol.bcidBcidRequired. Text; minimum UTF-16 length 1; maximum UTF-16 length 64.
cards[].symbol.symbologySymbologyRequired. Text; minimum UTF-16 length 1; maximum UTF-16 length 128.
cards[].symbol.svgSvgRequired. Text; minimum UTF-16 length 1; maximum UTF-16 length 1000000.
cards[].symbol.widthWidthRequired. Finite number; strictly above 0.
cards[].symbol.heightHeightRequired. Finite number; strictly above 0.
duplicatePayloadPairsDuplicate Payload PairsRequired. Array of Array of Safe integer; minimum 1; maximum 16.; minimum items 2; maximum items 2.; maximum items 120.
randomnessReplay metadata: source is seed or context; seed is the normalized 32-bit seed or null for a context source.Required. Object; no unknown keys.
randomness.seedOptional numeric replay seed; normalization and precedence are explained below.Required. Safe integer. or Null.
randomness.sourceSourceRequired. Text; one of "context", "seed".

An explicit safe-integer seed takes precedence over injected context randomness and is normalized to an unsigned 32-bit integer. With no seed and no context source, replay uses the fixed tool.io default seed. A context source must return finite values from zero inclusive to one exclusive; its advancing state must be retained separately. randomness records the source and normalized seed, or null for context. These generators are not cryptographic random sources.

json
{
  "input": {
    "templates": [
      "Tool {{index}}/{{code}}"
    ],
    "count": 2,
    "errorCorrection": "M",
    "scale": 1,
    "seed": 42
  },
  "output": {
    "cards": [
      {
        "index": 1,
        "templateIndex": 0,
        "template": "Tool {{index}}/{{code}}",
        "randomCode": "448290",
        "payload": "Tool 1/448290",
        "symbol": {
          "bcid": "qrcode",
          "height": 58,
          "svg": "<svg viewBox=\"0 0 58 58\" xmlns=\"http://www.w3.org/2000/svg\">\n<rect width=\"100%\" height=\"100%\" fill=\"#ffffff\" />\n<path d=\"M8 50L22 50L22 36L8 36ZM24 50L26 50L26 48L24 48ZM32 50L40 50L40 46L38 46L38 48L34 48L34 46L30 46L30 48L32 48ZM46 50L48 50L48 48L46 48ZM10 48L10 38L20 38L20 48ZM44 48L46 48L46 44L44 44ZM12 46L18 46L18 40L12 40ZM24 46L26 46L26 44L28 44L28 42L26 42L26 40L28 40L28 42L30 42L30 38L24 38ZM28 46L30 46L30 44L28 44ZM32 44L34 44L34 42L38 42L38 40L40 40L40 42L42 42L42 40L46 40L46 38L44 38L44 34L42 34L42 38L38 38L38 36L36 36L36 38L34 38L34 34L32 34ZM38 44L40 44L40 42L38 42ZM42 44L44 44L44 42L42 42ZM46 42L48 42L48 40L46 40ZM46 38L48 38L48 32L46 32ZM24 36L28 36L28 30L32 30L32 28L30 28L30 26L24 26L24 28L26 28L26 30L22 30L22 32L20 32L20 34L24 34ZM10 34L16 34L16 32L10 32ZM30 34L32 34L32 32L30 32ZM36 34L38 34L38 32L36 32ZM8 32L10 32L10 30L16 30L16 32L18 32L18 30L22 30L22 28L20 28L20 26L22 26L22 24L12 24L12 28L10 28L10 24L8 24ZM34 32L36 32L36 30L34 30ZM42 32L46 32L46 30L44 30L44 26L46 26L46 24L36 24L36 26L40 26L40 30L42 30ZM36 30L38 30L38 28L36 28ZM46 30L48 30L48 28L46 28ZM14 28L14 26L18 26L18 28ZM32 28L34 28L34 16L30 16L30 18L32 18L32 22L30 22L30 24L32 24ZM48 28L50 28L50 26L48 26ZM24 24L28 24L28 22L26 22L26 14L28 14L28 12L32 12L32 10L30 10L30 8L26 8L26 12L24 12ZM8 22L22 22L22 8L8 8ZM28 22L30 22L30 20L28 20ZM36 22L50 22L50 8L36 8ZM10 20L10 10L20 10L20 20ZM38 20L38 10L48 10L48 20ZM12 18L18 18L18 12L12 12ZM40 18L46 18L46 12L40 12ZM32 10L34 10L34 8L32 8Z\" fill-rule=\"evenodd\" fill=\"#000000\" />\n</svg>\n",
          "symbology": "QR Code",
          "width": 58
        }
      },
      {
        "index": 2,
        "templateIndex": 0,
        "template": "Tool {{index}}/{{code}}",
        "randomCode": "669734",
        "payload": "Tool 2/669734",
        "symbol": {
          "bcid": "qrcode",
          "height": 58,
          "svg": "<svg viewBox=\"0 0 58 58\" xmlns=\"http://www.w3.org/2000/svg\">\n<rect width=\"100%\" height=\"100%\" fill=\"#ffffff\" />\n<path d=\"M8 50L22 50L22 36L8 36ZM24 50L32 50L32 46L30 46L30 48L24 48ZM34 50L36 50L36 48L34 48ZM38 50L40 50L40 46L36 46L36 48L38 48ZM46 50L48 50L48 48L46 48ZM10 48L10 38L20 38L20 48ZM44 48L46 48L46 44L44 44ZM12 46L18 46L18 40L12 40ZM24 46L28 46L28 44L30 44L30 36L28 36L28 38L24 38ZM32 46L34 46L34 44L40 44L40 42L36 42L36 38L34 38L34 36L36 36L36 34L32 34L32 40L34 40L34 42L32 42ZM42 44L44 44L44 42L42 42ZM40 42L42 42L42 40L46 40L46 38L44 38L44 34L42 34L42 38L38 38L38 40L40 40ZM46 42L48 42L48 40L46 40ZM46 38L48 38L48 32L46 32ZM24 36L28 36L28 30L26 30L26 32L20 32L20 34L24 34ZM10 34L12 34L12 30L10 30ZM14 34L18 34L18 32L16 32L16 30L18 30L18 28L12 28L12 30L14 30ZM30 34L32 34L32 32L30 32ZM36 34L38 34L38 32L46 32L46 30L44 30L44 26L46 26L46 24L36 24L36 26L40 26L40 30L38 30L38 28L36 28ZM20 30L26 30L26 28L24 28L24 26L22 26L22 28L20 28ZM28 30L32 30L32 28L28 28ZM46 30L48 30L48 28L46 28ZM8 28L12 28L12 26L10 26L10 24L8 24ZM32 28L34 28L34 12L32 12L32 10L30 10L30 8L26 8L26 12L30 12L30 14L32 14L32 16L30 16L30 18L32 18L32 22L30 22L30 24L32 24ZM48 28L50 28L50 26L48 26ZM12 26L22 26L22 24L12 24ZM24 24L26 24L26 18L28 18L28 16L30 16L30 14L26 14L26 12L24 12ZM8 22L22 22L22 8L8 8ZM28 22L30 22L30 20L28 20ZM36 22L50 22L50 8L36 8ZM10 20L10 10L20 10L20 20ZM38 20L38 10L48 10L48 20ZM12 18L18 18L18 12L12 12ZM40 18L46 18L46 12L40 12Z\" fill-rule=\"evenodd\" fill=\"#000000\" />\n</svg>\n",
          "symbology": "QR Code",
          "width": 58
        }
      }
    ],
    "duplicatePayloadPairs": [],
    "randomness": {
      "seed": 42,
      "source": "seed"
    }
  }
}

Limitations and assumptions

  • Codes are not cryptographically secure or guaranteed unique. Unknown placeholders stay literal. Symbol generation and aggregate image size can reject a request; no scanner, destination lookup, or message delivery is performed.
  • A replay requires the same complete input and implementation. Randomized construction does not guarantee uniform coverage of every feasible output; finite samples can repeat unless a distinct-selection rule is explicitly stated.
  • The field tables state structural bounds; cross-field constraints and bounded search or output budgets also apply. Unknown keys are rejected where the object contract disallows them. Input errors are distinct from null fields and deliberate invalid controls in a successful output.

Alternative or Complementary methods

For a supplied example, inspect the returned construction or delegated check directly. To evaluate a consumer, also test cases chosen for its own boundaries; a generated finite corpus does not establish exhaustive coverage.

References

  1. Tool behavior and example: Random QR Message Card Set Generator — tool.io

  2. Calculation or validation: generate/qr-code — tool.io

Similar or alternative tools

  • Random HTTP Set-Cookie Attribute Corpus Generator

    Compose synthetic Set-Cookie name/value pairs and bounded attribute subsets from supplied value pools, including explicit opaque Expires text, flags, and supported name casing; delegate serializer/parser outputs while preserving attribute order, without dates interpreted, browser acceptance, credentials, or security-policy recommendations.

  • Random IPv4 CIDR Block Set Generator

    Generate aligned equal-prefix child blocks within an explicit normalized IPv4 parent, delegating masks/network/broadcast answers and using bounded-memory index sampling; non-overlap samples without replacement, otherwise duplicate blocks are allowed, with no address allocation or routing action.