feat: scrape HN favorites as a Kubernetes CronJob and write to DynamoDB
All checks were successful
/ checks (push) Successful in 35s
/ deploy (push) Successful in 30s

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
Noah Holtware 2026-11-05 18:17:57 -06:00
commit 35e9c73cf2
18 changed files with 5353 additions and 0 deletions

34
package.json Normal file
View file

@ -0,0 +1,34 @@
{
"name": "hackernews-favs-cron",
"version": "1.0.0",
"description": "Kubernetes CronJob: scrapes Hacker News favorites and writes a batch to AWS DynamoDB",
"type": "module",
"scripts": {
"build": "tsc",
"start": "node dist/main.js",
"dev": "tsx src/main.ts",
"test": "vitest run",
"lint": "eslint . && tsc --noEmit",
"format": "prettier --write .",
"format:check": "prettier --check ."
},
"engines": {
"node": ">=22"
},
"dependencies": {
"@aws-sdk/client-dynamodb": "^3.1141.0",
"@aws-sdk/lib-dynamodb": "^3.1141.0",
"cheerio": "^1.0.0"
},
"devDependencies": {
"@commitlint/cli": "^19.5.0",
"@commitlint/config-conventional": "^19.5.0",
"@types/node": "^22.0.0",
"eslint": "^9.13.0",
"prettier": "^3.3.3",
"tsx": "^4.20.0",
"typescript": "^5.6.0",
"typescript-eslint": "^8.15.0",
"vitest": "^4.1.10"
}
}