Annotated File Directory - Plateful/plateful-mobile GitHub Wiki

##Annotated File Directory ###High level architecture of important folders and files

plateful
├── app  #Contains all client-side code.
│   ├── css
│   │   ├── app.scss  #Custom app CSS.
│   │   └── ionic.scss  #Ionic bootstrap CSS.
│   ├── index.jade  #App index page.
│   └── js
│       ├── App.coffee  #Initialize angular's app.
│       ├── config
│       │   ├── appCtrl.coffee  #Contains the $scope of the whole app.
│       │   ├── app_run.coffee  #Configure app.
│       │   └── common
│       │       ├── factories  #Contains form and promise helper factories.
│       │       └── services  #Contains auth helper service.
│       ├── directives
│       │   ├── ngPlaces  #Map view directive.
│       │   ├── ngRater  #Rating view directive.
│       │   └── ngSelect  #Selector directive.
│       ├── factories  #Factories that primarily deal with RESTful calls to the server.
│       │   ├── item
│       │   ├── menu
│       │   ├── photo
│       │   ├── review
│       │   └── user
│       └── modules
│       |   ├── auth  #Client OAuth module.
│       |   │   ├── controllers
│       |   │   ├── directives
│       |   │   ├── services
│       |   │   └── views
│       |   ├── geo  #Geo Location module.
│       |   ├── states  #App controller and views.
│       |   │   ├── app.states.coffee  #States module
│       |   │   ├── item  #Item controller and views
│       |   │   │   ├── controllers
│       |   │   │   └── views
│       |   │   ├── map  #Map controller and views
│       |   │   │   ├── controllers
│       |   │   │   └── views
│       |   │   └── menu  #Menu controller and views
│       |   │       ├── controllers
│       |   │       └── views
│       |   └── tabs  #Contains controller and view for each navigation tab.
│       |       ├── Tabs.coffee  #Tabs module.
│       |       ├── TabsCtrl.coffee  #Tabs controller.
│       |       ├── items
│       |       │   ├── ItemsTab.coffee  #Items routing.
│       |       │   ├── controllers
│       |       │   ├── modals
│       |       │   └── views
│       |       ├── me
│       |       │   ├── MeTab.coffee
│       |       │   └── views
│       |       ├── menus
│       |       │   ├── MenusTab.coffee
│       |       │   ├── controllers
│       |       │   ├── modals
│       |       │   ├── services
│       |       │   └── views
│       |       ├── review
│       |       │   ├── ReviewTab.coffee
│       |       │   ├── controllers
│       |       │   └── views
│       |       ├── settings
│       |       │   ├── SettingsTab.coffee
│       |       │   ├── controllers
│       |       │   └── views
│       |       └── tabs.jade  #Tabs view.
│       └── services #Helper functions.
│           ├── findDistance.coffee
│           ├── imagesService.coffee
│           └── makeStars.coffee  #Tabs view.
├── assets  #Client dependency files, images, and other static assets.
├── bower.json  #List of client dependencies to install before running.
├── gulpfile.coffee  #Task runner
├── hooks  #Tasks to run when compiling platform.
├── import  #Compiles import_server files in javascript. Ignore this folder.
├── import_server  #Contains all code for running complex database logic. Interacts with neo4j, postgreSQL and import server.
│   ├── app.coffee #Basic node import server.
│   ├── config  #Import server configuration.
│   │   ├── api
│   │   ├── db
│   │   ├── environment
│   │   └── express.coffee
│   ├── controller.coffee  #API endpoints for each import server route.
│   └── routes.coffee  #Import server routes.
├── node_modules  #Server dependency files
├── package.json  #List of server dependencies to install before running.
├── platforms  #Different mobile device types to compile everytime gulp build is run via emulate. Ignore this folder.
├── plugins  #Cordova plugins.
├── run  #Compiles server_coffee files in javascript. Ignore this folder.
├── server_coffee  #Contains all server-side code.
│   ├── app.coffee  #Basic node server.
│   ├── components  #Currently handles error responses.
│   ├── config
│   │   ├── api  #External API keys and configurations.
│   │   ├── environment  #Environment configuration.
│   │   ├── express.coffee  #Express configuration.
│   │   ├── local.env.coffee  #Local environment configuration.
│   │   └── neo4j.coffee  #Neo4j connection.
│   ├── controllers  #API endpoint for each database table.
│   │   ├── item.controller.coffee
│   │   ├── menu.controller.coffee
│   │   └── review.controller.coffee
│   ├── models  #Creates class with helper methods for each database table.
│   │   ├── Item.model.coffee
│   │   ├── Menu.model.coffee
│   │   └── Review.model.coffee
│   ├── routes.coffee  #Server routes.
│   └── views  #Server views. Currently only contains 404 error page.
├── test  #Test suite.
└── www  #Compiles app files in javascript. Ignore this folder.