PoNG Static HTML Distribution
Static does not mean, the PoNG portal is not dynamic -- it just needs only a static backend!! So no need of PHP or Tomcat or JEE servers ...
Please also check the PoNG Release Notes.
PoNG Quick Start:
The PoNG JS Framework V0.4 and the PoNG Static HTML Distribution V0.4 are released under MIT License
- Download the static html package here (V0.3, 625 kB)
- Unpack the archive into your web server html directory, e.g.
- Start the web browser and point it to the portal root, e.g.
The portal contains two pages, one static welcome page and a second form type page.
What is inside the install package
Load the bold ones into you editor to start customizing your own portal web GUI,
|.||index.html||an empty page, just to initialize the framework -- there is no need to edit this file|
|.||nav||JSON to define the navigation bar's items|
|/i18n/||translation packages, add your translations here|
|/css/||style sheets to customize the look and feel|
|/css/||custom.css||define your modifications here|
|/css/||...||other files, you won't need to customize any of them|
|/img/||...||folder for graphic decoration and pictures|
|/js/||The heart of the framework|
|/pong-modules/||portal-ng-modules.js||modules hook list|
|/pong-modules/||XYZ/||... sub folder with plug ins ...|
|/svc/||your services, should deliver JSON data, HTML and JS content|
|/svc/layout/||serve JSON config for portal pages|
|/svc/layout/main/||structure||JSON to define start page and main layout, other layouts may include the header and footer from here|
|/svc/layout/test/||structure||JSON for a layout with two rows, with a form in the 1st row and two columns for output in the second row|
|/svc/test/||This is a REST service|
|/svc/test/||pong-form||JSON to initialize the web form and the actions)|
|/svc/test/info/||(index.html)||delivers dummy output for the "info" button|
|/svc/test/check/||(index.html)||delivers dummy output for the "check" button|
|/svc/test/help/||(index.html)||PHP -ui- to deliver help text in different languages|
Start customizing the static portal
Customize the nav bar by editing the
If you add an item, e.g. "blah", you have to add a layout file, so
/svc/layout/blah/structure, refer "step 2"
Customize the layout specification:
- Customize the header and footer as you like. I think you may want to replace the logo.
- Edit the structure file and define your own set of rows and columns and point them to resources and define module types. Now you have to configure the resources and modules, refer "step 3".
The resources are "folders" in the static backend, so you have to create the folders with the resource names (specified in "step 2") and put the module config there to tell the module plug-ins, how to deal with the content of the resource.
To share the JS scripts for modules and CSS files you can modify the main
index.html file. By default a relative path to subdirectories is used.
To change the loaders, please search and modify the following section in the
// EDIT THIS VAR TO SHARE THE INSTALL PACKAGES var cssPath = "css/"; var jsPath = "js/"; var modulesJsPath = "js/pong-modules/"; var modulesCssPath = "css/pong-modules/";
PoNG JS Framework License
The MIT License (MIT)
Copyright (c) 2014 Markus Harms, email@example.com
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.