99819b70ff
added caddy-proxy-manager for testing
Build and Push Docker Images (Trusted) / build-and-push (., docker/caddy/Dockerfile, caddy) (push) Has been cancelled
Build and Push Docker Images (Trusted) / build-and-push (., docker/l4-port-manager/Dockerfile, l4-port-manager) (push) Has been cancelled
Build and Push Docker Images (Trusted) / build-and-push (., docker/web/Dockerfile, web) (push) Has been cancelled
Tests / test (push) Has been cancelled
2026-04-21 22:49:08 +00:00
dependabot[bot]
521a059414
deps(deps): Bump better-auth in the production-dependencies group ( #116 )
...
Bumps the production-dependencies group with 1 update: [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth ).
Updates `better-auth` from 1.6.4 to 1.6.5
- [Release notes](https://github.com/better-auth/better-auth/releases )
- [Changelog](https://github.com/better-auth/better-auth/blob/main/packages/better-auth/CHANGELOG.md )
- [Commits](https://github.com/better-auth/better-auth/commits/better-auth@1.6.5/packages/better-auth )
---
updated-dependencies:
- dependency-name: better-auth
dependency-version: 1.6.5
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-20 05:07:02 +00:00
dependabot[bot]
1be8fc2629
deps(deps-dev): Bump the development-dependencies group with 3 updates ( #115 )
...
Bumps the development-dependencies group with 3 updates: [eslint](https://github.com/eslint/eslint ), [shadcn](https://github.com/shadcn-ui/ui/tree/HEAD/packages/shadcn ) and [typescript](https://github.com/microsoft/TypeScript ).
Updates `eslint` from 10.2.0 to 10.2.1
- [Release notes](https://github.com/eslint/eslint/releases )
- [Commits](https://github.com/eslint/eslint/compare/v10.2.0...v10.2.1 )
Updates `shadcn` from 4.2.0 to 4.3.0
- [Release notes](https://github.com/shadcn-ui/ui/releases )
- [Changelog](https://github.com/shadcn-ui/ui/blob/main/packages/shadcn/CHANGELOG.md )
- [Commits](https://github.com/shadcn-ui/ui/commits/shadcn@4.3.0/packages/shadcn )
Updates `typescript` from 6.0.2 to 6.0.3
- [Release notes](https://github.com/microsoft/TypeScript/releases )
- [Commits](https://github.com/microsoft/TypeScript/compare/v6.0.2...v6.0.3 )
---
updated-dependencies:
- dependency-name: eslint
dependency-version: 10.2.1
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: shadcn
dependency-version: 4.3.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: typescript
dependency-version: 6.0.3
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-20 05:06:24 +00:00
dependabot[bot]
3a4807b5cd
deps(deps-dev): Bump the development-dependencies group with 3 updates ( #104 )
...
Bumps the development-dependencies group with 3 updates: [@next/eslint-plugin-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-plugin-next ), [better-sqlite3](https://github.com/WiseLibs/better-sqlite3 ) and [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint ).
Updates `@next/eslint-plugin-next` from 16.2.3 to 16.2.4
- [Release notes](https://github.com/vercel/next.js/releases )
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js )
- [Commits](https://github.com/vercel/next.js/commits/v16.2.4/packages/eslint-plugin-next )
Updates `better-sqlite3` from 12.8.0 to 12.9.0
- [Release notes](https://github.com/WiseLibs/better-sqlite3/releases )
- [Commits](https://github.com/WiseLibs/better-sqlite3/compare/v12.8.0...v12.9.0 )
Updates `typescript-eslint` from 8.58.1 to 8.58.2
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.58.2/packages/typescript-eslint )
---
updated-dependencies:
- dependency-name: "@next/eslint-plugin-next"
dependency-version: 16.2.4
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: better-sqlite3
dependency-version: 12.9.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: typescript-eslint
dependency-version: 8.58.2
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-16 01:17:30 +02:00
dependabot[bot]
0c632811b4
deps(deps): Bump the production-dependencies group with 5 updates ( #105 )
...
Bumps the production-dependencies group with 5 updates:
| Package | From | To |
| --- | --- | --- |
| [autoprefixer](https://github.com/postcss/autoprefixer ) | `10.4.27` | `10.5.0` |
| [better-auth](https://github.com/better-auth/better-auth/tree/HEAD/packages/better-auth ) | `1.6.2` | `1.6.4` |
| [maplibre-gl](https://github.com/maplibre/maplibre-gl-js ) | `5.22.0` | `5.23.0` |
| [next](https://github.com/vercel/next.js ) | `16.2.3` | `16.2.4` |
| [postcss](https://github.com/postcss/postcss ) | `8.5.9` | `8.5.10` |
Updates `autoprefixer` from 10.4.27 to 10.5.0
- [Release notes](https://github.com/postcss/autoprefixer/releases )
- [Changelog](https://github.com/postcss/autoprefixer/blob/main/CHANGELOG.md )
- [Commits](https://github.com/postcss/autoprefixer/compare/10.4.27...10.5.0 )
Updates `better-auth` from 1.6.2 to 1.6.4
- [Release notes](https://github.com/better-auth/better-auth/releases )
- [Changelog](https://github.com/better-auth/better-auth/blob/main/packages/better-auth/CHANGELOG.md )
- [Commits](https://github.com/better-auth/better-auth/commits/better-auth@1.6.4/packages/better-auth )
Updates `maplibre-gl` from 5.22.0 to 5.23.0
- [Release notes](https://github.com/maplibre/maplibre-gl-js/releases )
- [Changelog](https://github.com/maplibre/maplibre-gl-js/blob/main/CHANGELOG.md )
- [Commits](https://github.com/maplibre/maplibre-gl-js/compare/v5.22.0...v5.23.0 )
Updates `next` from 16.2.3 to 16.2.4
- [Release notes](https://github.com/vercel/next.js/releases )
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js )
- [Commits](https://github.com/vercel/next.js/compare/v16.2.3...v16.2.4 )
Updates `postcss` from 8.5.9 to 8.5.10
- [Release notes](https://github.com/postcss/postcss/releases )
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md )
- [Commits](https://github.com/postcss/postcss/compare/8.5.9...8.5.10 )
---
updated-dependencies:
- dependency-name: autoprefixer
dependency-version: 10.5.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: production-dependencies
- dependency-name: better-auth
dependency-version: 1.6.4
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
- dependency-name: maplibre-gl
dependency-version: 5.23.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: production-dependencies
- dependency-name: next
dependency-version: 16.2.4
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
- dependency-name: postcss
dependency-version: 8.5.10
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-16 01:17:13 +02:00
fuomag9
3a16d6e9b1
Replace next-auth with Better Auth, migrate DB columns to camelCase
...
- Replace next-auth v5 beta with better-auth v1.6.2 (stable releases)
- Add multi-provider OAuth support with admin UI configuration
- New oauthProviders table with encrypted secrets (AES-256-GCM)
- Env var bootstrap (OAUTH_*) syncs to DB, UI-created providers fully editable
- OAuth provider REST API: GET/POST/PUT/DELETE /api/v1/oauth-providers
- Settings page "Authentication Providers" section for admin management
- Account linking uses new accounts table (multi-provider per user)
- Username plugin for credentials sign-in (replaces email@localhost pattern)
- bcrypt password compatibility (existing hashes work)
- Database-backed sessions via Kysely adapter (bun:sqlite direct)
- Configurable rate limiting via AUTH_RATE_LIMIT_* env vars
- All DB columns migrated from snake_case to camelCase
- All TypeScript types/models migrated to camelCase properties
- Removed casing: "snake_case" from Drizzle config
- Callback URL format: {baseUrl}/api/auth/oauth2/callback/{providerId}
- package-lock.json removed and gitignored (using bun.lock)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-12 21:11:48 +02:00
fuomag9
eb78b64c2f
update packages
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-12 09:47:54 +02:00
fuomag9
e1c97038d4
Migrate analytics from SQLite to ClickHouse
...
SQLite was too slow for analytical aggregations on traffic_events and
waf_events (millions of rows, GROUP BY, COUNT DISTINCT). ClickHouse is
a columnar OLAP database purpose-built for this workload.
- Add ClickHouse container to Docker Compose with health check
- Create src/lib/clickhouse/client.ts with singleton client, table DDL,
insert helpers, and all analytics query functions
- Update log-parser.ts and waf-log-parser.ts to write to ClickHouse
- Remove purgeOldEntries — ClickHouse TTL handles 90-day retention
- Rewrite analytics-db.ts and waf-events.ts to query ClickHouse
- Remove trafficEvents/wafEvents from SQLite schema, add migration
- CLICKHOUSE_PASSWORD is required (no hardcoded default)
- Update .env.example, README, and test infrastructure
API response shapes are unchanged — no frontend modifications needed.
Parse state (file offsets) remains in SQLite.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-10 00:05:38 +02:00
fuomag9
8598bdd132
update packages
2026-04-03 12:40:24 +02:00
fuomag9
71ea811ad1
update packages
2026-04-03 00:59:53 +02:00
fuomag9
f115f0cb13
update packages
2026-03-26 22:23:50 +01:00
fuomag9
937e70d4f8
update packages
2026-03-25 19:56:05 +01:00
fuomag9
25d49827e5
chore: upgrade Tailwind CSS to v4
...
- Replace @tailwind directives with @import "tailwindcss"
- Switch PostCSS plugin to @tailwindcss/postcss
- Add @theme inline block mapping CSS vars to v4 theme tokens
- Move accordion keyframes/animations to globals.css
- Remove tailwind.config.ts and tailwindcss-animate (no longer needed)
- Update components.json to clear config path
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-23 09:53:09 +01:00
fuomag9
fce32318ce
fix: remove unused imports and update dependencies
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-23 09:31:50 +01:00
fuomag9
c2ac66374f
chore: add shadcn dependency and update lockfile
...
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-22 22:19:50 +01:00
fuomag9
d57e89ed9f
chore: remove MUI and Emotion dependencies
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-22 16:26:35 +01:00
fuomag9
9228484177
feat: install shadcn/ui component primitives
...
Adds 24 shadcn/ui component files to src/components/ui/ via the shadcn CLI, installs required @radix-ui/* and related dependencies, and updates components.json aliases to resolve under src/.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-22 11:23:04 +01:00
fuomag9
7aeaaded5e
feat: scaffold tailwind + shadcn foundation, swap to next-themes
...
Installs Tailwind CSS v3, postcss, autoprefixer, next-themes, lucide-react,
clsx, tailwind-merge, class-variance-authority, sonner, and tailwindcss-animate.
Creates tailwind.config.ts, postcss.config.mjs, components.json, src/lib/utils.ts
(cn helper), replaces globals.css with CSS variable theme, adds
suppressHydrationWarning to html element, and replaces MUI ThemeProvider
with next-themes ThemeProvider + sonner Toaster. MUI remains installed.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-22 11:14:09 +01:00
fuomag9
fc680d4171
fix: use bun:sqlite in production, better-sqlite3 as test-only devDep
...
Production (Docker): src/lib/db.ts now uses bun:sqlite + drizzle-orm/bun-sqlite.
No native addon compilation needed — bun:sqlite is a Bun built-in. The Dockerfile
drops all native build tools (python3, make, g++) and uses --ignore-scripts.
Tests (Vitest/Node.js): bun:sqlite is unavailable under Node.js, so:
- tests/helpers/db.ts keeps better-sqlite3 + drizzle-orm/better-sqlite3 for
integration tests that need a real in-memory SQLite
- vitest.config.ts aliases bun:sqlite → a thin better-sqlite3 shim and
drizzle-orm/bun-sqlite → drizzle-orm/better-sqlite3 for unit tests that
transitively import src/lib/db.ts without executing any queries
- better-sqlite3 stays as a devDependency (test-only, not built in Docker)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-21 11:53:33 +01:00
fuomag9
b5625e5a96
feat: migrate from npm to bun and fix analytics map height
...
Switch package manager and runtime from Node.js/npm to Bun across
Docker, CI, and scripts. The SQLite driver remains better-sqlite3
due to Next.js Turbopack being unable to resolve bun:sqlite during
build-time page pre-rendering.
Also fix the world map not rendering in the analytics page — the
overflowX wrapper added for mobile broke the flex height chain,
collapsing the map to 0px.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-03-21 01:48:21 +01:00
dependabot[bot]
75be9e1c4b
deps(deps-dev): bump the development-dependencies group across 1 directory with 6 updates ( #68 )
...
Bumps the development-dependencies group with 5 updates in the / directory:
| Package | From | To |
| --- | --- | --- |
| [@next/eslint-plugin-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-plugin-next ) | `16.1.6` | `16.1.7` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ) | `25.3.5` | `25.5.0` |
| [@vitest/ui](https://github.com/vitest-dev/vitest/tree/HEAD/packages/ui ) | `4.0.18` | `4.1.0` |
| [drizzle-kit](https://github.com/drizzle-team/drizzle-orm ) | `0.31.9` | `0.31.10` |
| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint ) | `8.56.1` | `8.57.1` |
Updates `@next/eslint-plugin-next` from 16.1.6 to 16.1.7
- [Release notes](https://github.com/vercel/next.js/releases )
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js )
- [Commits](https://github.com/vercel/next.js/commits/v16.1.7/packages/eslint-plugin-next )
Updates `@types/node` from 25.3.5 to 25.5.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
Updates `@vitest/ui` from 4.0.18 to 4.1.0
- [Release notes](https://github.com/vitest-dev/vitest/releases )
- [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.0/packages/ui )
Updates `drizzle-kit` from 0.31.9 to 0.31.10
- [Release notes](https://github.com/drizzle-team/drizzle-orm/releases )
- [Commits](https://github.com/drizzle-team/drizzle-orm/compare/drizzle-kit@0.31.9...drizzle-kit@0.31.10 )
Updates `typescript-eslint` from 8.56.1 to 8.57.1
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.1/packages/typescript-eslint )
Updates `vitest` from 4.0.18 to 4.1.0
- [Release notes](https://github.com/vitest-dev/vitest/releases )
- [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.0/packages/vitest )
---
updated-dependencies:
- dependency-name: "@next/eslint-plugin-next"
dependency-version: 16.1.7
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: "@types/node"
dependency-version: 25.5.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: "@vitest/ui"
dependency-version: 4.1.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: drizzle-kit
dependency-version: 0.31.10
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: typescript-eslint
dependency-version: 8.57.1
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: vitest
dependency-version: 4.1.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-17 23:10:49 +01:00
dependabot[bot]
88af306a4b
deps(deps): bump the production-dependencies group with 4 updates ( #66 )
...
Bumps the production-dependencies group with 4 updates: [apexcharts](https://github.com/apexcharts/apexcharts.js ), [better-sqlite3](https://github.com/WiseLibs/better-sqlite3 ), [dayjs](https://github.com/iamkun/dayjs ) and [maplibre-gl](https://github.com/maplibre/maplibre-gl-js ).
Updates `apexcharts` from 5.10.3 to 5.10.4
- [Release notes](https://github.com/apexcharts/apexcharts.js/releases )
- [Commits](https://github.com/apexcharts/apexcharts.js/compare/v5.10.3...v5.10.4 )
Updates `better-sqlite3` from 12.6.2 to 12.8.0
- [Release notes](https://github.com/WiseLibs/better-sqlite3/releases )
- [Commits](https://github.com/WiseLibs/better-sqlite3/compare/v12.6.2...v12.8.0 )
Updates `dayjs` from 1.11.19 to 1.11.20
- [Release notes](https://github.com/iamkun/dayjs/releases )
- [Changelog](https://github.com/iamkun/dayjs/blob/dev/CHANGELOG.md )
- [Commits](https://github.com/iamkun/dayjs/compare/v1.11.19...v1.11.20 )
Updates `maplibre-gl` from 5.19.0 to 5.20.1
- [Release notes](https://github.com/maplibre/maplibre-gl-js/releases )
- [Changelog](https://github.com/maplibre/maplibre-gl-js/blob/main/CHANGELOG.md )
- [Commits](https://github.com/maplibre/maplibre-gl-js/compare/v5.19.0...v5.20.1 )
---
updated-dependencies:
- dependency-name: apexcharts
dependency-version: 5.10.4
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
- dependency-name: better-sqlite3
dependency-version: 12.8.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: production-dependencies
- dependency-name: dayjs
dependency-version: 1.11.20
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
- dependency-name: maplibre-gl
dependency-version: 5.20.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: production-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-17 23:07:56 +01:00
dependabot[bot]
b487e52307
deps(deps): bump next from 16.1.6 to 16.1.7 ( #67 )
...
Bumps [next](https://github.com/vercel/next.js ) from 16.1.6 to 16.1.7.
- [Release notes](https://github.com/vercel/next.js/releases )
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js )
- [Commits](https://github.com/vercel/next.js/compare/v16.1.6...v16.1.7 )
---
updated-dependencies:
- dependency-name: next
dependency-version: 16.1.7
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-17 23:07:46 +01:00
fuomag9
73c90894b1
Handle wildcard proxy hosts and stabilize test coverage
...
- accept wildcard proxy host domains like *.example.com with validation and normalization
- make exact hosts win over overlapping wildcards in generated routes and TLS policies
- add unit coverage for host-pattern priority and wildcard domain handling
- add a single test:all entry point and clean up lint/typecheck issues so the suite runs cleanly
- run mobile layout Playwright checks under both chromium and mobile-iphone
2026-03-14 01:03:34 +01:00
dependabot[bot]
bfedd1e958
deps(deps-dev): bump the development-dependencies group with 2 updates ( #57 )
...
Bumps the development-dependencies group with 2 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ) and [eslint](https://github.com/eslint/eslint ).
Updates `@types/node` from 25.3.3 to 25.3.5
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
Updates `eslint` from 10.0.2 to 10.0.3
- [Release notes](https://github.com/eslint/eslint/releases )
- [Commits](https://github.com/eslint/eslint/compare/v10.0.2...v10.0.3 )
---
updated-dependencies:
- dependency-name: "@types/node"
dependency-version: 25.3.5
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: eslint
dependency-version: 10.0.3
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-09 18:55:17 +01:00
dependabot[bot]
2b64f67271
deps(deps): bump apexcharts in the production-dependencies group ( #58 )
...
Bumps the production-dependencies group with 1 update: [apexcharts](https://github.com/apexcharts/apexcharts.js ).
Updates `apexcharts` from 5.10.1 to 5.10.3
- [Release notes](https://github.com/apexcharts/apexcharts.js/releases )
- [Commits](https://github.com/apexcharts/apexcharts.js/compare/v5.10.1...v5.10.3 )
---
updated-dependencies:
- dependency-name: apexcharts
dependency-version: 5.10.3
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-09 18:55:12 +01:00
fuomag9
3572b482e8
added tests
2026-03-07 02:02:14 +01:00
fuomag9
c76004f8ac
better pki
2026-03-06 00:22:30 +01:00
fuomag9
c407a01ca4
update packages
2026-03-05 18:49:26 +01:00
fuomag9
fb561f7433
update dependencies
2026-02-27 19:53:01 +01:00
fuomag9
cf74451e9a
feat: MUI date-time pickers, multiselect hosts with search, fix host list
...
- Replace native datetime-local inputs with @mui/x-date-pickers DateTimePicker
(proper dark-themed calendar popover with time picker, DD/MM/YYYY HH:mm format,
min/max constraints between pickers, 24h clock)
- Replace single-host Select with Autocomplete (multiple, disableCloseOnSelect):
checkbox per option, chip display with limitTags=2, built-in search/filter
- getAnalyticsHosts() now unions traffic event hosts WITH all configured proxy host
domains (parsed from proxyHosts.domains JSON), so every proxy appears in the list
- analytics-db: buildWhere accepts hosts: string[] (empty = all); uses inArray for
multi-host filtering via drizzle-orm
- All 6 API routes updated: accept hosts param (comma-separated) instead of host
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 11:42:54 +01:00
fuomag9
69f222e51f
feat: migrate world map to react-map-gl/maplibre with Natural Earth projection
...
- Replace D3/SVG choropleth with react-map-gl MapGL component
- Use Natural Earth projection for proper world view
- Embed traffic data (norm, total, blocked, alpha2) as GeoJSON properties
- Use feature state only for hover highlighting
- Add 1h and 12h interval options to analytics
- Add worker-src blob: to CSP for MapLibre web workers
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-27 00:43:01 +01:00
fuomag9
89a6a71d3e
fix: serve world-atlas topojson locally to satisfy CSP connect-src
...
Fetching from cdn.jsdelivr.net was blocked by connect-src 'self'.
Copy countries-110m.json from world-atlas npm package into public/geo/
and reference it as /geo/countries-110m.json instead.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-26 21:38:01 +01:00
fuomag9
8be69d2774
feat: add analytics dashboard with traffic monitoring
...
- Parse Caddy access logs every 30s into traffic_events SQLite table
- GeoIP country lookup via maxmind (GeoLite2-Country.mmdb)
- 90-day retention with automatic purge
- Analytics page with interval (24h/7d/30d) and per-host filtering:
- Stats cards: total requests, unique IPs, blocked count, block rate
- Requests-over-time area chart (ApexCharts)
- SVG world choropleth map (d3-geo + topojson-client, React 19 compatible)
- Top countries table with flag emojis
- HTTP protocol donut chart
- Top user agents horizontal bar chart
- Recent blocked requests table with pagination
- Traffic (24h) summary card on Overview page linking to analytics
- 7 authenticated API routes under /api/analytics/
- Share caddy-logs volume with web container (read-only)
- group_add caddy GID to web container for log file read access
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-02-26 20:43:23 +01:00
fuomag9
492e8f864c
Merge pull request #44 from fuomag9/dependabot/npm_and_yarn/production-dependencies-60db1f0149
...
deps(deps): bump the production-dependencies group with 2 updates
2026-02-16 08:02:48 +01:00
dependabot[bot]
2c396028e1
deps(deps): bump the production-dependencies group with 2 updates
...
Bumps the production-dependencies group with 2 updates: [@mui/icons-material](https://github.com/mui/material-ui/tree/HEAD/packages/mui-icons-material ) and [@mui/material](https://github.com/mui/material-ui/tree/HEAD/packages/mui-material ).
Updates `@mui/icons-material` from 7.3.7 to 7.3.8
- [Release notes](https://github.com/mui/material-ui/releases )
- [Changelog](https://github.com/mui/material-ui/blob/master/CHANGELOG.md )
- [Commits](https://github.com/mui/material-ui/commits/v7.3.8/packages/mui-icons-material )
Updates `@mui/material` from 7.3.7 to 7.3.8
- [Release notes](https://github.com/mui/material-ui/releases )
- [Changelog](https://github.com/mui/material-ui/blob/master/CHANGELOG.md )
- [Commits](https://github.com/mui/material-ui/commits/v7.3.8/packages/mui-material )
---
updated-dependencies:
- dependency-name: "@mui/icons-material"
dependency-version: 7.3.8
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
- dependency-name: "@mui/material"
dependency-version: 7.3.8
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-02-16 04:46:43 +00:00
dependabot[bot]
4ab7d896b7
deps(deps-dev): bump the development-dependencies group with 3 updates
...
Bumps the development-dependencies group with 3 updates: [drizzle-kit](https://github.com/drizzle-team/drizzle-orm ), [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react ).
Updates `drizzle-kit` from 0.31.8 to 0.31.9
- [Release notes](https://github.com/drizzle-team/drizzle-orm/releases )
- [Commits](https://github.com/drizzle-team/drizzle-orm/compare/drizzle-kit@0.31.8...drizzle-kit@0.31.9 )
Updates `@types/node` from 25.2.2 to 25.2.3
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
Updates `@types/react` from 19.2.13 to 19.2.14
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react )
---
updated-dependencies:
- dependency-name: drizzle-kit
dependency-version: 0.31.9
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: "@types/node"
dependency-version: 25.2.3
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: "@types/react"
dependency-version: 19.2.14
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-02-16 04:46:18 +00:00
dependabot[bot]
3beecd257e
deps(deps-dev): bump the development-dependencies group across 1 directory with 2 updates
...
Bumps the development-dependencies group with 2 updates in the / directory: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ) and [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react ).
Updates `@types/node` from 25.1.0 to 25.2.2
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
Updates `@types/react` from 19.2.10 to 19.2.13
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react )
---
updated-dependencies:
- dependency-name: "@types/node"
dependency-version: 25.2.2
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: "@types/react"
dependency-version: 19.2.13
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-02-09 04:51:27 +00:00
fuomag9
4a749bf4ab
Merge pull request #31 from fuomag9/dependabot/npm_and_yarn/development-dependencies-8a114ed356
...
deps(deps-dev): bump the development-dependencies group across 1 directory with 3 updates
2026-01-21 11:24:35 +01:00
dependabot[bot]
2401c9de66
deps(deps): bump the production-dependencies group across 1 directory with 4 updates
...
Bumps the production-dependencies group with 3 updates in the / directory: [@mui/icons-material](https://github.com/mui/material-ui/tree/HEAD/packages/mui-icons-material ), [better-sqlite3](https://github.com/WiseLibs/better-sqlite3 ) and [next](https://github.com/vercel/next.js ).
Updates `@mui/icons-material` from 7.3.6 to 7.3.7
- [Release notes](https://github.com/mui/material-ui/releases )
- [Changelog](https://github.com/mui/material-ui/blob/master/CHANGELOG.md )
- [Commits](https://github.com/mui/material-ui/commits/v7.3.7/packages/mui-icons-material )
Updates `@mui/material` from 7.3.6 to 7.3.7
- [Release notes](https://github.com/mui/material-ui/releases )
- [Changelog](https://github.com/mui/material-ui/blob/master/CHANGELOG.md )
- [Commits](https://github.com/mui/material-ui/commits/v7.3.7/packages/mui-material )
Updates `better-sqlite3` from 12.5.0 to 12.6.2
- [Release notes](https://github.com/WiseLibs/better-sqlite3/releases )
- [Commits](https://github.com/WiseLibs/better-sqlite3/compare/v12.5.0...v12.6.2 )
Updates `next` from 16.1.1 to 16.1.3
- [Release notes](https://github.com/vercel/next.js/releases )
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js )
- [Commits](https://github.com/vercel/next.js/compare/v16.1.1...v16.1.3 )
---
updated-dependencies:
- dependency-name: "@mui/icons-material"
dependency-version: 7.3.7
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
- dependency-name: "@mui/material"
dependency-version: 7.3.7
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
- dependency-name: better-sqlite3
dependency-version: 12.6.2
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: production-dependencies
- dependency-name: next
dependency-version: 16.1.3
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-01-19 05:11:47 +00:00
dependabot[bot]
fe9e62372b
deps(deps-dev): bump the development-dependencies group across 1 directory with 3 updates
...
Bumps the development-dependencies group with 3 updates in the / directory: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ), [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react ) and [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next ).
Updates `@types/node` from 25.0.3 to 25.0.9
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
Updates `@types/react` from 19.2.7 to 19.2.8
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react )
Updates `eslint-config-next` from 16.1.1 to 16.1.3
- [Release notes](https://github.com/vercel/next.js/releases )
- [Changelog](https://github.com/vercel/next.js/blob/canary/release.js )
- [Commits](https://github.com/vercel/next.js/commits/v16.1.3/packages/eslint-config-next )
---
updated-dependencies:
- dependency-name: "@types/node"
dependency-version: 25.0.9
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: "@types/react"
dependency-version: 19.2.8
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: eslint-config-next
dependency-version: 16.1.3
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-01-19 05:11:15 +00:00
fuomag9
be21f46ad5
Added user tab and oauth2, streamlined readme
2025-12-28 15:14:56 +01:00
fuomag9
aa0ba0d7aa
update packages
2025-12-10 18:30:01 +01:00
fuomag9
9bdb9b413a
fix next.js CVE
2025-12-03 20:57:02 +01:00
fuomag9
6fe098c03b
Better Icons on Main Page, Fixed Background Regeneration, update packages
2025-11-19 20:58:23 +01:00
fuomag9
3be4e1bf7d
Rewritten to use drizzle instead of prisma
...
commit c0894548dac5133bd89da5b68684443748fa2559
Author: fuomag9 <1580624+fuomag9@users.noreply.github.com >
Date: Fri Nov 7 18:38:30 2025 +0100
Update config.ts
commit 5a4f1159d2123ada0f698a10011c24720bf6ea6f
Author: fuomag9 <1580624+fuomag9@users.noreply.github.com >
Date: Fri Nov 7 15:58:13 2025 +0100
first drizzle rewrite
2025-11-07 19:26:32 +01:00
Claude
ad07fd4c13
Fix Prisma client generation in Docker build following best practices
...
Following the Prisma guide for GitHub Actions and CI/CD, this commit addresses
the Prisma client generation issues in the Docker build process:
Changes:
1. **package.json**:
- Removed silent failure fallback in postinstall hook
- Removed redundant prisma generate from build script
- Now fails fast if Prisma generation has issues
2. **docker/web/Dockerfile**:
- Added DATABASE_URL environment variable in deps stage
- Explicitly run prisma generate after npm install to ensure client is created
- Generate Prisma client again in builder stage for build context
- Removed --skip-generate flag from prisma db push
- Added clear comments explaining each Prisma-related step
These changes ensure:
- Prisma client is generated with correct engines for debian-openssl-3.0.x
- Build fails early if there are Prisma configuration issues
- DATABASE_URL is set before running any Prisma commands
- Proper multi-stage Docker build with Prisma support
2025-11-06 21:17:23 +00:00
fuomag9
d07ea08529
Merge pull request #12 from fuomag9/dependabot/npm_and_yarn/production-dependencies-ab61d3bc24
...
deps(deps): bump the production-dependencies group with 3 updates
2025-11-04 23:37:42 +01:00
dependabot[bot]
f6b94d985a
deps(deps): bump the production-dependencies group with 3 updates
...
Bumps the production-dependencies group with 3 updates: [@mui/icons-material](https://github.com/mui/material-ui/tree/HEAD/packages/mui-icons-material ), [@mui/material](https://github.com/mui/material-ui/tree/HEAD/packages/mui-material ) and [bcryptjs](https://github.com/dcodeIO/bcrypt.js ).
Updates `@mui/icons-material` from 7.3.4 to 7.3.5
- [Release notes](https://github.com/mui/material-ui/releases )
- [Changelog](https://github.com/mui/material-ui/blob/master/CHANGELOG.md )
- [Commits](https://github.com/mui/material-ui/commits/v7.3.5/packages/mui-icons-material )
Updates `@mui/material` from 7.3.4 to 7.3.5
- [Release notes](https://github.com/mui/material-ui/releases )
- [Changelog](https://github.com/mui/material-ui/blob/master/CHANGELOG.md )
- [Commits](https://github.com/mui/material-ui/commits/v7.3.5/packages/mui-material )
Updates `bcryptjs` from 3.0.2 to 3.0.3
- [Release notes](https://github.com/dcodeIO/bcrypt.js/releases )
- [Commits](https://github.com/dcodeIO/bcrypt.js/compare/v3.0.2...v3.0.3 )
---
updated-dependencies:
- dependency-name: "@mui/icons-material"
dependency-version: 7.3.5
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
- dependency-name: "@mui/material"
dependency-version: 7.3.5
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
- dependency-name: bcryptjs
dependency-version: 3.0.3
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: production-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-04 22:20:34 +00:00
dependabot[bot]
fc9276635f
deps(deps-dev): bump the development-dependencies group with 2 updates
...
Bumps the development-dependencies group with 2 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ) and [eslint](https://github.com/eslint/eslint ).
Updates `@types/node` from 24.9.2 to 24.10.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
Updates `eslint` from 9.38.0 to 9.39.1
- [Release notes](https://github.com/eslint/eslint/releases )
- [Commits](https://github.com/eslint/eslint/compare/v9.38.0...v9.39.1 )
---
updated-dependencies:
- dependency-name: "@types/node"
dependency-version: 24.10.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: eslint
dependency-version: 9.39.1
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-04 22:20:03 +00:00