Logistics Wizard / Architecture / logistics-wizard-webui
This project is designed with a bunch of awesome new front-end technologies, all on top of a configurable, feature-rich webpack build system that's already setup to provide hot reloading, CSS modules with Sass support, unit testing, code coverage reports, bundle splitting, and a whole lot more, while providing amazing developer tools such as Redux CLI (a generator), Redux devtools (Chrome extension), and Storybook for visually developing and testing components.
This is meant to be a client-side static file application only. No server is used when application is deployed.
When the application runs locally, it uses a Node.js server to bring you developer tools like hot swap. When deployed to cloud, a Node.js runtime is NOT used. You will build static files to the dist
folder and use nginx to host those static files as a purely client side application. Do not write any server side code in this application.
git clone https://github.com/IBM-Cloud/logistics-wizard-webui
cd logistics-wizard-webui
npm install
Create a file called config/.env
with the following data. See .env-example
module.exports = {
controller_service: '<url to your controller api service>',
google_maps_key: '<your google maps api key here (optional)>',
}
To use a continous integration pipeline to handle build and deployment, visit https://github.com/IBM-Cloud/logistics-wizard-toolchain. To manually push to IBM Cloud, continue.
You need to compile and build the application to generate static web files. Then push only those static files to Cloud and use the nginx buildpack to host the files
Verify that your config/.env
file has the correct controller service URL. This URL will be read and injected to the static files during the build process.
npm run clean
npm run deploy:prod
cd dist
Test to see if your application is working.
npm install http-server -g
http-server
The application should be available at http://127.0.0.1:8080 . If everything looks OK, push it to IBM Cloud
ibmcloud app push <unique-app-name> -b staticfile_buildpack
See License.txt for license information.
master | |
---|---|
dev | |