Final Udacity Project ( Capstone Project) is putting together all that we've leaned in this course. The project is therefore using all from the previous projects with these additions.
Firstly, the whole development was done in a production like enviroment for correct incremental builds via CircleCI. This was accomplished using docker container and connecting to the setup via Nuclide Remote development feature.
Second new addition was the use of Redux Sagas and learning about ES6 generator functions and overall use of sagas to control business logic and orchestration of async events in the application.
Game is fully offline, caching resources with service workers and saving highscores to local storage.
Game is also ARIA aware, managing correct use of alt text for images, supporting keyboard controls only and managing correct color ratios.
The code as in previous projects is again focused on modularity, and overall code organization. This is achieved by, splitting code into separate modules and separating parts of the application.
- Mithril 1.0
- Webpack 2
- Redux + Immutable JS
- Redux-saga
- Docker
- Nuclide-remote-server
- Circle CI + Code Coverage via Coveralls
- Live reloading.
- ES6 via Babel.
- Standard linting via ESLint.
- Mocha + Expect
- Mithril Query
- Mithril Node Render
- Gulp
- Flowtype Typechecking
Get started by installing npm; please follow this tutorial -> http://blog.npmjs.org/post/85484771375/how-to-install-npm
-
Clone the project
git clone https://github.com/RichardIvan/Flagger-Capstone-Project.git
-
Install dependencies
npm i
-
Run
npm run server
to serve production code or.. -
Run with local webpack server
gulp local-dev
View demo in the browser at 'http://localhost:8080'
Thank you for checking out this project.
Copyright (c) 2016 Richard Ivan.
Licensed under the MIT license.