dotkernel/light

Dotkernel Light Application

1.0.1 2024-11-22 10:54 UTC

This package is auto-updated.

Last update: 2024-12-19 06:19:03 UTC


README

Minimal project to generate a simple website.

OSS Lifecycle PHP from Packagist (specify version)

GitHub issues GitHub forks GitHub stars GitHub license

Continuous Integration codecov Qodana PHPStan

Installing Dotkernel light

Tools

Dotkernel light interface has been tested with npm v10.0.4 and Node.js v20.11.0.

Composer

Installation instructions:

If you have never used composer before make sure you read the Composer Basic Usage section in Composer's documentation

Choosing an installation path for Dotkernel light

Example:

  • absolute path /var/www/dk
  • or relative path dk (equivalent with ./dk)

Installing Dotkernel light

After you choose the path for Dotkernel light (dk will be used for the remainder of this example), let's move onto installation.

Installing Dotkernel light using git clone

This method ensures that the default branch is installed, even if it is not released. Run the following command:

git clone https://github.com/dotkernel/light.git .

The dependencies have to be installed separately, by running this command:

composer install

The setup script prompts for some configuration settings, for example the lines below:

Please select which config file you wish to inject 'Laminas\HttpHandlerRunner\ConfigProvider' into:
  [0] Do not inject
  [1] config/config.php
  Make your selection (default is 1):

Simply select [0] Do not inject, because Dotkernel includes its own configProvider which already contains the prompted configurations.

If you choose [1] config/config.php Laminas's ConfigProvider will be injected.

The next question is:

Remember this option for other packages of the same type? (Y/n)

You should enter y and press Enter.

Configuration - First Run

  • duplicate config/autoload/local.php.dist as config/autoload/local.php

Development mode

Run this command to enable dev mode by turning debug flag to true and turning configuration caching to off. It will also make sure that any existing config cache is cleared.

composer development-enable
  • If not already done, remove the .dist extension from config/autoload/development.local.php.dist.

NPM Commands

To install dependencies into the node_modules directory run this command.

npm install
  • If npm install fails, this could be caused by user permissions of npm. Recommendation is to install npm through Node Version Manager.

The watch command compiles the components then watches the files and recompiles when one of them changes.

npm run watch

After all updates are done, this command compiles the assets locally, minifies them and makes them ready for production.

npm run prod

Running the application

We recommend running your applications in WSL:

  • make sure you have WSL installed on your system
  • currently we provide a distro implementations for AlmaLinux9
  • install the application in a virtualhost as recommended by the chosen distro
  • set $baseUrl in config/autoload/local.php to the address of the virtualhost
  • run the application by opening the virtualhost address in your browser

You should see the Dotkernel light welcome page.

NOTE:

  • If you are getting exceptions or errors regarding some missing services, try running the following command:
sudo php bin/clear-config-cache.php

If config-cache.php is present that config will be loaded regardless of the ConfigAggregator::ENABLE_CACHE in config/autoload/mezzio.global.php