ArtemisGG website
In the root of repository
commercial: https://www.youtube.com/watch?v=sZxzpL5PWnc
code: https://www.youtube.com/playlist?list=PLtzYGrQbwAerEibsEdWg-6EIKCQ34RbfY
demonstration: https://www.youtube.co/playlist?list=PLtzYGrQbwAerI8OWpSMEl3x3MEeSSUaCk
We are creating a League of Legends application called Artemis, which enables one to extract data from previous matches about the enemy jungler. Allowing the user to find their most frequent jungle pathing and ganking routes. This will allow the user to watch out at specific times and prepare for high-danger time frames, avoiding a likely death. This application can also be used to look at professional junglers to see where and when they usually gank to help the new junglers if they are not sure where and when to gank.
Make sure to have Sass installed and any other Dependencies the console says are missing
How to install Sass:
Install Ruby first
Open a cmd and do "gem install sass"
Make sure to have bower and gulp:
Run npm install -g bower
Run npm install -g gulp
Run npm install
Run bower install
'gulp'
'npm start'
'Admin: Username: dualice Password: dualice | Non-Admin: Username: foo Password: bar'
- ejs: javascript templating similar to handlebars https://github.com/tj/ejs
- express: node framework http://expressjs.com/en/index.html
- express-json: middleware to set content type to plain if accept header doesn't have json https://www.npmjs.com/package/express-json
- mongoose: object modeling tool for node that allows schemas to be made to interact with mongo http://mongoosejs.com/
- serve-static: serve static middleware https://github.com/expressjs/serve-static
- wiredep: used in conjunction with gulp to automate concatination of bower dependencies to index https://github.com/taptapship/wiredep
- passport: used for authentication http://passportjs.org/
- passport-local and passport-local-mongoose are used in conjunction with passport and mongoose https://github.com/jaredhanson/passport-local https://github.com/saintedlama/passport-local-mongoose
- express-session is used to maintain user sessions https://github.com/expressjs/session
- morgan is used to log statuses https://github.com/expressjs/morgan
- cookie parser is used by express to parse any cookies that come through https://github.com/expressjs/cookie-parser
- body parser is used to parse json https://github.com/expressjs/body-parser
- connect flash is used to display flash messages https://github.com/jaredhanson/connect-flash
- gulp: task runner to automate simple tasks http://gulpjs.com/
- gulp del: used to clean project https://www.npmjs.com/package/del
- gulp-concat: used to concatinate files https://github.com/contra/gulp-concat
- gulp-jshint: lints project https://www.npmjs.com/package/gulp-jshint
- gulp-imagemin: minimizes images https://www.npmjs.com/package/gulp-imagemin
- gulp-livereload: allows for development with live reload of gulp whenver something is changed https://www.npmjs.com/package/gulp-livereload
- gulp-minify-css: minifies style sheets https://www.npmjs.com/package/gulp-minify-css
- gulp-uglify: minifies scripts https://www.npmjs.com/package/gulp-uglify
- gulp-rename: allows renaming of file after concatination of minfied files ie. adding suffix .min.js https://www.npmjs.com/package/gulp-rename
- gulp-ruby-sass: used in conjunction with stylesheet minification https://github.com/sindresorhus/gulp-ruby-sass
- all minified files get appended to dist folder
- angularJS: framework for client https://angularjs.org/
- angular-animate: module to allow animation
- angular-touch: module for touch functionality
- angular-ui-router: flexible routing with nested views. allows for a 'state' based application
- bootstrap: css and js library will possibly use for grid system http://getbootstrap.com/
- jquery: bootstrap dependency https://jquery.com/
- restangular is used to handle rest api's more efficiently https://github.com/mgonto/restangular
- angular cookies is used to capture cookies sent from the server
- angular filter is used to expose more filtering options for ng-repeat https://github.com/a8m/angular-filter
- Main View: Here the user can look up summoners and find information about their last jungle games and gank percentage
- Login View: Here a user can log in
- Register View: Here a user can register
- User View: Displays a list of users only allowed for admins
- About View: Here there's information about the application
Cookies are sent to enable statefulness. There is nothing a non admin user can do currently. However, if you are an admin you can go to the user page to see a list of users registered.
Most of the data will be pulled from the league api. We have an api which currently only works with the user model. We have an api to enable logging in and registering. This api also allows retrieval of all the users in the database.