Kids Task Clock
This is an attempt to build a clock based on tasks so kids can start to grasp the idea of time passing by sensing how long it takes to finish a task while following an indicator on screen.
Current GitHub Pages version: https://rgs2007.github.io/kidstaskclock/
This repo now includes an AWS deployment pipeline for the static site:
- GitHub Actions workflow:
.github/workflows/deploy-aws.yml - One-time OIDC bootstrap helper:
scripts/bootstrap-github-oidc.ps1
The pipeline deploys this site to:
- An S3 bucket configured for static website hosting
- A GitHub Actions workflow that uploads everything inside
src/on every push tomain
- Make sure you can run AWS CLI commands with credentials that have permission to create IAM and S3 resources.
- Run the bootstrap script from the repo root:
.\scripts\bootstrap-github-oidc.ps1 `
-AwsAccountId 123456789012 `
-GitHubOwner rgs2007 `
-GitHubRepo kidstaskclock `
-SiteBucketName your-unique-site-bucket-name- In GitHub, add this repository secret:
AWS_ROLE_ARN
- In GitHub, add these repository variables:
AWS_REGION=us-east-1
SITE_BUCKET_NAME=<globally-unique-bucket-name>
Notes:
SITE_BUCKET_NAMEmust be globally unique across AWS.- This setup uses S3 website hosting directly, so the site URL will be
http, nothttps. - The IAM trust policy created by the script is scoped to the
mainbranch of this repo.
When you push to main or run the workflow manually:
- GitHub Actions assumes the AWS IAM role using OIDC.
- The workflow syncs the contents of
src/to the S3 website bucket. - The updated files are immediately available on the S3 website endpoint.
After the GitHub secret and variables are configured, either:
- push a commit to
main, or - run the
Deploy to AWSworkflow manually from the Actions tab.
After the bootstrap script completes, it prints the website URL. Each deploy workflow run also prints that URL in the job summary.