Skip to content

alexhawkins/employee-scheduling-ui

 
 

Repository files navigation

Employee Scheduling UI

Gitter Build Status devDependency Status

Note: ⚠️ This project is under development.

An UI component for 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.

Demo

This demo is running from gh-pages branch in backend-less development env (see backend-less section).

Click here to see it in action!

Employee Scheduling screenshot

Features

  • Use ES6 with Angular 1.3
  • Use ES6 Modules via SystemJS and ES6 Module Loader Polyfill
  • Manage development and production workflow with JSPM, SystemJS builder and Gulp
  • 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 after each commit via Travis CI

## Installation & Configuration

### Platform & Tools You need to install Node.js and then the development tools. Node.js comes with a package manager called npm (requires npm version >= 2.0.0 for this project) for installing NodeJS applications and libraries.

Install node.js (requires node.js version >= 0.10.0)

Install Gulp as global npm modules (requires node.js version >= 0.10.0):

$ npm install -g gulp

### Installation

1. Clone or fork this repository:

$ git clone git@github.com:martinmicunda/employee-scheduling-ui.git 
$ cd employee-scheduling-ui

2. Install local dependencies

$ npm install

Note: Verify that all 3rd party dependencies from 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

### Backend-less

####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
$ gulp serve

Production

See build section for more details how build is created.

$ gulp serve:dist

## How to Build The build task get app ready for production. The build task include concatenation, minification, compression, cdn etc. If there have been no errors when executing the build command, the build should be located in build/dist directory and this build is ready for uploading to the server! To initiate a full build, you simply run the follow task:

$ gulp build

If you want use CDN then add your CDN url to PRODUCTION_CDN_URL variable in gulpfile.js file and then run the build task with argument --cdn to replace local path with CDN url:

$ 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

License

Copyright (c) 2014-2015 Martin Micunda  

Source code is open source and released under the GNU GPL v3 license.

About

An UI component for Employee Scheduling application.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 46.0%
  • CSS 32.7%
  • HTML 20.3%
  • Shell 1.0%