Little single page application connect to server with RESTfull service, create works and description from it.
- Gulp - Build system
- NPM - Package manager
- Browserify - CommonJS in the browser
- Babel - transpile ES6 (including JSX) to ES5
- babelify - Babel transform for Browserify
- React - React framework
- Backbone - Backbone Framework
- react.backbone - Connect Backbone model and collection to React
- wolfy87-eventemitter - Publish Subscriber module
- react-router - A complete routing library for React
- jsdoc - Documentation generator with custom theme and custom settings
- Node - Node.js® is a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications.
- Express - Fast, unopinionated, minimalist web framework for Node.js
- Mongo - MongoDB (from humongous) is a cross-platform document-oriented NoSQL database.
- Mongoose - Elegant mongodb object modeling for node.js
- Winston - A multi-transport async logging library for node.js.
Install:
in main directory
$ npm install
in server/ directory
$ npm install
build project to development version
$ gulp b
build project to production version (uglify, slice console.logs and debuggers)
$ gulp b --production
watch and run server
$ gulp w
generate JSDoc doumentation, support jsx files
$ gulp doc
scan jshint errors
$ gulp lint
check JS errors, if all done it will be deploy to FTP
$ gulp deploy
build test files
$ gulp test
apply test watcher
$ gulp test-w
! important ! This documentation builder has BUG! You dont use -> arrow functions and inside string this symbol !
In 'show_test_results.html' you can see all tests after build
For change configuration gulp and add custom things, you need modify gulpfile.js, task folder, and config in task folder
Copyright (c) 2015 Aleksandrov Sergey
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.