assegaiphp / console
The Assegai CLI is a command-line interface tool that helps you to initialize, develop and maintain your Assegai applications.
Requires
- php: >=8.3
- ext-pdo: *
- assegaiphp/common: ^0.4.5
- atatusoft-ltd/plural: ^1.2
- laravel/prompts: ^0.1.24
- symfony/console: ^7.1
Requires (Dev)
- pestphp/pest: ^4.1
- phpstan/phpstan: ^1.11
README
Assegai Console
Requirements
- PHP 8.2 (minimum)
- Composer 2.x.x
Description
The Assegai Console is the framework CLI for:
- creating new projects
- serving apps locally
- generating framework features
- exporting API contracts and clients
- working with queues, migrations, databases, and Web Components
It also supports custom schematics so teams can teach assegai generate about their own company-specific features.
Installation
Linux
Install the Assegai Console globally using Composer:
$ composer global require assegaiphp/console
Create a symbolic link to the Assegai Console binary in a directory that is included in your system's PATH environment variable. For example, you can create a symbolic link in the /usr/local/bin directory:
$ sudo ln -s ~/.config/composer/vendor/bin/assegai /usr/local/bin/assegai
Alternatively, you can add the Composer bin directory to your $PATH to make assegai
available globally. To do so, add the following line to your shell configuration file (e.g., ~/.bashrc, ~/.zshrc,
etc.):
$ export PATH="$PATH:$HOME/.config/composer/vendor/bin"
Note: The path to the Composer bin directory may vary depending on your system configuration. Please refer to the official Composer documentation for more information.
Windows
Note: The following instructions are for Windows 10/11. If you are using an older version of Windows, please refer to the official Composer documentation for installation instructions.
For Windows, you can use WSL (Windows Subsystem for Linux) to install the Assegai Console. Follow the instructions for Linux above.
macOS
For macOS, you can use the same instructions as for Linux.
Usage
Get Started
To create a new Assegai project, run the following command:
$ assegai new my-app
This command will create a new Assegai project in the my-app directory.
Development
After creating a new project, you can start the development server to preview your application in the browser.
$ cd my-app
To start the development server, navigate to the project directory and run the following command:
$ assegai serve
Custom schematics
You can extend the generator without forking the CLI.
The default local convention is:
schematics/<name>/
schematic.json
templates/
Start with a declarative starter:
assegai schematic:init loyalty-program
Or scaffold a PHP-backed starter when generation needs real logic:
assegai schematic:init customer-portal --php
Inspect what the CLI discovered:
assegai schematic:list
Run a custom schematic through the normal generate workflow:
assegai g loyalty-program rewards
For reusable team schematics, package manifests can be exposed through composer.json:
{
"extra": {
"assegai": {
"schematics": [
"resources/loyalty/schematic.json"
]
}
}
}
Learn more in the official documentation.
Stay in touch
- Author - Andrew Masiye, Daniel Kaluba
- Website - https://atatusoft.com
- X - @assegaiphp
License
Assegai Console is MIT Licensed
