VeryLittleGravitas / CDTADPQ

Very Little Gravitas implementation of Prototype B for RFI # CDT-ADPQ-0117
https://alerts-ca.herokuapp.com
MIT License
0 stars 1 forks source link

Task: Document code flow #117

Closed danhon closed 7 years ago

danhon commented 7 years ago

From procurement requirement:

"Documentation must show code flow from client UI, to JavaScript library, to REST service to database, pointing to code in the GitHub repository."

danhon commented 7 years ago

Example:

https://github.com/CivicActions/agile-california

"Building on experience, we began in the very first Sprint to implement a automatic deployment system with fully automated testing and fully automated deployment of the candidate build. This used "infrastructure as code" instantiating a new server instance for each deploy, then using Docker and Bowline to orchestrate containers. We have a Slack command that anyone can use to initiate a Jenkins build.

The actual technology is a backbone of Drupal 8 styled with Bootstrap, although a user is unlikely to be aware of that, since we significantly simplified the user interface, and installed it in such a way that it appears to be an iOS or Android app. In actuality it is a mobile-friendly website.

The facilities information is presented on an integrated mobile-friendly map using GeoJSON, MapBox, Leaflet, an open-source mapping system, together with an interactive, responsive table using the Datables library. The API provided by the state is accessed via jQuery."

danhon commented 7 years ago

See also example:

https://github.com/calmeida81/CarlosADPQ

This system consists of two parts. The first is a Node.js webapp written with Express. The second is an Android app written primarily in Java. When a user opens the webapp, they are presented with a splash screen and asked to either login or sign up. When they do, their data is pulled or pushed from a locally running MongoDB database, using Mongoose. The user is then presented with a dashboard screen, which differs depending on whether they are an admin or a user. As an admin, visualization data is presented to them using the d3 javascript library. They are also able to select which data will be sent and to the users via socket connections. Users are able to select their preferences and alter their profiles, both of which are saved in the local database.

When a user opens the Android app, they are similarly presented with a login splash screen. This portion of the app pulls from the webapp database. At the main dashboard screen, the user is able to view data sent by the webapp and alter their profiles. This data is also sent via socket connections. When users receive notifications, they will see them via sockets and push for the app, email with Nodemailer, and sms with twilio.

danhon commented 7 years ago

In progress:

https://github.com/VeryLittleGravitas/CDTADPQ/wiki/Documentation-of-code-flow

danhon commented 7 years ago

Done, see: https://github.com/VeryLittleGravitas/CDTADPQ#5-technical-description-and-narrative-of-code-flow