https://github.com/xmlking/marklogic-starter-kit
Angular 1.4 + New Router + JSPM
https://github.com/xmlking/marklogic-starter-kit
Last synced: 10 months ago
JSON representation
Angular 1.4 + New Router + JSPM
- Host: GitHub
- URL: https://github.com/xmlking/marklogic-starter-kit
- Owner: xmlking
- License: mit
- Created: 2015-03-23T02:42:06.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2015-03-23T02:42:23.000Z (almost 11 years ago)
- Last Synced: 2025-01-30T05:43:23.927Z (12 months ago)
- Language: CSS
- Size: 1.05 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README copy.md
- License: LICENSE
Awesome Lists containing this project
README
Employee Scheduling UI
======================
[](https://gitter.im/martinmicunda/employee-scheduling-ui?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[](http://travis-ci.org/martinmicunda/employee-scheduling-ui) [](https://david-dm.org/martinmicunda/employee-scheduling-ui#info=devDependencies)
**Note: :warning: This project is under development.**
An UI component for [Employee Scheduling](https://github.com/martinmicunda/employee-scheduling) application. My talk from AngulaJS meetup in Dublin on "**How to start writing apps with ES6, AngularJS 1.x and JSPM**" can be found [here](http://martinmicunda.com/presentations/how-to-start-writing-apps-with-es6-angular-1x-and-jspm/how-to-start-writing-apps-with-es6-angular-1x-and-jspm.html#/).
## Demo
This demo is running from [gh-pages](https://github.com/martinmicunda/employee-scheduling-ui/tree/gh-pages) branch in backend-less development env (see [backend-less](#backend-less) section).
Click here to see it in action!

## Features
* Use ES6 with Angular 1.3
* Use ES6 Modules via [SystemJS](https://github.com/systemjs/systemjs) and [ES6 Module Loader Polyfill](https://github.com/ModuleLoader/es6-module-loader)
* Manage development and production workflow with [JSPM](http://jspm.io/), [SystemJS builder](https://github.com/systemjs/builder) and [Gulp](http://gulpjs.com/)
* Mocked Backend Workflow - help with mocking backend-less development
* Achieve some of the Angular 2.0 goals while still running on Angular 1.3.x
* Produce optimised, production ready code for deployment and automatically deploy this code to [gh-pages](https://github.com/martinmicunda/employee-scheduling-ui/tree/gh-pages) after each commit via [Travis CI](https://travis-ci.org/martinmicunda/employee-scheduling-ui)
## Installation & Configuration
### Platform & Tools
You need to install Node.js and then the development tools. Node.js comes with a package manager called [npm](http://npmjs.org) (requires npm version >= 2.0.0 for this project) for installing NodeJS applications and libraries.
[Install node.js](http://nodejs.org/download/) (requires node.js version >= 0.10.0)
[Install Gulp](http://gulpjs.com/) as global npm modules (requires node.js version >= 0.10.0):
```bash
$ npm install -g gulp
```
### Installation
**1.** Clone or [fork](https://github.com/martinmicunda/employee-scheduling-ui/fork) this repository:
```bash
$ git clone git@github.com:martinmicunda/employee-scheduling-ui.git
$ cd employee-scheduling-ui
```
**2.** Install local dependencies
```bash
$ npm install
```
> **Note:** Verify that all 3rd party dependencies from [package.json](package.json) are installed on your local machine. If you have followed the instructions and there have been no errors when executing the above commands, the dependencies should be installed.
## How to Run
### Development
TODO: add development local steps once the backend is completed
####Advantages####
* Parallel development with backend
* Frontend can have a hand in defining API
* Control over responses
* Minimal impact on code
* Backend-less development (continue development even when backend not available)
* Useful for e2e tests
* Useful for demoing UI work without backend
```bash
$ gulp serve
```
### Production
See [build](#build) section for more details how `build` is created.
```bash
$ gulp serve:dist
```
If you want use CDN then add your CDN url to `PRODUCTION_CDN_URL` variable in [`gulpfile.js`](gulpfile.js) file and then run the build task with argument `--cdn` to replace local path with CDN url:
```bash
$ gulp build --cdn
```
## How to Test
TODO
## How to Deploy
TODO
##Tips
```
# Maintenance
npm update -g #update all outdated global packages
npm update --save-dev #update all outdated local packages (run from project directory)
npm update npm -g #self npm update
brew update && brew doctor
brew upgrade node #update to latest node version
npm shrinkwrap --dev #Lock down dependency versions
```
##Roadmap
* switch from [Node.js](http://nodejs.org/) to [io.js](https://iojs.org/)
* switch form Gulp3 to Gulp 4
## License
Copyright (c) 2014-2015 Martin Micunda
Source code is open source and released under the GNU GPL v3 license.