forked from aurelia/framework
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
dbeb8a4
commit 5551c22
Showing
8 changed files
with
3,072 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,112 @@ | ||
<html> | ||
<head> | ||
<title>A Production Setup</title> | ||
<meta name="description" content="If you've completed the Getting Started guide and have had some time to play around with Aurelia, you're probably ready to start building a real application. This guide will help you to get set up with a production-ready starter-kit and show you how to accomplish a few common tasks. | ||
"> | ||
<meta name="keywords" content="JavaScript, SPA, Setup"> | ||
<meta name="author" content="Rob Eisenberg"> | ||
</head> | ||
|
||
<body> | ||
<narrative uid="1" version="1.0"> | ||
## Configuring Your Environment | ||
|
||
Let's start by getting you set up with a great set of tools that you can use to build modern JavaScript applications. All our tooling is built on [Node.js](http://nodejs.org/). If you have that installed already, great! If not, you should go to [the official web site](http://nodejs.org/), download and install it. Everything else we need will be installed via Node's package manager ([npm](https://docs.npmjs.com/getting-started/what-is-npm)). If you already have npm installed, make sure you've got the [latest version](https://github.com/npm/npm/wiki/Troubleshooting#try-the-latest-stable-version-of-node) to avoid any issues with the other tools. | ||
|
||
> **Note:** For command-line operations, we recommend Windows users to use Git Bash or Git Shell. | ||
|
||
First, let's begin by installing [Gulp](http://gulpjs.com/) which we'll be using for build automation. If you don't have it already, you can use npm to set it up like this (in some environments you may need to use `sudo`): | ||
|
||
```shell | ||
npm install -g gulp | ||
``` | ||
|
||
Next, we need to install [jspm](http://jspm.io/). This will serve as our client-side package manager. You can do that like this: | ||
|
||
```shell | ||
npm install -g jspm | ||
``` | ||
|
||
> **Note:** Don't want to use jspm? No problem. All Aurelia packages are available via [Bower](http://bower.io/) as well. | ||
</narrative> | ||
|
||
<narrative uid="2" version="1.0"> | ||
## Setting up the Project Structure and Build | ||
|
||
With the tooling installed, we can now turn our attention to setting up a basic structure for your app. Begin by [downloading the navigation skeleton](https://github.com/aurelia/skeleton-navigation/releases). Unzip it and rename the folder to appropriately represent the app you want to build. | ||
|
||
> **Note:** Alternatively, you can use [Yeoman](http://yeoman.io) to "generate" the skeleton project in the target folder, as follows: | ||
> | ||
> ``` | ||
> npm install -g yo generator-aurelia | ||
> yo aurelia | ||
> ``` | ||
> | ||
> This also runs the `npm` and `jspm` commands listed below. | ||
|
||
Inside the folder you will now find everything you need, including a basic build, package configuration, styles and more. With all this in place, let's run some commands. | ||
|
||
1. Open a console and change directory into your app's directory. | ||
2. Execute the following command to install the Gulp plugins listed in the _devDependencies_ section of the package manifest: | ||
```shell | ||
npm install | ||
``` | ||
3. Next, execute the following command to install the Aurelia libraries, bootstrap and font-awesome, listed in the _jspm.dependencies_ section of the package manifest: | ||
```shell | ||
jspm install -y | ||
``` | ||
Everything we've done so far is standard Node.js build and package management procedures. It doesn't have anything specific to do with Aurelia itself. We're just walking you through setting up a modern JavaScript project and build configuration from scratch. You may be familiar with this already, but if not then welcome to this new and exciting world! | ||
|
||
> **Note:** Bootstrap and Font-Awesome are **not** dependencies of Aurelia. We only leverage them as part of the starter kit in order to help you quickly achieve a decent look out-of-the-box. You can easily replace them with whatever your favorite CSS framework and/or icon library is. | ||
|
||
</narrative> | ||
|
||
<narrative uid="3" version="1.0"> | ||
## Running The App | ||
|
||
If you've followed along this far, you now have all the libraries, build configuration and tools you need to create amazing JavaScript apps with Aurelia. The next thing to do is run the sample app. To see this in action, on your console, use the following command to build and launch the server: | ||
```shell | ||
gulp watch | ||
``` | ||
You can now browse to [http://localhost:9000/](http://localhost:9000/) to see the app. | ||
|
||
> **Note:** The Skeleton App uses [BrowserSync](http://www.browsersync.io/) for automated page refreshes on code/markup changes concurrently accross multiple browsers. If you prefer to disable the mirroring feature set the [ghostMode option](http://www.browsersync.io/docs/options/#option-ghostMode) to false in your build config. | ||
</narrative> | ||
|
||
<narrative uid="4" version="1.0"> | ||
## Running The Unit Tests | ||
|
||
To run the unit tests, first ensure that you have followed the steps above in order to install all dependencies and successfully build the library. Once you have done that, proceed with these additional steps: | ||
|
||
1. Ensure that the [Karma](http://karma-runner.github.io/) CLI is installed. If you need to install it, use the following command: | ||
```shell | ||
npm install -g karma-cli | ||
``` | ||
2. You can now run the tests with this command: | ||
```shell | ||
karma start | ||
``` | ||
</narrative> | ||
|
||
<narrative uid="5" version="1.0"> | ||
## Running The E2E Tests | ||
|
||
Integration tests are performed with [Protractor](http://angular.github.io/protractor/#/). | ||
|
||
1. Place your E2E-Tests into the folder ```test/e2e/src```. | ||
2. Install the necessary webdriver: | ||
```shell | ||
gulp webdriver_update | ||
``` | ||
3. Configure the path to the webdriver by opening the file ```protractor.conf.js``` and adjusting the ```seleniumServerJar``` property. Typically it's only needed to adjust the version number. | ||
4. Make sure your app runs and is accessible: | ||
```shell | ||
gulp watch | ||
``` | ||
5. In another console run the E2E-Tests: | ||
```shell | ||
gulp e2e | ||
``` | ||
</narrative> | ||
</body> | ||
</html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
<html> | ||
<head> | ||
<title>Business Advantages</title> | ||
<meta name="description" content="Aurelia is open source, but unlike much open source in the JavaScript space, Aurelia is an official product with commercial backing. If your business is going to spend significant money building software, you want to do it on a platform that's committed to you as a customer. You want to be able to form a relationship with your technology provider to ensure that you and your developers have a solid platform upon which to build your business now and in the years to come. This article details a few important business advantages which you won't find all together in any product besides Aurelia."> | ||
<meta name="keywords" content="Benefits, Business"> | ||
<meta name="author" content="Rob Eisenberg"> | ||
</head> | ||
|
||
<body> | ||
<narrative uid="1" version="1.0"> | ||
## Commerically Backed | ||
|
||
* One of the only two main-stream, open-source SPA frameworks with official commercial backing (Ember is the other). | ||
* The only SPA framework with commercial support options available. | ||
* Custom contracts available for enterprises. | ||
* Internally “dogfooded” by Durandal Inc. in its own business-critical products. | ||
|
||
Many technologists make incorrect assumptions in this space. You may hear about "Google's Polymer" (or Angular) or "Facebook's React". However, these libraries aren't official products of their repsective companies. React team members have stated publicly that Facebook is not committed to the React library. Google developers have stated publicly that Polymer is not a Google product and developers are not considered customers. Angular and Polymer are two out of six UI libraries built by Google employees, all competative with one another, and none officially recognized by the company. There is much marketing and brand recognition around these libraries but no guarantee and little hope of long-term stability. We encourage you to try to see past the marketing, brands and hype and into the core capabilities and benefits of the technology itself. If you do, we think you'll realize that Aurelia is the best option available. | ||
</narrative> | ||
|
||
<narrative uid="2" version="1.0"> | ||
## Commercial Products and Services | ||
|
||
* Official on-site or virtual training. | ||
* Consulting, advisory and code-review services. | ||
* Aurelia Interface (In Development) - Cross-platform, mobile UI components. | ||
* Aurelia Data Controls (In Development) - Data-oriented and LOB components. | ||
* Much more coming... | ||
</narrative> | ||
|
||
<narrative uid="3" version="1.0"> | ||
## Strategic Partnerships | ||
|
||
* Partnerships with both large and boutique consulting organizations in order to provide scale-out of developer resources as needed by businesses adopting Aurelia. | ||
* Official training partners around the world to deliver training anywhere and anytime. | ||
</narrative> | ||
|
||
<narrative uid="4" version="1.0"> | ||
## Broad Customer Reach | ||
|
||
* Applications developed in virtually every space: healthcare, insurance, finance, entertainment, technology, developer tools, LOB, gaming, etc. | ||
* Used internally at serveral, well-known enterprises. | ||
* Adoption among large, international organizations. | ||
</narrative> | ||
</body> | ||
</html> |
Oops, something went wrong.