strukt / strukt
Strukt Project
Installs: 222
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
Open Issues: 0
Type:project
Requires
- php: ^8.1
- strukt/framework: v1.1.8-alpha
This package is auto-updated.
Last update: 2025-06-16 08:48:52 UTC
README
Getting started
composer create-project strukt/strukt:1.1.8-alpha --prefer-dist
Listing console commands:
./xcli -l
Generate Application
./xcli app:make payroll
The file structure generated should look as below:
app
└── src
└── Payroll
├── AuthModule
│ ├── Controller
│ │ └── User.php
│ ├── Form
│ │ └── User.php
│ ├── PayrollAuthModule.php
│ ├── Router
│ │ ├── Auth.php
│ │ └── Index.php
│ └── Tests
│ └── UserTest.php
└── User.php # Models are stored in the root of your app (i.e payroll)
There is a default module i.e AuthModule
when you generate an application. Folders generated in a module (facets) can be changed in cfg/module.ini
this also indicates part of alias used to access classes/objects. You'll also find a config file cfg/app.ini
that holds the active application name.
When an application or module is created/generated it is loaded by running the command below, otherwise strukt won't detect it:
./xcli app:reload
The above command will create a App/Loader.php
in the lib/
folder at the root of your project. This file should NEVER be edited because everything will be overwritten once the above command is rerun.
Generate Module
Command syntax for generating a module:
./xcli make:module <app_name> <module_name> <module_alias>
Example command:
./xcli make:module payroll human_resource hr
Now the file structure should look as below:
app/ └── src └── Payroll ├── AuthModule └── HumanResourceModule
Remember to run the app:reload
command to load the module.
Execute Shell
strukt-strukt
uses Psysh.
To drop into shell:
$ ./xcli shell:exec > ls Variables: $core > $core->get("au.ctr.User") = Payroll\AuthModule\Controller\User > $core->get("User") = Payroll\User { +username: null, +password: null, }
Cli
View providers
and middlewares
./xcli sys:ls middlewares # view for console
View index.php
middlewares
./xcli sys:ls middlewares --idx # view for index.php
You can also view providers
by replacing middlewares
Cli Utility
Enable and disable commands
, middlewares
and providers
Example:
./xcli sys:util enable commands pub-make
Run Application
./xcli app:exec
Uses .env
server_{var}
variables to run application.
Notes
The make:router
and make:module
commands will not work on cli console until you run app:make
and app:reload
commands are run respectively.
IMPORTANT: The folder .tpl/
in the root of the project contains sgf/
folder that contains class template files used to generate the application modules and migrations. Ensure to NOT change it until you've understood strukt-generator
Have a good one!