App
We want to find out whether collection pages can be the next big thing for the company. Part of our assumption validation is to replace 5-6 of the top performing topic pages with collection pages and direct users to those collections. We will track user engagement using KPIs and surveys on the page. The goal is to conduct at least two iterations of quantitative testing with substantial traffic. This application is intended to do that.
Getting started
Start coding by running the remix dev-server:
pnpm run dev
most important configurations
Secrets:
- GH_AUTH_CLIENT_ID - stored as secret in github secrets and password vault
- GH_AUTH_CLIENT_SECRET - stored as secret in github secrets and password vault
- GH_AUTH_COOKIE_SECRET - stored as secret in github secrets and password vault
- APP_DD_API_KEY - is retrieved from company Datadog account, see datadog
Configs:
- Base path: interactive-collection-page-poc
- AWS prefix: interactive-collection-page-poc
- App name: interactive-collection-page-poc
- Datadog team name: poc-collections
- Github orga: POC-Collections/interactive-collection-page-poc
AWS accounts:
- dev: 198826217091 | poccollections-dev-78hgbc
- stage: 336687275680 | poccollections-stage-j45nbq
- prod: 799854598319 | poccollections-prod-6hhdba
setup new stages
setup remix stack in stage
If you want to initialize a new env, please do
git clone https://github.com/PIT-Shared/cdk-remix-setup
export AWS_ACCESS_KEY_ID="...."
export AWS_SESSION_TOKEN="...."
./run.sh -t deploy \
--region eu-central-1 \
--repository POC-Collections/interactive-collection-page-poc \
--task deploy
# add the returned arn for OID as env var AWS_GITHUB_OIDC_ROLE
# in github actions for the specific stage
make it available in the CDN
In order to make it available from CDN under a specific urls add path to central-cdn
deployment as fargate service
If you deploy your service as faragte service, then there are a few things to do once in the network setup.
Step 1: Attach the internet gateway to the VPC
Step 2: adapt routing tables
Go to your routing tables and adapt the rules:
- allow 0.0.0.0/0 to your internet gateway on the public nets
- Allow 0.0.0.0/0 to your transit gateway on the private nets