Download the PHP package sanmai/console without Composer

On this page you can find all versions of the php package sanmai/console. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package console

sanmai/console

PHP Version

Zero-configuration console executable that auto-discovers your Symfony Console commands.

Installation

For Auto-Discovery

If you want commands to be discovered automatically:

Auto-discovery uses Composer's classmap, which requires an optimized autoloader.

For PSR-4 Projects

If you prefer explicit command registration without optimization, configure a custom provider.

Quick Start

  1. Create a Symfony Console command:

  2. Update the autoloader:

  3. Run your command:

That's it! No configuration files, no manual command registration.

How It Works

This library provides a ready-made vendor/bin/console executable that automatically discovers all Symfony Console commands in your project:

  1. Auto-discovery (requires an optimized autoloader):

    • Scans Composer's classmap for classes extending Command with names ending in Command
    • Finds CommandProviderInterface implementations with names ending in CommandProvider
    • Filters out vendor files
    • Skips classes that throw exceptions during instantiation
  2. Custom provider (optional, no optimization needed):
    • Loads the provider specified in extra.console.provider
    • Provider returns command instances via its iterator
    • Works alongside auto-discovery

The Problem It Solves

I found myself writing the same console bootstrap script over and over. Even with Symfony's command discovery features, you still had to write a lot of boilerplate code.

With sanmai/console, you get a ready-made vendor/bin/console executable installed via Composer. No files to create, no permissions to set - just install the package and vendor/bin/console is ready to use. It even works in legacy projects that never had Symfony Console commands before.

Configuration

Bootstrap Scripts

Configure a custom bootstrap script in your composer.json:

Or use Composer commands:

The bootstrap script runs after Composer's autoloader is initialized. Including vendor/autoload.php again is safe - the library handles this gracefully.

Example bootstrap script:

Custom Provider Configuration

In addition to auto-discovery, you can specify a custom command provider:

Or using Composer command:

The custom provider:

An optimized autoloader is not required to use the custom provider.

Commands with Dependencies

For commands that require constructor dependencies, implement the CommandProviderInterface:

CommandProviderInterface implementations must have no required arguments in their constructor as they are instantiated automatically.

Troubleshooting

Commands not showing up?

Testing


All versions of console with dependencies

PHP Build Version
Package Version
Requires php Version >=8.2
sanmai/later Version ^0.1.7 || ^0.2
sanmai/pipeline Version ^6.17 || ^7.0
sanmai/version-info Version ^0.2 || ^0.3
symfony/console Version ^6.0 || ^7.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package sanmai/console contains the following files

Loading the files please wait ...