/grant-program-analytics

Primary LanguageJavaScriptMIT LicenseMIT

Grant Program Analytics

The Grant Program Analytics prototype aims to increase the discoverability of funds that are used to enrich student learning. The prototype leverages AWS technology to move data storage to the cloud and simplify data cleaning processes, and innovates on the structure and presentation of data with advanced filtering and dynamic views. For more information visit the CIC website.

Index Description
High Level Architecture High level overview illustrating component interactions
Deployment How to deploy the project
User Guide The working solution
Directories Project's general directory structure
Changelog Any changes post publish
Credits Meet the team behind the solution
License License details

High Level Architecture

The following architecture diagram illustrates the various AWS components utilized to deliver the solution. For an in-depth explanation of the frontend and backend stacks, refer to the Architecture Design. Architecture Diagram

Deployment

For instructions on how to deploy the application, refer to the Deployment Guide.

User Guide

For instructions on how to navigate the web app interface, refer to the User Guide.

Directories

├── README.md
├── backend
│   └── cdk
│       ├── amplify
│       ├── bin
│       ├── bucket_config
│       ├── bucket_config_img
│       ├── glue
│       ├── graphql
│       ├── lambda
│       ├── lib
├── docs
└── frontend
    └── src
        ├── App.jsx
        ├── components
        │   ├── charts
        │   ├── home
        │   ├── snapshot
        │   ├── summary
        │   └── util
        ├── constants
        ├── pages
  1. /backend/cdk: Contains the deployment code for the app's AWS infrastructure
    • /amplify: Contains the configuration file needed for building Amplify app.
    • /bucket_config: Contains the directory structure that will be uploaded to S3.
    • /bucket_config_img: Contains the directory structure of the image bucket that will be uploaded to S3.
    • /glue: Contains the database schema file.
    • /graphql: Contains the GraphQL data schema file and request/response mapping template files.
    • /lambda: Contains the scripts for all lambda functions.
    • /lib: Contains the deployment code for all 3 stacks of the infrastructure
  2. /docs: Contains all the documents.
  3. /frontend: Contains the user interface code for the solution.
    • /src/components: Contains all components
      • /charts: Classes used for rendering charts/graphs
      • /home: Components used for home page
      • /snapshot: Components used for project summary page
      • /summary: Components used for individual summary page
    • /constants: Contains all constants
    • /pages: Contains user interface code for home page, project summary page, and individual summary page.

Changelog

N/A

Credits

This application was architected and developed by Kotaro Ito, Harshinee Sriram, Aurora Cheng, and Tien Nguyen, with project assistance by Franklin Ma and Victoria Li. A special thanks to the UBC Cloud Innovation Centre Technical and Project Management teams for their guidance and support.

License

This project is distributed under the MIT License.

Apache 2.0

  • Used by aws-cdk to handle AWS services