gform-app
v0.1.1
Published
A framework to rapidly create administrative uis such as database clients or cms.
Downloads
8
Readme
gform-app
A framework to rapidly create administrative uis such as database clients or cms. Supports creation of master and detail views based on schemas. Also supports creation of schemas in the ui, which is the essential ingredient to create a cms.
applications built with gfom-app
mongomat
An admin ui for mongodb (More) This is an example of the dynamic resources approach. Stores and schemas can be created and modified at runtime.
mongoose admin example
An example of how to create an admin ui for mongoose (More). This is an example of the static resources approach. All stores and schemas are defined externally and do not change.
examples
The following examples use localstorage to persist data. Check them out in the browser
A simple example a single store with a single static schema:
A cms that uses handlebars for rendering.
An example of a single store with its documents forming a tree structure. Documents are individually associated to schemas by a discriminator property. Each schema has a template. The gui provides a tree view, a preview and a details editor.
The cms does not provide a way to statically generate the site or dynamically serve it either. It is up to the developer to write an application that uses the content and templates from the cms. Usually applications use extra logic and more data sources to render the pages. This extra information can be mocked in the cms using extra data. For example the login information of the current user are replaced by static mock data in the cms.
An example of a dynamic resource factory, which provides a way to dynamically create new schemas and stores.
installation
git clone www.github.com/stemey/gform-app
cd gform-app
bower install
open browser to load examples: /src/gform-app/examples/?.html
to optimize te javascript:
npm install
grunt build
open browser to load examples: /dist/gform-app/examples/?.html
Test
grunt test
open in browser: /node_modules/intern/client.html?config=src/gform-app/tests/intern
Documentation
domain explains the basic concepts.
messages explains the messages that the loosely coupled components use to communicate.
configuration explains how to configure an application from the basic building blockes.