Building Assets
The default CSS/Javascript is built and packaged using webpack. The main Javascript files used are compiled together into a single JS file, which is then minimized. While most settings are exposed, you might still want to customize them.
Source Layout
The "source" files for the assets are in one of two places:
Javascript
resources/js
- Has the JS files required for one of:admin
- JS files for the admin panelfrontend
- JS files required for the frontend
CSS
The default skins use open-source free templates based on Bootstrap. The SASS files are located in either:
resources/sass/admin
- The admin panel SASS filesresources/sass/now-ui
- The frontend SASS files
These are then compiled into CSS files, which are placed into their own respective directories
Compiled Assets
The compiled assets are placed in 3 separate folders (by default):
public/assets/admin
public/assets/frontend
public/assets/global
Each of those folders have a js
and css
folder, and the respective assets
are placed in those folders. After building those assets, the files are placed
into there.
On an update, the files in public/assets/*
will be overwritten, so be careful
when updating to make sure those files aren't overwritten. You can do a diff
against the original JS files in resources/js
and then rebuild, to make sure
your changes are included
Required Tools
nodejs and npm are required to build. Follow the
instructions for your platform to install
nodejs
. After installing it, run the following in your phpVMS folder (the same
directory as the package.json
file). This installs webpack and the associated
dependencies into node_modules
.
npm install
Building both the CSS and Javascript use the same command.
Building CSS
For the frontend and backend, the CSS is built from SASS templates, which are based on bootstrap, with some pre-built templates.
The frontend template uses Bootstrap 4 built using
now-ui; the SASS is
located in resources/sass/now-ui
.
The backend template is built using Bootstrap 3, with the template being based
on paper-dashboard; the
SASS files are located in resources/sass/admin
.
To build the CSS, run the build command:
npm run production
Building JS
The Javascript files are divided into two types:
vendor.js
- This contains all of the vendor files that are compiled and minimized togetherapp.js
- These are the main Javascript files used by the frontend
To update the Javascript files (for example, if you update the livemap file, etc), you need to rebuild the JS files:
npm run production
Then reupload the files from public/assets
.