Skip to content

Commit

Permalink
Update getting-started.md
Browse files Browse the repository at this point in the history
Merged joern changes
  • Loading branch information
Tobi Krebs committed Jan 29, 2014
1 parent 9d88dc7 commit f17a8f9
Showing 1 changed file with 28 additions and 27 deletions.
55 changes: 28 additions & 27 deletions fore/doc/getting-started.md
Expand Up @@ -26,38 +26,42 @@ On Mac OS X you can use the [Homebrew](http://brew.sh/) package manager: `brew i

## Installation

All fore dependencies are installed via npm (node package manager) and bower. Npm downloads the dependent modules into a **local** node_modules directory while bower setups all JavaScript libraries utilized by the fore module. Grunt is a tool which provides automating software build processes and various other task needed during development.
All fore dependencies are installed via npm (node package manager) and bower. Npm downloads the dependent modules into a **local** node_modules directory, while bower setups all JavaScript libraries utilized by the fore module. Grunt is a tool which provides automating software build processes and various other task needed during development.

1. Checkout the betterFORM sources from <https://github.com/betterFORM/betterFORM> into a local workspace.
1. Run `npm install bower grunt -g` to install bower and grunt in the **global** node.js context.
1. To install the dependent node_modules for Fore change into the 'fore' directory and call `npm install`. The modules can afterwards be found in the directory 'node_modules'.
1. Install all fore JavaScript dependencies with `bower install`. They will be placed in 'app/bower_components'.
1. To install the dependent node_modules for Fore change into the 'fore' directory and call `npm install`. The modules can afterwards be found in the directory `node_modules`.
1. Install all fore JavaScript dependencies with `bower install`. They will be placed in `app/bower_components`.

## Running Fore
## Running Fore with live reload

`grunt server` - by executing this command the grunt http server and your default browser will be started with index.html.
`grunt server`

This target will support live reloading meaning that changes will become visible in your browser right after you hit 'save' in your editor without the need to explicitly reload the page.

## Deployment
executes the grunt http server and your default browser will be started with index.html.


Changes will become visible in your browser right after you hit 'save' in your editor without the need to reload the page.

## Deployment
To create an optimized version of the App run

`grunt dist`

This will optimize all JavaScript, CSS and Image files and create an optimized app in the created dist directory

## Testing

Fore curently provides two different test setups: 'polymer' tests using Karma and Chai and Webtests via DalekJS.

### HTML Tests
The Fore Web Components are tested with Chai and Karma. All tests are placed beneath the folder fore/test/karma.
All html tests are located in karma/html. Be aware that the execution of the html test is triggered via the
The Fore Web Components are tested with Chai and Karma. All tests are placed beneath the folder `fore/test/karma`. All html tests are located in `karma/html`. Be aware that the execution of the html test is triggered via the

JavaScript function htmlTest in karma/fore-test.js (e.g. htmlTest('html/fore-form.html');
JavaScript function htmlTest in `karma/fore-test.js` (e.g. htmlTest('html/fore-form.html');

The Karma config file can be found at fore/test/karma/conf/karma.conf.js
The Karma config file can be found at `fore/test/karma/conf/karma.conf.js`

#### Execute HTML tests
#### Executing HTML tests

`grunt test-karma`

Expand All @@ -66,21 +70,22 @@ The Karma config file can be found at fore/test/karma/conf/karma.conf.js
http://japhr.blogspot.de/2013/11/getting-started-with-karma-for-polymer.html

### Webtests
All Webtests are written in and executed by the DalekJS Framework. The Fore DalekJS Tests are located at $FORE/test/dalekjs
All Webtests are written in and executed by the DalekJS Framework. The Fore DalekJS Tests are located at `fore/test/dalekjs`

To execute all tests on the app directory (exploded resources, development) execute
To execute all tests on the development (non-optimized) version execute:

`grunt test-dev`

analogue all test on the dist directory (optimized resources, deployment) can be run by calling
To execute all tests on the production version execute:

`grunt test-dist`


## Trouble Shooting
If you experience any trouble with node (npm) or bower try the following command to clean up your caches:
If you experience any problems with node (npm) or bower try the following commands to clean up your caches:

`npm cache clean`

`npm cache clean` and
`bower cache clean`

## Update build infrastructure
Expand All @@ -105,7 +110,7 @@ To install a new managed library and record it as development-dependency run (ag

For more information on commands (and their syntax) see their corresponding homepages ([Nodejs + NPM](http://nodejs.org/) and [Bower](http://bower.io/)).

## Utilized Build Tools
## Tools and libraries
Tools to build and run 'fore'

### Node.js
Expand All @@ -119,16 +124,12 @@ The JavaScript Task Runner
Website: <http://gruntjs.com/>

### Bower
Package Manager for the Web (like Maven for Java and EXPath for XQuery)
Package Manager for the Web

Website: <http://bower.io/>


## Utilized JS Frameworks
JavaScript Frameworks used to implement 'fore' and which are available to form authors

### Polymer
WebComponents for any browser
[Web Components](http://www.w3.org/TR/components-intro/) polyfill for any modern browser

Website: <http://www.polymer-project.org/>

Expand All @@ -138,10 +139,10 @@ JavaScript library to make developers life easier
Website: <http://jquery.com/>


## Utilized Test Tools
## Test Tools

### Karma
Karma is a testing environment (which is testing testing framework agnostic). It can execute test written in [Jasmine](http://pivotal.github.io/jasmine/), [Mocha](http://visionmedia.github.io/mocha/), [QUnit](http://qunitjs.com/) or use your own framework (via a simple adapter).
Karma is a testing environment (which is testing framework agnostic). It can execute test written in [Jasmine](http://pivotal.github.io/jasmine/), [Mocha](http://visionmedia.github.io/mocha/), [QUnit](http://qunitjs.com/) or use your own framework (via a simple adapter).

Website: <http://karma-runner.github.io/>

Expand All @@ -152,7 +153,7 @@ JavaScript Test Framework
Website: <http://visionmedia.github.io/mocha/>

### Chai
Chai is a BDD ((Behaviour Driven Design) / TDD (Test Driven Developtment) assertion library for node and the browser
Chai is a BDD (Behaviour Driven Design) / TDD (Test Driven Development) assertion library for node and the browser.

Website: <http://chaijs.com/>

Expand Down

0 comments on commit f17a8f9

Please sign in to comment.