Download the PHP package dotkernel/frontend without Composer
On this page you can find all versions of the php package dotkernel/frontend. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download dotkernel/frontend
More information about dotkernel/frontend
Files in dotkernel/frontend
Package frontend
Short Description DotKernel Frontend Application
License MIT
Homepage https://github.com/dotkernel/frontend
Informations about the package frontend
frontend
Dotkernel web starter package suitable for frontend applications.
Installing DotKernel frontend
- Installing DotKernel
frontend
- Composer
- Choose a destination path for DotKernel
frontend
installation - Installing DotKernel Frontend
- Configuration - First Run
- Testing (Running)
Tools
DotKernel Frontend 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 frontend
Example:
- absolute path
/var/www/dk
- or relative path
dk
(equivalent with./dk
)
Installing DotKernel frontend
After you choose the path for DotKernel Frontend (dk
will be used for the remainder of this example), let's move onto installation.
Note
The installation uses the PHP extension ext-intl
that may not be enabled by default in your web server. If the installation returns a similar error to the below, check the extension=intl
extension in your php.ini
.
To enable an extension, remove the semicolon (;) in front of it.
Installing DotKernel frontend
using git clone
This method ensures that the default branch is installed, even if it is not released. Run the following command:
The dependencies have to be installed separately, by running this command:
The setup script prompts for some configuration settings, for example the lines below:
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
from session
will be injected.
The next question is:
Remember this option for other packages of the same type? (y/N)
Configuration - First Run
- duplicate
config/autoload/development.local.php.dist
asconfig/autoload/development.local.php
- duplicate
config/autoload/local.php.dist
asconfig/autoload/local.php
- duplicate
config/autoload/mail.local.php.dist
asconfig/autoload/mail.local.php
- Edit
config/autoload/local.php
according to your dev machine and fill in thedatabase
configuration.
Configuration - Mail (optional)
If you want your application to send mails on registration, contact etc. add valid credentials to the following keys in config/autoload/mail.local.php
Under message_options
key:
from
- email address that will send emails (required)from_name
- organization name for signing sent emails (optional)
Under smtp_options
key:
host
- hostname or IP address of the mail server (required)connection_config
- add theusername
andpassword
keys (required)
In config/autoload/local.php
edit the key contact
=> message_receivers
=> to
with string values for emails that should receive contact messages.
Note: Please add at least 1 email address in order for contact message to reach someone
Also feel free to add as many CCs as you want under the contact
=> message_receivers
=> cc
key.
Configuration - reCAPTCHA (optional)
reCAPTCHA is used to prevent abusive activities on your website. DotKernel frontend uses the Google reCAPTCHA for its contact us form.
You must first generate a siteKey
and secretKey
in your Google account - Google reCAPTCHA
Update the recaptcha
array in config/autoload/local.php
with the siteKey
and secretKey
from Google reCAPTCHA.
Note: you need to whitelist localhost
in the reCAPTCHA settings page during development.
When in production do not forget to either remove localhost
from the reCAPTCHA whitelist, or have a separate reCAPTCHA
Database migration
Running the database migration is done with this command
Note: if you have already run the phinx migrations, you may get this message
After submitting y
, you will get this confirmation message.
Again, submit y
to run all the migrations in chronological order. Each migration will be logged in the migrations
table to prevent running the same migration more than once, which is often not desirable.
Seeding the database (Fixtures)
Seeding the database is done with the help of our custom package dotkernel/dot-data-fixtures
built on top of doctrine/data-fixtures. To execute all fixtures, run:
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.
- If not already done, remove the
.dist
extension fromconfig/autoload/development.global.php.dist
.
NPM Commands
To install dependencies into the node_modules
directory run this command.
- If
npm install
fails, this could be caused by user permissions of npm. Recommendation is to install npm throughNode Version Manager
.
The watch command compiles the components then watches the files and recompiles when one of them changes.
After all updates are done, this command compiles the assets locally, minifies them and makes them ready for production.
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 Frontend
welcome page.
NOTE:
- If you are getting exceptions or errors regarding some missing services, try running the following command:
If
config-cache.php
is present that config will be loaded regardless of theConfigAggregator::ENABLE_CACHE
inconfig/autoload/mezzio.global.php
- Development only:
session.cookie_secure
does not work locally so make sure you modify yourlocal.php
, as per the following:
Do not change this in local.php.dist
as well because this value should remain true
on production.
All versions of frontend with dependencies
ext-curl Version *
ext-gettext Version *
ext-json Version *
dotkernel/dot-authorization Version ^3.4.1
dotkernel/dot-controller Version ^3.4.3
dotkernel/dot-data-fixtures Version ^1.1.3
dotkernel/dot-dependency-injection Version ^1.0.0
dotkernel/dot-errorhandler Version ^4.0.0
dotkernel/dot-flashmessenger Version ^3.4.2
dotkernel/dot-mail Version ~3.4 || ^4.1.1
dotkernel/dot-navigation Version ^3.4.2
dotkernel/dot-rbac-guard Version ^3.4.3
dotkernel/dot-response-header Version ^3.2.3
dotkernel/dot-session Version ^5.6.0
dotkernel/dot-twigrenderer Version ^3.4.3
friendsofphp/proxy-manager-lts Version ^1.0.16
laminas/laminas-component-installer Version ^3.4.0
laminas/laminas-config-aggregator Version ^1.14.0
laminas/laminas-form Version ^3.19.1
laminas/laminas-i18n Version ^2.26.0
mezzio/mezzio Version ^3.18.0
mezzio/mezzio-authorization-rbac Version ^1.7.0
mezzio/mezzio-cors Version ^1.11.1
mezzio/mezzio-fastroute Version ^3.11.0
ramsey/uuid-doctrine Version ^2.1.0
roave/psr-container-doctrine Version ^5.2.2