Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
7edbf37
Node22 containers
StevenAskwith Jun 24, 2025
cfdb80a
CDK 2.193.0
StevenAskwith Jun 24, 2025
b5fcc86
aws-cdk-lib 2.195.0
StevenAskwith Jun 24, 2025
836973c
version bumps and userpool feature plan plus
StevenAskwith Jun 24, 2025
eb34303
Merge branch 'aws-solutions-library-samples:main' into main
StevenAskwith Dec 3, 2025
6a64498
version bumps
StevenAskwith Dec 3, 2025
130803a
fix for incorrect version of NPM being used for npm install and CDK s…
StevenAskwith Dec 3, 2025
4e25f73
Step 1: Add TypeScript Dependencies and Configuration Build status: S…
StevenAskwith Jan 29, 2026
cc28b84
Step 2: Create Core Type Definitions for Domain Models Build status: …
StevenAskwith Jan 29, 2026
59284f6
Step 3: Convert Utility Functions and Support Functions to TypeScript…
StevenAskwith Jan 29, 2026
624c365
Step 4: Convert GraphQL Operations and Type API Responses Build statu…
StevenAskwith Jan 29, 2026
8763163
Step 5: Convert Store Management System to TypeScript Build status: S…
StevenAskwith Jan 29, 2026
66808f2
Step 6: Convert Custom Hooks to TypeScript Build status: Success
StevenAskwith Jan 29, 2026
5695658
Step 7: Convert Shared/Common React Components to TypeScript Build st…
StevenAskwith Jan 29, 2026
3959d87
Step 8: Convert Device and Model Management Components to TypeScript …
StevenAskwith Jan 29, 2026
40c21e7
Step 9: Convert Fleet Management Components to TypeScript Build statu…
StevenAskwith Jan 29, 2026
a059161
Step 10: Convert Event Management Components to TypeScript Build stat…
StevenAskwith Jan 29, 2026
53b98c7
Step 11: Convert Race Administration Components to TypeScript Build s…
StevenAskwith Jan 29, 2026
c2def09
Step 12: Convert Timekeeper Components to TypeScript Build status: Su…
StevenAskwith Jan 29, 2026
87c9a6f
Step 13: Convert Commentator Components to TypeScript Build status: S…
StevenAskwith Jan 29, 2026
7db51a7
Step 14: Convert User Management and Car Logs Components to TypeScrip…
StevenAskwith Jan 29, 2026
a4b8c42
Step 15: Convert Root Application Files and Configuration to TypeScri…
StevenAskwith Jan 29, 2026
0a61dad
Step 16: Update ESLint Configuration and Fix Remaining Type Errors Bu…
StevenAskwith Jan 29, 2026
8573fd3
Step 17: Update Test Files and Final Build Verification Build status:…
StevenAskwith Jan 29, 2026
5fb6dd3
97% Complete
StevenAskwith Feb 17, 2026
babdefc
Fixed Auth
StevenAskwith Feb 17, 2026
103a3a9
Fixed rerenders
StevenAskwith Feb 17, 2026
4928c14
Commentator Fix
StevenAskwith Feb 17, 2026
7393813
Fixed the missing "key" prop warnings in both `racePage.tsx` and `rac…
StevenAskwith Feb 17, 2026
fcbf289
Time Keeper Wizard rerenders
StevenAskwith Feb 17, 2026
6579522
useCarsApi converted
StevenAskwith Feb 17, 2026
629ca28
Added Typed GraphQL Helper Functions
StevenAskwith Feb 17, 2026
4e3b888
Timer Translations Fix
StevenAskwith Feb 17, 2026
474b70d
Merge branch 'aws-solutions-library-samples:main' into main
StevenAskwith Feb 17, 2026
e3e46e0
nuc minor website
StevenAskwith Feb 17, 2026
9ae7349
CDK Updates
StevenAskwith Feb 17, 2026
2a875a1
implemented new useAuth hook
StevenAskwith Feb 17, 2026
d6276b7
AmplifyV6
StevenAskwith Feb 17, 2026
8710b64
Initial convertion to Vite
StevenAskwith Feb 18, 2026
7a3a57e
Version upgrade and dependancies
StevenAskwith Feb 18, 2026
df47bc9
Vite Conversions of Leaderboard and Overlays
StevenAskwith Feb 18, 2026
90b1674
Leaderboard converted to TypeScript
StevenAskwith Feb 18, 2026
16105d6
minor version updates
StevenAskwith Feb 18, 2026
5d8ecad
leaderboard build fixes
StevenAskwith Feb 18, 2026
369df9b
Fixed leaderboard and overlays configs
StevenAskwith Feb 18, 2026
dcd318b
removed old log files
StevenAskwith Feb 18, 2026
17e90a7
Merge branch 'aws-solutions-library-samples:main' into main
StevenAskwith Mar 14, 2026
e74ca69
Fixed /admin/events/create
StevenAskwith Mar 14, 2026
62d3640
Python 3.12 Lambdas
StevenAskwith Mar 15, 2026
6972ef8
Added tests and fixed Race Time "NaN"
StevenAskwith Mar 15, 2026
1a8663c
deleted: website/src/hooks/useGroupsApi.ts
StevenAskwith Mar 15, 2026
093f184
Legacy Car Activation Page
StevenAskwith Mar 17, 2026
0cbe01a
added back button
StevenAskwith Mar 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ bin/**/*.js
test/**/*.js
!jest.config.js
*.d.ts
!**/vite-env.d.ts
node_modules

# CDK asset staging directory
Expand Down
9 changes: 9 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,15 @@ local.config.docker: ## Setup local config based on branch
cd $(overlaysSrcPath)/graphql/ && amplify codegen
cd $(current_dir)

## Test targets

.PHONY: test test.website
test: ## Run all tests
cd website && npm test

test.website: ## Run website schema conformance tests
cd website && npm test

local.config.python: ## Setup a Python .venv
python3 -m venv --prompt drem .venv
source .venv/bin/activate
Expand Down
6 changes: 3 additions & 3 deletions lib/base-stack.ts
Original file line number Diff line number Diff line change
Expand Up @@ -137,10 +137,10 @@ export class BaseStack extends cdk.Stack {
// Lambda
// Common Config
const lambda_architecture = awsLambda.Architecture.ARM_64;
const lambda_runtime = awsLambda.Runtime.PYTHON_3_11;
var lambda_bundling_image = DockerImage.fromRegistry('public.ecr.aws/sam/build-python3.11:latest');
const lambda_runtime = awsLambda.Runtime.PYTHON_3_12;
var lambda_bundling_image = DockerImage.fromRegistry('public.ecr.aws/sam/build-python3.12:latest');
if (os.arch() === 'arm64') {
lambda_bundling_image = DockerImage.fromRegistry('public.ecr.aws/sam/build-python3.11:latest-arm64');
lambda_bundling_image = DockerImage.fromRegistry('public.ecr.aws/sam/build-python3.12:latest-arm64');
}

// Layers
Expand Down
2 changes: 1 addition & 1 deletion lib/cdk-pipeline-stack.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import { DeepracerEventManagerStack } from './drem-app-stack';

// Constants
const NODE_VERSION = '22'; // other possible options: stable, latest, lts
const CDK_VERSION = '2.1033.0'; // other possible options: latest
const CDK_VERSION = '2.1106.0'; // other possible options: latest
const AMPLIFY_VERSION = '12.14.4';

export interface InfrastructurePipelineStageProps extends cdk.StackProps {
Expand Down
27 changes: 14 additions & 13 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,37 +30,38 @@
]
},
"devDependencies": {
"@babel/plugin-proposal-private-property-in-object": "^7.16.7",
"@types/jest": "^29.5.14",
"@types/node": "20.19.1",
"@types/node": "20.19.33",
"@typescript-eslint/eslint-plugin": "^6.21.0",
"@typescript-eslint/parser": "^6.21.0",
"@babel/plugin-proposal-private-property-in-object": "^7.16.7",
"aws-cdk-lib": "2.202.0",
"aws-cdk-lib": "2.225.0",
"eslint": "^8.48.0",
"eslint-config-node": "^4.1.0",
"eslint-config-prettier": "^9.1.0",
"eslint-config-prettier": "^9.1.2",
"eslint-config-react-app": "^7.0.1",
"eslint-import-resolver-typescript": "^3.10.1",
"eslint-plugin-import": "^2.32.0",
"eslint-plugin-jest": "^27.9.0",
"eslint-plugin-jsx-a11y": "^6.10.2",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-prettier": "^5.5.0",
"eslint-plugin-prettier": "^5.5.5",
"eslint-plugin-react": "^7.37.5",
"eslint-plugin-react-hooks": "^4.6.2",
"jest": "^29.7.0",
"prettier": "^3.6.0",
"ts-jest": "^29.4.0",
"prettier": "^3.8.1",
"ts-jest": "^29.4.6",
"ts-node": "^10.9.2",
"typescript": "5.8.3"
"typescript": "5.9.3"
},
"dependencies": {
"@aws-cdk/aws-lambda-python-alpha": "^2.202.0-alpha.0",
"aws-cdk-lib": "2.202.0",
"awscdk-appsync-utils": "^0.0.769",
"cdk-nag": "2.36.24",
"@aws-cdk/aws-lambda-python-alpha": "^2.225.0-alpha.0",
"@cloudscape-design/component-toolkit": "^1.0.0-beta.138",
"aws-cdk-lib": "2.225.0",
"awscdk-appsync-utils": "^0.0.858",
"cdk-nag": "2.37.55",
"cdk-serverless-clamscan": "^2.13.46",
"constructs": "^10.4.2",
"constructs": "^10.5.0",
"source-map-support": "^0.5.21"
}
}
4 changes: 2 additions & 2 deletions website-leaderboard/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM public.ecr.aws/docker/library/node:18-alpine
FROM public.ecr.aws/docker/library/node:22-alpine

# Install packages
RUN apk update && apk add --update --no-cache \
Expand Down Expand Up @@ -30,4 +30,4 @@ RUN npm install

ENV PORT=3000

CMD ["npm", "start"]
CMD ["npx", "vite", "--host"]
24 changes: 24 additions & 0 deletions website-leaderboard/eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
import js from '@eslint/js';
import prettier from 'eslint-config-prettier';
import reactHooks from 'eslint-plugin-react-hooks';
import reactRefresh from 'eslint-plugin-react-refresh';
import tseslint from 'typescript-eslint';

export default tseslint.config(
{ ignores: ['build/**', 'node_modules/**'] },
js.configs.recommended,
...tseslint.configs.recommended,
{
plugins: {
'react-hooks': reactHooks,
'react-refresh': reactRefresh,
},
rules: {
...reactHooks.configs.recommended.rules,
'react-refresh/only-export-components': ['warn', { allowConstantExport: true }],
'@typescript-eslint/no-unused-vars': 'warn',
'@typescript-eslint/no-explicit-any': 'off',
},
},
prettier
);
18 changes: 18 additions & 0 deletions website-leaderboard/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<link rel="icon" href="/favicon.ico" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="theme-color" content="#000000" />
<meta name="description" content="DeepRacer Event Manager (DREM)" />
<link rel="apple-touch-icon" href="/logo192.png" />
<link rel="manifest" href="/manifest.json" />
<title>DeepRacer Event Manager - Leaderboard</title>
</head>
<body>
<noscript>You need to enable JavaScript to run this app.</noscript>
<div id="root"></div>
<script type="module" src="/src/index.tsx"></script>
</body>
</html>
99 changes: 37 additions & 62 deletions website-leaderboard/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,71 +2,46 @@
"name": "leaderboard",
"version": "0.1.0",
"private": true,
"type": "module",
"dependencies": {
"@aws-amplify/ui-react": "^5.3.1",
"@cloudscape-design/components": "^3.0.409",
"@cloudscape-design/global-styles": "^1.0.13",
"@testing-library/jest-dom": "^6.1.2",
"@testing-library/react": "^14.0.0",
"@testing-library/user-event": "^14.5.1",
"aws-amplify": "^5.3.11",
"aws-rum-web": "^1.15.0",
"classnames": "^2.3.2",
"i18next-browser-languagedetector": "^7.1.0",
"i18next-xhr-backend": "^3.2.2",
"qrcode.react": "^3.1.0",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-i18next": "^13.3.0",
"react-router-dom": "^6.17.0",
"react-scripts": "^5.0.1",
"web-vitals": "^3.5.0"
},
"scripts": {
"start": "ESLINT_NO_DEV_ERRORS='true' react-scripts start",
"build": "DISABLE_ESLINT_PLUGIN='true' react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
"@cloudscape-design/components": "^3.0.1205",
"@cloudscape-design/global-styles": "^1.0.50",
"aws-amplify": "^6.16.2",
"aws-rum-web": "^1.25.0",
"classnames": "^2.5.1",
"i18next": "^25.8.11",
"i18next-browser-languagedetector": "^8.2.1",
"i18next-http-backend": "^3.0.2",
"qrcode.react": "^3.2.0",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-i18next": "^15.7.4",
"react-router-dom": "^6.30.3",
"web-vitals": "^4.2.4"
},
"devDependencies": {
"@babel/plugin-proposal-private-property-in-object": "^7.21.1",
"@typescript-eslint/eslint-plugin": "^6.8.0",
"@typescript-eslint/parser": "^6.8.0",
"eslint": "^8.51.0",
"eslint-config-prettier": "^9.0.0",
"eslint-config-react-app": "^7.0.1",
"eslint-import-resolver-typescript": "^3.6.1",
"eslint-plugin-import": "^2.28.1",
"eslint-plugin-jest": "^27.4.2",
"eslint-plugin-jsx-a11y": "^6.7.1",
"eslint-plugin-prettier": "^5.0.1",
"eslint-plugin-react": "^7.33.2",
"eslint-plugin-react-hooks": "^4.6.0",
"prettier": "^3.4.2",
"typescript": "5.2.2"
"@eslint/js": "^9.39.2",
"@types/jest": "^30.0.0",
"@testing-library/jest-dom": "^6.9.1",
"@testing-library/react": "^14.3.1",
"@testing-library/user-event": "^14.6.1",
"@types/node": "^22.19.11",
"@types/react": "^18.3.28",
"@types/react-dom": "^18.3.7",
"@vitejs/plugin-react": "^5.1.4",
"eslint": "^9.39.2",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-react-hooks": "^5.2.0",
"eslint-plugin-react-refresh": "^0.5.0",
"prettier": "^3.8.1",
"typescript": "5.9.3",
"typescript-eslint": "^8.56.0",
"vite": "^7.3.1"
},
"overrides": {
"react-scripts": {
"typescript": "^5"
},
"react-refresh": "^0.14.0"
"scripts": {
"start": "vite",
"build": "tsc --noEmit && vite build",
"preview": "vite preview",
"lint": "eslint ."
}
}
40 changes: 0 additions & 40 deletions website-leaderboard/public/index.html

This file was deleted.

48 changes: 0 additions & 48 deletions website-leaderboard/src/App.js

This file was deleted.

Loading
Loading