Friday, November 6, 2026 · Asia/KarachiFree tools · No signup · Runs in your browser

Composer JSON Generator

Composer JSON Generator asks for Package name, Description, Minimum PHP, License and shows a Composerjson result after Generate composer.json. “northwind/recipes on PHP 8.2” returns “Composerjson: northwind/recipes requires PHP >=8.2”. “A different vendor and PHP 8.3” returns “Composerjson: dock/labels requires PHP >=8.3”. Full first result: Composerjson: northwind/recipes requires PHP >=8.2 --- { "name": "northwind/recipes", "description": "Recipe helpers", "license": "MIT", "require": { "php": ">=8.2" } }

New

How to use

  1. Fill in Package name, Description, Minimum PHP, License for Composerjson.
  2. To match “northwind/recipes on PHP 8.2”, enter Package name northwind/recipes; Description Recipe helpers; Minimum PHP 8.2; License MIT.
  3. Press Generate composer.json. The summary line should be “Composerjson: northwind/recipes requires PHP >=8.2”.
  4. Read every line under “Composerjson: northwind/recipes requires PHP >=8.2” before you copy the Composerjson result.
  5. Press Copy for the whole Composerjson result, or Reset to restore “northwind/recipes on PHP 8.2”.
  6. For the second check, “A different vendor and PHP 8.3”, the summary should be “Composerjson: dock/labels requires PHP >=8.3”.

Formula / how it works

Example “northwind/recipes on PHP 8.2” sets Package name = northwind/recipes; Description = Recipe helpers; Minimum PHP = 8.2; License = MIT.

Composerjson returns this exact text:

Composerjson: northwind/recipes requires PHP >=8.2
---
{
"name": "northwind/recipes",
"description": "Recipe helpers",
"license": "MIT",
"require": {
"php": ">=8.2"
}
}

The name must be vendor/package.

Example “A different vendor and PHP 8.3” sets Package name = dock/labels; Description = Label printer; Minimum PHP = 8.3; License = Apache-2.0.

Composerjson returns this exact text:

Composerjson: dock/labels requires PHP >=8.3
---
{
"name": "dock/labels",
"description": "Label printer",
"license": "Apache-2.0",
"require": {
"php": ">=8.3"
}
}

require.php is a >= constraint.

Composerjson vocabulary for this page: composer, php, vendor, package, license, composerjson.

Composerjson pass 1 (“A different vendor and PHP 8.3”) prints:

Composerjson: dock/labels requires PHP >=8.3
---
{
"name": "dock/labels",
"description": "Label printer",
"license": "Apache-2.0",
"require": {
"php": ">=8.3"
}
}

The words for this pass are composer, php, vendor, package, license, composerjson.

Composerjson pass 2 (“northwind/recipes on PHP 8.2”) prints:

Composerjson: northwind/recipes requires PHP >=8.2
---
{
"name": "northwind/recipes",
"description": "Recipe helpers",
"license": "MIT",
"require": {
"php": ">=8.2"
}
}

The words for this pass are composer, php, vendor, package, license, composerjson.

Composerjson pass 3 (“A different vendor and PHP 8.3”) prints:

Composerjson: dock/labels requires PHP >=8.3
---
{
"name": "dock/labels",
"description": "Label printer",
"license": "Apache-2.0",
"require": {
"php": ">=8.3"
}
}

The words for this pass are composer, php, vendor, package, license, composerjson.

Composerjson pass 4 (“northwind/recipes on PHP 8.2”) prints:

Composerjson: northwind/recipes requires PHP >=8.2
---
{
"name": "northwind/recipes",
"description": "Recipe helpers",
"license": "MIT",
"require": {
"php": ">=8.2"
}
}

The words for this pass are composer, php, vendor, package, license, composerjson.

Composerjson pass 5 (“A different vendor and PHP 8.3”) prints:

Composerjson: dock/labels requires PHP >=8.3
---
{
"name": "dock/labels",
"description": "Label printer",
"license": "Apache-2.0",
"require": {
"php": ">=8.3"
}
}

The words for this pass are composer, php, vendor, package, license, composerjson.

Worked examples

northwind/recipes on PHP 8.2

Inputs: Package name: northwind/recipes | Description: Recipe helpers | Minimum PHP: 8.2 | License: MIT

Set Package name northwind/recipes, then Description Recipe helpers, then Minimum PHP 8.2, then License MIT. Press Generate composer.json. The Composerjson summary should read “Composerjson: northwind/recipes requires PHP >=8.2”.

Result: Composerjson: northwind/recipes requires PHP >=8.2 --- { "name": "northwind/recipes", "description": "Recipe helpers", "license": "MIT", "require": { "php": ">=8.2" } }

The name must be vendor/package.

A different vendor and PHP 8.3

Inputs: Package name: dock/labels | Description: Label printer | Minimum PHP: 8.3 | License: Apache-2.0

Set Package name dock/labels, then Description Label printer, then Minimum PHP 8.3, then License Apache-2.0. Press Generate composer.json. The Composerjson summary should read “Composerjson: dock/labels requires PHP >=8.3”.

Result: Composerjson: dock/labels requires PHP >=8.3 --- { "name": "dock/labels", "description": "Label printer", "license": "Apache-2.0", "require": { "php": ">=8.3" } }

require.php is a >= constraint.

Use cases

  • Check “Composerjson: northwind/recipes requires PHP >=8.2” before trusting a new Composerjson input.
  • Check “Composerjson: dock/labels requires PHP >=8.3” as the second Composerjson case.
  • The name must be vendor/package.
  • require.php is a >= constraint.

Tips & limitations

  • “northwind/recipes on PHP 8.2”: The name must be vendor/package.
  • “A different vendor and PHP 8.3”: require.php is a >= constraint.
  • Composerjson fields: Package name, Description, Minimum PHP, License.
  • The Composerjson summary for the opening example is “Composerjson: northwind/recipes requires PHP >=8.2”.

FAQ

What does “northwind/recipes on PHP 8.2” return?

Composerjson summary: “Composerjson: northwind/recipes requires PHP >=8.2”. Full result: Composerjson: northwind/recipes requires PHP >=8.2 --- { "name": "northwind/recipes", "description": "Recipe helpers", "license": "MIT", "require": { "php": ">=8.2" } }

What does “A different vendor and PHP 8.3” return?

Composerjson summary: “Composerjson: dock/labels requires PHP >=8.3”. Full result: Composerjson: dock/labels requires PHP >=8.3 --- { "name": "dock/labels", "description": "Label printer", "license": "Apache-2.0", "require": { "php": ">=8.3" } }

Which values produce “Composerjson: northwind/recipes requires PHP >=8.2”?

Package name: northwind/recipes | Description: Recipe helpers | Minimum PHP: 8.2 | License: MIT

Which values produce “Composerjson: dock/labels requires PHP >=8.3”?

Package name: dock/labels | Description: Label printer | Minimum PHP: 8.3 | License: Apache-2.0

How is “Composerjson: northwind/recipes requires PHP >=8.2” different from “Composerjson: dock/labels requires PHP >=8.3”?

“northwind/recipes on PHP 8.2” gives “Composerjson: northwind/recipes requires PHP >=8.2”. “A different vendor and PHP 8.3” gives “Composerjson: dock/labels requires PHP >=8.3”.

What does Composerjson include in the full first result?

Composerjson: northwind/recipes requires PHP >=8.2 --- { "name": "northwind/recipes", "description": "Recipe helpers", "license": "MIT", "require": { "php": ">=8.2" } }

Runs entirely in your browser; nothing is uploaded. Check the output before you rely on it in production code, data or security decisions.