Skip to content

Commit 097889d

Browse files
chore: add construct documentation to the README (#50)
* chore: initial documentation updates for migration to eoapi-cdk * chore: complete descriptions of the individual constructs * chore: fix root docs link * chore: include links to docs in construct headings * Update README.md Co-authored-by: Vincent Sarago <[email protected]> * Update README.md Co-authored-by: Vincent Sarago <[email protected]> * chore: change service order --------- Co-authored-by: Vincent Sarago <[email protected]>
1 parent c9aaddc commit 097889d

File tree

5 files changed

+3729
-1
lines changed

5 files changed

+3729
-1
lines changed

README.md

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,40 @@
1-
# pgSTAC CDK construct
1+
# eoAPI CDK Construct
2+
3+
eoapi-cdk is a package of [AWS CDK constructs](https://docs.aws.amazon.com/prescriptive-guidance/latest/best-practices-cdk-typescript-iac/constructs-best-practices.html) designed to encapsulate eoAPI services and best practices as simple reusable components.
4+
5+
6+
For more background on the included services see [The Earth Observation API](https://eoapi.dev/)
7+
8+
## Included constructs
9+
Detailed API docs for the constructs can be found [here](https://developmentseed.org/cdk-pgstac/).
10+
11+
### [pgSTAC Database](https://developmentseed.org/cdk-pgstac/#pgstacdatabase-)
12+
An [RDS](https://aws.amazon.com/rds/) instance with [pgSTAC](https://github.com/stac-utils/pgstac) installed and the Postgres parameters optimized for the selected instance type.
13+
14+
### [STAC API](https://developmentseed.org/cdk-pgstac/#pgstacapilambda-)
15+
A STAC API implementation using [stac-fastapi](https://github.com/stac-utils/stac-fastapi) with a [pgSTAC backend](https://github.com/stac-utils/stac-fastapi-pgstac). Packaged as a complete runtime for deployment with API Gateway and Lambda.
16+
17+
### [pgSTAC Titiler API](https://developmentseed.org/cdk-pgstac/#titilerpgstacapilambda-)
18+
A complete dynamic tiling API using [titiler-pgstac](https://github.com/stac-utils/titiler-pgstac) to create dynamic mosaics of assets based on [STAC Search queries](https://github.com/radiantearth/stac-api-spec/tree/master/item-search). Packaged as a complete runtime for deployment with API Gateway and Lambda and fully integrated with the pgSTAC Database construct.
19+
20+
### [STAC Ingestor](https://developmentseed.org/cdk-pgstac/#stacingestor-)
21+
An API for large scale STAC data ingestion and validation into a pgSTAC instance.
22+
23+
![ingestor](/diagrams/ingestor_diagram.png)
24+
25+
Authentication for the STAC Ingestor API can be configured with JWTs authenticated by JWKS. To learn more about securing FastAPI applications with this approach see [Securing FastAPI with JWKS (AWS Cognito, Auth0)](https://alukach.com/posts/fastapi-rs256-jwt/).
26+
27+
A sample Cognito-based authentication system is available at [aws-asdi-auth](https://github.com/developmentseed/aws-asdi-auth).
28+
29+
### [Bastion Host](https://developmentseed.org/cdk-pgstac/#bastionhost-)
30+
A bastion host is a secure gateway that provides access to resources in a private subnet. In this case it provides the ability to make administrative connections to eoAPI's pgSTAC instance.
31+
32+
![Alt text](/diagrams/bastion_diagram.png)
33+
34+
For more background on bastion hosts in AWS see [this article](https://dev.to/aws-builders/bastion-host-in-aws-vpc-2i63).
35+
36+
And for configuration instructions for this construct see [the docs](https://developmentseed.org/cdk-pgstac/#bastionhost-).
37+
238

339
## Published Packages
440

@@ -10,3 +46,5 @@
1046
Versioning is automatically handled via [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) and [Semantic Release](https://semantic-release.gitbook.io/semantic-release/).
1147

1248
_Warning_: If you rebase `main`, you must ensure that the commits referenced by tags point to commits that are within the `main` branch. If a commit references a commit that is no longer on the `main` branch, Semantic Release will fail to detect the correct version of the project. [More information](https://github.com/semantic-release/semantic-release/issues/1121#issuecomment-517945233).
49+
50+

0 commit comments

Comments
 (0)