From 96e2619aa234e2eef76edf39bfe6eb3884ec757c Mon Sep 17 00:00:00 2001 From: Derek Slenk Date: Thu, 17 Jul 2025 13:56:32 -0400 Subject: [PATCH] feat: Add shared components and styling for icewatch application - Created example-shared-components.html to demonstrate TypeScript-based shared header and footer components. - Added original-style.css for theming with CSS variables and dark mode support. - Introduced style-backup.css for legacy styles. - Developed test-refactored.html for testing map components with Leaflet integration. - Updated deployment documentation to reflect changes in log file paths and service names. - Renamed project from "great-lakes-ice-report" to "icewatch" in package.json and package-lock.json. - Updated Caddyfile for new log file path. - Added S3 bucket policy for public read access to greatlakes-conditions. - Removed old service file and created new systemd service for icewatch. --- .claude/settings.local.json | 13 ++++++++++ {public => archive}/app-google.js | 0 {public => archive}/app-mapbox-refactored.js | 0 {public => archive}/app-mapbox.js | 0 {public => archive}/app-refactored.js | 0 .../example-shared-components.html | 0 .../original-style.css | 0 {public => archive}/style-backup.css | 0 {public => archive}/test-refactored.html | 0 docs/deployment.md | 4 ++-- package-lock.json | 4 ++-- package.json | 2 +- scripts/Caddyfile | 2 +- .../aws/s3-bucket-policy.json | 0 scripts/great-lakes-ice-report.service | 24 ------------------- scripts/{ => systemd}/icewatch.service | 0 16 files changed, 19 insertions(+), 30 deletions(-) create mode 100644 .claude/settings.local.json rename {public => archive}/app-google.js (100%) rename {public => archive}/app-mapbox-refactored.js (100%) rename {public => archive}/app-mapbox.js (100%) rename {public => archive}/app-refactored.js (100%) rename {public => archive}/example-shared-components.html (100%) rename original-style.css => archive/original-style.css (100%) rename {public => archive}/style-backup.css (100%) rename {public => archive}/test-refactored.html (100%) rename s3-bucket-policy.json => scripts/aws/s3-bucket-policy.json (100%) delete mode 100644 scripts/great-lakes-ice-report.service rename scripts/{ => systemd}/icewatch.service (100%) diff --git a/.claude/settings.local.json b/.claude/settings.local.json new file mode 100644 index 0000000..323ec5a --- /dev/null +++ b/.claude/settings.local.json @@ -0,0 +1,13 @@ +{ + "permissions": { + "allow": [ + "Bash(dir:*)", + "Bash(find:*)", + "Bash(mkdir:*)", + "Bash(mv:*)", + "Bash(ls:*)", + "Bash(rm:*)" + ], + "deny": [] + } +} \ No newline at end of file diff --git a/public/app-google.js b/archive/app-google.js similarity index 100% rename from public/app-google.js rename to archive/app-google.js diff --git a/public/app-mapbox-refactored.js b/archive/app-mapbox-refactored.js similarity index 100% rename from public/app-mapbox-refactored.js rename to archive/app-mapbox-refactored.js diff --git a/public/app-mapbox.js b/archive/app-mapbox.js similarity index 100% rename from public/app-mapbox.js rename to archive/app-mapbox.js diff --git a/public/app-refactored.js b/archive/app-refactored.js similarity index 100% rename from public/app-refactored.js rename to archive/app-refactored.js diff --git a/public/example-shared-components.html b/archive/example-shared-components.html similarity index 100% rename from public/example-shared-components.html rename to archive/example-shared-components.html diff --git a/original-style.css b/archive/original-style.css similarity index 100% rename from original-style.css rename to archive/original-style.css diff --git a/public/style-backup.css b/archive/style-backup.css similarity index 100% rename from public/style-backup.css rename to archive/style-backup.css diff --git a/public/test-refactored.html b/archive/test-refactored.html similarity index 100% rename from public/test-refactored.html rename to archive/test-refactored.html diff --git a/docs/deployment.md b/docs/deployment.md index 344c9d4..808f13f 100644 --- a/docs/deployment.md +++ b/docs/deployment.md @@ -303,7 +303,7 @@ sudo journalctl -u caddy -f ### Log Files - **Application logs**: `sudo journalctl -u icewatch` -- **Caddy access logs**: `/var/log/caddy/great-lakes-ice-report.log` +- **Caddy access logs**: `/var/log/caddy/icewatch.log` - **System logs**: `/var/log/syslog` ### Database Maintenance @@ -378,7 +378,7 @@ For high-traffic deployments: 2. **Configure log rotation**: ```bash - sudo nano /etc/logrotate.d/great-lakes-ice-report + sudo nano /etc/logrotate.d/icewatch ``` 3. **Monitor resource usage**: diff --git a/package-lock.json b/package-lock.json index bf10761..2ed6a1f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,11 +1,11 @@ { - "name": "great-lakes-ice-report", + "name": "icewatch", "version": "1.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "great-lakes-ice-report", + "name": "icewatch", "version": "1.0.0", "hasInstallScript": true, "license": "MIT", diff --git a/package.json b/package.json index dba4058..e6735f3 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "great-lakes-ice-report", + "name": "icewatch", "version": "1.0.0", "description": "Great Lakes Ice Report - Community-driven winter road conditions tracker for Michigan", "main": "dist/server.js", diff --git a/scripts/Caddyfile b/scripts/Caddyfile index 7c9ea16..0c1b5c7 100644 --- a/scripts/Caddyfile +++ b/scripts/Caddyfile @@ -43,7 +43,7 @@ ice.puremichigan.lol { # Logging for monitoring log { - output file /var/log/caddy/great-lakes-ice-report.log { + output file /var/log/caddy/icewatch.log { roll_size 100MB roll_keep 5 } diff --git a/s3-bucket-policy.json b/scripts/aws/s3-bucket-policy.json similarity index 100% rename from s3-bucket-policy.json rename to scripts/aws/s3-bucket-policy.json diff --git a/scripts/great-lakes-ice-report.service b/scripts/great-lakes-ice-report.service deleted file mode 100644 index 9567edf..0000000 --- a/scripts/great-lakes-ice-report.service +++ /dev/null @@ -1,24 +0,0 @@ -[Unit] -Description=Great Lakes Ice Report - Community Winter Conditions Tool -After=network.target -Wants=network.target - -[Service] -Type=simple -User=great-lakes-ice-report -Group=great-lakes-ice-report -WorkingDirectory=/opt/great-lakes-ice-report -ExecStart=/usr/bin/node server.js -Restart=always -RestartSec=5 -Environment=NODE_ENV=production - -# Security settings -NoNewPrivileges=true -PrivateTmp=true -ProtectSystem=strict -ProtectHome=true -ReadWritePaths=/opt/great-lakes-ice-report - -[Install] -WantedBy=multi-user.target diff --git a/scripts/icewatch.service b/scripts/systemd/icewatch.service similarity index 100% rename from scripts/icewatch.service rename to scripts/systemd/icewatch.service