-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpackage.json
More file actions
76 lines (76 loc) · 2.84 KB
/
package.json
File metadata and controls
76 lines (76 loc) · 2.84 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
{
"name": "lunch-slack-bot",
"version": "1.0.0",
"description": "🌤️ Smart serverless Slack bot that automatically sends weather-based lunch meetup reminders. Features automatic weather monitoring, rate limiting, reply API for confirmations, and secure AWS deployment with OpenTofu.",
"main": "dist/index.js",
"scripts": {
"build:dev": "npm run clean && npm run build:weather-check -- --watch & npm run build:reply -- --watch",
"build:reply": "esbuild src/handlers/reply.ts --bundle --platform=node --target=node22 --outfile=dist/reply.js --external:aws-sdk --sourcemap",
"build:weather-check": "esbuild src/handlers/weather-check.ts --bundle --platform=node --target=node22 --outfile=dist/weather-check.js --external:aws-sdk --sourcemap",
"build": "npm run clean && npm run build:weather-check && npm run build:reply",
"clean": "rm -rf dist",
"cq:format:check": "prettier --check \"src/**/*.{ts,js,json}\" \"*.{json,md}\"",
"cq:format:terraform": "terraform fmt terraform/",
"cq:format": "prettier --write \"src/**/*.{ts,js,json}\" \"*.{json,md}\"",
"cq:lint:fix": "eslint src/ --fix",
"cq:lint": "eslint src/",
"cq:type-check": "tsc --noEmit",
"cq": "npm run cq:type-check && npm run cq:lint && npm run cq:format:check",
"deploy": "cd terraform && terraform apply",
"dev": "npm run build:dev",
"plan": "cd terraform && terraform plan",
"test:coverage": "vitest run --coverage",
"test:ui": "vitest --ui",
"test:watch": "vitest",
"test": "vitest run"
},
"keywords": [
"api-gateway",
"automation",
"aws",
"bot",
"dynamodb",
"eventbridge",
"lambda",
"lunch",
"notifications",
"openmeteo",
"opentofu",
"outdoor-activities",
"secrets-manager",
"serverless",
"slack",
"team-coordination",
"terraform",
"typescript",
"weather-api",
"weather",
"webhook"
],
"author": "Luca Becker <hello@luca-becker.me> (https://luca-becker.me/)",
"license": "GPL-3.0",
"dependencies": {
"@aws-sdk/client-dynamodb": "3.958.0",
"@aws-sdk/client-secrets-manager": "3.958.0",
"@aws-sdk/util-dynamodb": "3.958.0",
"date-fns": "4.1.0",
"zod": "4.3.6"
},
"devDependencies": {
"@eslint/js": "9.39.4",
"@types/aws-lambda": "^8.10.129",
"@types/node": "24.12.0",
"@vitest/coverage-v8": "3.2.4",
"@vitest/ui": "3.2.4",
"esbuild": "0.27.3",
"eslint": "9.39.4",
"jiti": "2.6.1",
"prettier": "3.8.1",
"typescript": "^5.3.3",
"typescript-eslint": "8.57.0",
"vitest": "3.2.4"
},
"engines": {
"node": ">=22.0.0"
}
}