Uses standard frameworks - Presented via web browser - Query or Analyze, Present, Persist - Developed by AIP and the community - Deployed in AIP “app store” - Install chosen apps in your Araport “dashboard” - Uses AIP Data Architecture - Data services: Local and remote query/retrieval - Data integration and aggregation services - Computation services
developers to: - develop fully functional science apps - work in their own local dev environment while maintaining compatibility with the Araport site - facilitate easy sharing of apps with the AIP community
of modules: registry.npmjs.org - Records module meta information in packages.json (refer spec) - Understands difference between dev only and runtime dependencies - Simple CLI tools $ npm search <package> $ npm install <package> [-g|--save] $ npm update
npm install –g yo - Scaffolds out the new application $ mkdir myapp && cd myapp $ yo aip-science-app - Writes out build configuration (grunt) - Pulls in dependencies (npm, bower)
via npm $ npm install –g grunt-cli - Fulfills a variety of roles, some of which are: - running a small local server (with live reload) enabling rapid development (test runner) - minifying or concatenating CSS and/or JS - look for errors, run unit tests - Configured through a Gruntfile (refer spec)
$ npm install –g bower - Manages dependencies so you don’t have to - Tracks package manifest in bower.json (refer spec) - Understands difference between dev only and runtime dependencies - Easy to use command line $ bower search <package> $ bower init $ bower install <package> [--save] $ bower install git://github.com/user/repo.git
- Issue the which command to check availability of prereqs in shell environment (PATH) $ which git /usr/local/bin/git $ which npm /usr/local/bin/npm $ which {yo,grunt,bower} /usr/local/bin/yo /usr/local/bin/grunt /usr/local/bin/bower - Install any missing dependencies by following instructions outlined in Getting Started guide
GitHub organization page and access the workshop-tutorial-app repo - the repo into your personal GitHub - Clone a local copy via the Unix command line: $ cd ~/ $ mkdir –p git && cd git $ git clone https://github.com/USERNAME/workshop- tutorial-app $ cd workshop-tutorial-app
"watched". For example: app.{html,js,css} - Let’s test the livereload functionality - Open up a text/code editor of your liking - Choose a file for editing (app.html) - Make modifications to the content and then save - Switch over immediately to the web browser - Watch the page reload with the updated content - PROFIT!!!!
"Don’t have an API Client? Click here!" link • This will prompt you with a form requesting: – App name – Araport username – Araport password • Newly created client app will be used to authenticate against AIP, giving access to our API console
development stack - Created and examined the app scaffold - Tested livereload functionality - Let’s save changes to git repo $ git add . $ git commit –am "initial commit"
Lead Erik Ferlanti SE Vivek Krishnakumar BE Svetlana Karamycheva BE Eva Huala Project lead, TAIR Bob Muller Technical lead, TAIR Gos Micklem, co-PI Sergio Contrino Software Engineer Matt Vaughn co-PI Steve Mock Advanced Computing Interfaces Rion Dooley, Web and Cloud Services Matt Hanlon, Web and Mobile Applications Maria Kim BE Ben Rosen BA Walter Moreira, API Developer Joe Stubbs, API Engineer Lisa McDonald Education and Outreach Coordinator