Skip to content
| Marketplace
Sign in
Visual Studio Code>Testing>JSON Edge - The Edge Case MakerNew to Visual Studio Code? Get it now.
JSON Edge - The Edge Case Maker

JSON Edge - The Edge Case Maker

Masum Hasan

| (0) | Free
Create JSON edge-case inputs with missing fields, nulls, empty values and wrong types. Preview and copy locally.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

JSON Edge - The Edge Case Maker

Turn one JSON example into labelled missing, null, empty, and wrong-type inputs in VS Code. Preview each generated file and copy its JSON without leaving the editor.

JSON Edge demo: select email, generate four variations, preview and copy JSON

Watch or download the MP4 demo · User guide · Report an issue

What it does

  • Generates independent variations: each file changes exactly one property in a fresh copy of your example.
  • Supports nested object fields and treats arrays as complete values.
  • Shows a clickable list of virtual JSON files, with explanations and Copy JSON.
  • Converts selected JavaScript object snippets into JSON without executing code.
  • Provides Format JSON, indentation on Enter, and optional Fill dummy values.
  • Offers optional disk export when you want saved fixtures.
  • Works locally with no API key, account, backend, telemetry, or network requests from the extension.

These are candidate inputs, not test verdicts. Your application decides whether each case should be accepted.

Quick start

  1. Open a JSON document, or copy an example from an API request or fixture.
  2. Click the JSON Edge braces/arrows icon in the Activity Bar, or run JSON Edge: Open.
  3. Select fields and variations, then click Generate edge cases.
  4. Click a filename such as 002-null.json to inspect it.
  5. Click Copy JSON and use the payload in your API client or existing tests.

Generated files stay in the panel's memory. Generating, previewing and copying do not create folders. To save copies, expand Save files to disk (optional). Closing the panel clears the session.

JSON Edge input and field selection

More screenshots · See snippet conversion

Example

Starting with:

{ "name": "Alex", "email": "alex@example.com", "age": 25 }

Selecting /email produces these alternatives, with the other properties preserved:

Variation Change
Missing Remove email
Null "email": null
Empty "email": ""
Wrong type "email": 123

Generated virtual JSON files with a null-value preview

Nested fields use JSON Pointer paths, such as /address/city. Keys containing dots, slashes or tildes remain distinguishable. Results are deterministic; unchanged and duplicate outputs are skipped.

Object snippets

Select an object or a list of properties in an editor and choose Load from Active Editor. For pasted snippets, use Format JSON.

userId,
name: profile?.name,
email: profile?.email,
isActive,

becomes:

{
  "userId": "",
  "name": "",
  "email": "",
  "isActive": ""
}

Unquoted keys, single quotes and trailing commas are normalized. Literal values are preserved; runtime expressions become empty strings, with a note explaining the substitutions. No project code is executed. Fill dummy values optionally fills empty strings/nulls using field-name hints; review these inferred values and types before generating.

Installation and support

Requires VS Code desktop 1.100.0 or newer. For manual installation, build or obtain the VSIX and use Extensions: Install from VSIX….

After installation, run Developer: Reload Window if upgrading a local build. If the icon is hidden, right-click the Activity Bar and enable JSON Edge. Detailed installation and troubleshooting.

Limits and privacy

  • Generation requires a strict JSON object at the root. Use the explicit import/format step for object snippets.
  • No duplicate keys. Maximum input: 1 MiB; depth: 32; output: 250 cases / 16 MiB. Exceeded limits produce an error instead of truncating results.
  • Arrays are mutated as whole values. JSON Schema/OpenAPI import, business-rule generation, function execution and HTTP testing are outside this release.
  • Unsafe integers/non-finite numbers are rejected. Ordinary decimal values follow JavaScript number semantics.
  • Desktop/local export is supported. Browser-hosted VS Code, relocated launcher views, and remote development are outside the verified scope.
  • Input/results live in memory until the panel closes. Copied text and exported files persist at your request. Privacy details.

Development and documentation

npm ci
npm run compile
npm run check

Open the project in VS Code and press F5. See the development guide for all test, debugging, packaging and demo-recording commands.

  • User guide
  • Learning chapters
  • Contributing
  • Changelog
  • Step-by-step Marketplace publishing

MIT licensed. See LICENSE.

Moving from JSON Twist

JSON Edge is published as masum-hasan.json-edge. If you installed JSON Twist (masum-hasan.json-twist), install JSON Edge explicitly; it is a separate Marketplace listing. You can then uninstall JSON Twist.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft