PHPackages                             ichiloto/console - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [CLI &amp; Console](/categories/cli)
4. /
5. ichiloto/console

ActiveLibrary[CLI &amp; Console](/categories/cli)

ichiloto/console
================

A simple CLI tool for managing games made using the Ichiloto Game Engine.

0.4.1(1mo ago)00MITPHP

Since Apr 22Pushed 1mo agoCompare

[ Source](https://github.com/ichiloto/console)[ Packagist](https://packagist.org/packages/ichiloto/console)[ RSS](/packages/ichiloto-console/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (2)Dependencies (6)Versions (4)Used By (0)

 [![Ichiloto Logo](/public/images/screenshots/ichiloto-logo.png)](/public/images/screenshots/ichiloto-logo.png)

Ichiloto Console
================

[](#ichiloto-console)

The official command-line toolkit for the Ichiloto Engine.

This package powers the `ichiloto` executable: it forges new projects, opens the editor, launches games, and carries a few early scaffolding utilities for day-to-day engine work. The command surface is intentionally small and geared toward the core Ichiloto workflow:

1. Install the CLI
2. Create a project
3. Open the editor
4. Play and test

Stack
-----

[](#stack)

- PHP `^8.4`
- Symfony Console
- [Laravel Prompts](https://laravel.com/docs/prompts)
- League CLImate
- `amasiye/figlet` for title art and terminal wordmarks
- `ichiloto/editor` as a local Composer dependency during source development

Commands
--------

[](#commands)

The CLI currently ships these commands:

- `ichiloto new` for guided project creation with a quest-like interactive flow
- `ichiloto edit` for opening an Ichiloto project in the terminal editor
- `ichiloto play` for running a project's main entrypoint
- `ichiloto generate:figlet` for forging terminal title art, menu banners, and wordmarks
- `ichiloto generate:map` for lightweight map scaffolding
- `ichiloto generate:actor` for lightweight actor scaffolding
- `ichiloto battle` as an early development command placeholder

Getting Started
---------------

[](#getting-started)

Install the CLI globally:

```
composer global require ichiloto/console
```

Create a new project:

```
ichiloto new my-rpg
```

Open the editor:

```
cd my-rpg
ichiloto edit
```

Play the project:

```
ichiloto play
```

Project Scaffolding
-------------------

[](#project-scaffolding)

`ichiloto new` creates a valid Ichiloto project structure, including:

- `ichiloto.json`
- `composer.json`
- a main PHP entrypoint
- `assets/Data` starter files
- a starter actor
- a starter map
- save and log directories

Useful options:

```
ichiloto new my-rpg --hero "Arin"
ichiloto new my-rpg --battle-engine active_time
ichiloto new my-rpg --title-font slant
ichiloto new my-rpg --install
ichiloto new my-rpg --no-install
ichiloto new my-rpg --directory /path/to/projects/my-rpg
```

Every new project also gets a generated `assets/Graphics/System/title.txt`, so the title scene starts with a real banner instead of a blank placeholder.

FIGlet Generation
-----------------

[](#figlet-generation)

Use `ichiloto generate:figlet` whenever you want to reforge title art or create new terminal banners by hand:

```
ichiloto generate:figlet "Moonfall Legend"
ichiloto generate:figlet "Moonfall Legend" --style epic
ichiloto generate:figlet "Moonfall Legend" --font slant --output assets/Graphics/System/title.txt
ichiloto generate:figlet --list-fonts
```

The curated `--style` options are tuned for Ichiloto's house look, while `--font` gives you direct access to the installed FIGlet fonts when you want exact control.

Runtime Notes
-------------

[](#runtime-notes)

- `ichiloto edit` and `ichiloto play` expect to be run inside a valid Ichiloto project directory containing `ichiloto.json`.
- Both commands prefer `tmux` when it is available and the session is interactive, then fall back to direct launch when it is not.
- `ichiloto battle` is not a full battle runner yet; it is still a placeholder command.

Architecture
------------

[](#architecture)

The executable entrypoint lives in `bin/ichiloto`.

Key source areas:

- `src/Commands` contains the Symfony Console commands
- `src/Support/NewProjectScaffolder.php` builds fresh project skeletons
- `src/AppConfig.php` reads `ichiloto.json`
- `src/Util` contains working-directory and path helpers

Local Development
-----------------

[](#local-development)

If you are working from source, the current setup expects sibling checkouts:

```
ichiloto/
  engine/
  editor/
  console/

```

Install dependencies from the `console` repo:

```
composer install
```

Notes for source development:

- `composer.json` currently resolves `ichiloto/editor` through a local path repository at `../editor`
- the `edit` command also benefits from a sibling `../engine` checkout so editor previews can resolve engine classes cleanly
- FIGlet-backed commands are powered directly by the `amasiye/figlet` package that is now part of this repo's Composer dependencies
- running `./bin/ichiloto list` is the fastest smoke test after dependency changes

Project Links
-------------

[](#project-links)

- Engine repository: [github.com/ichiloto/engine](https://github.com/ichiloto/engine)
- Website repository: [github.com/ichiloto/website-v2](https://github.com/ichiloto/website-v2)
- Console issues: [github.com/ichiloto/console/issues](https://github.com/ichiloto/console/issues)

###  Health Score

32

—

LowBetter than 70% of packages

Maintenance90

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity26

Early-stage or recently created project

 Bus Factor1

Top contributor holds 64.3% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

48d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/b56f1a86c97a44aa8b6e391bdfff3e41895f2262f6fd9295195806a068921e23?d=identicon)[amasiye](/maintainers/amasiye)

---

Top Contributors

[![amasiye](https://avatars.githubusercontent.com/u/5607605?v=4)](https://github.com/amasiye "amasiye (9 commits)")[![amasiyelr](https://avatars.githubusercontent.com/u/141437318?v=4)](https://github.com/amasiyelr "amasiyelr (5 commits)")

---

Tags

game-developmentgame-enginejrpgphpterminal-basedterminal-game

###  Code Quality

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/ichiloto-console/health.svg)

```
[![Health](https://phpackages.com/badges/ichiloto-console/health.svg)](https://phpackages.com/packages/ichiloto-console)
```

###  Alternatives

[laravel/framework

The Laravel Framework.

34.7k532.1M19.2k](/packages/laravel-framework)[illuminate/console

The Illuminate Console package.

13045.3M6.1k](/packages/illuminate-console)[crazywhalecc/static-php-cli

Build single static PHP binary, with PHP project together, with popular extensions included.

1.9k16.6k](/packages/crazywhalecc-static-php-cli)[whatsdiff/whatsdiff

See what's changed in your project's dependencies

761.1k](/packages/whatsdiff-whatsdiff)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
