j40-cejst-2/docs/architecture/README.md
Shelby Switzer b61d971f15
Add diagrams detailing our geo data pipeline (#170)
* Detailed flow for data inputs, census data, score creation, and geo
data generation (geoJSON and MVT)
* Include diagram showing vision for geoplatform ownership

Co-authored-by: Shelby Switzer <shelby.switzer@cms.hhs.gov>
2021-06-18 10:21:23 -04:00

29 lines
1.9 KiB
Markdown

# Architecture
The below is a general architecture of our proposed system:
![Architecture](architecture-mmd.svg)
The following is a more detailed diagram of the geo data pipeline architecture (the Data Pipeline and Server boxes in the general architecture diagram above).
![Geo Data Pipeline](geodata-pipeline-arch-mmd.svg)
We are partnering with Geoplatform to turn some of these pieces into open source shared services that they would own. The following is a modified diagram showing which pieces would tentatively be owned by Geoplatform.
![Geo Data Pipeline](geodata-pipeline-arch-geoplatform-mmd.svg)
## Updating the Diagram
**Note: Do Not directly modify the svg file, it is generated automatically!**
In the event that you are interested in updating the architecture of our system, please go through the Architecture Decision Record Process (see [here](https://github.com/usds/justice40-tool/tree/main/docs/decisions) for more detail on this process).
Provided you have already done this, however, and/or would like to make small changes to the diagram itself, please read on!
This diagram was generated from a text-based markdown-like file using [MermaidJS](https://mermaid-js.github.io/) syntax and the [Compile Mermaid Markdown](https://github.com/marketplace/actions/compile-mermaid-markdown) Github Action.
To update, consult Mermaid syntax [here](https://mermaid-js.github.io/mermaid/#/flowchart) and update the `architecture.mmd` file.
To preview your changes, see Use Cases and Integrations [here](https://mermaid-js.github.io/mermaid/#/integrations) in order to setup editor integration.
Once you are satisfied with your change, create a pull request. The `compile_mermaid.yml` workflow ([here](https://github.com/usds/justice40-tool/blob/main/.github/workflows/compile_mermaid.yml)) will automatically generate and commit an SVG version of your diagram with the name `X.svg`.