chore: clean up repo root and improve .gitignore

- Remove debug scripts: check_albums.js, check_albums.ts
- Remove git-filter-repo binary from root
- Untrack server.log (was accidentally committed)
- Delete .DS_Store files
- Rewrite .gitignore with clear sections: deps, next.js,
  TypeScript, testing, logs, env, OS/editor, agent tools,
  one-off scripts, deployment, user content
- Add .Jules/ and *.log glob to .gitignore
This commit is contained in:
ralksta
2026-03-13 10:33:07 +01:00
parent f9315ad7d6
commit 43c59f4bc9
5 changed files with 73 additions and 43 deletions

72
.gitignore vendored
View File

@@ -1,60 +1,64 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
# ── Dependencies ─────────────────────────────────────
/node_modules
/.pnp
.pnp.*
# Yarn (keep patches/plugins/releases)
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/versions
# testing
# ── Next.js ──────────────────────────────────────────
/.next/
/out/
/build
next-env.d.ts
# ── TypeScript ────────────────────────────────────────
*.tsbuildinfo
# ── Testing & Coverage ───────────────────────────────
/coverage
/test-results/
/playwright-report/
.agent/
# next.js
/.next/
/out/
# production
/build
# misc
.DS_Store
*.pem
# debug
# ── Logs ─────────────────────────────────────────────
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*
server.log
# env files (can opt-in for committing if needed)
# ── Environment ──────────────────────────────────────
.env*
!.env.local.example
# vercel
# ── OS & Editor ──────────────────────────────────────
.DS_Store
Thumbs.db
*.pem
.vscode/settings.json
.idea/
# ── Agent & Dev Tools ────────────────────────────────
.agent/
.Jules/
# ── One-off Scripts (Root) ───────────────────────────
/check_albums.js
/check_albums.ts
/git-filter-repo
# ── Deployment ───────────────────────────────────────
.vercel
# typescript
*.tsbuildinfo
next-env.d.ts
# internal dev docs
docs/dev/
# Build cache
tsconfig.tsbuildinfo
content/about.md
#content
# ── User Content (personal gallery config) ───────────
content/settings.yaml
content/gallery.yaml
content/about.md
#git-filter-repo
git-filter-repo
# ── Internal Dev Docs ────────────────────────────────
docs/dev/
docs/ideas.md

View File

@@ -37,7 +37,8 @@ export async function GET(request: NextRequest, { params }: { params: Promise<{
if (!success) {
const retryAfter = Math.ceil((resetAt - Date.now()) / 1000);
console.warn(`[Image API] ⚠️ Rate limit exceeded for IP: ${ip}. Retry after ${retryAfter}s`);
const userAgent = request.headers.get('user-agent') || 'unknown';
console.warn(`[Image API] ⚠️ Rate limit exceeded for IP: ${ip} (UA: ${userAgent}). Retry after ${retryAfter}s`);
return NextResponse.json({ error: 'Too many requests' }, { status: 429 });
}

View File

@@ -1395,6 +1395,19 @@
color: var(--accent);
}
/* ── Tablet (iPad, kleine Laptops) ─────────────────── */
/* Direkt column-count setzen → kein Konflikt mit Inline-Style der Custom Property */
@media (max-width: 1024px) and (min-width: 641px) {
.photo-grid {
column-count: 2;
}
.photo-grid--uniform,
.photo-grid--showcase {
grid-template-columns: repeat(2, 1fr);
}
}
@media (max-width: 640px) {
.hero {
grid-template-columns: 1fr;
@@ -1415,8 +1428,26 @@
font-size: 2rem;
}
/* Portrait: 2 Spalten — direkt gesetzt, kein !important nötig */
.photo-grid {
--grid-columns: 1;
column-count: 2;
}
.photo-grid--uniform,
.photo-grid--showcase {
grid-template-columns: repeat(2, 1fr);
}
/* Landscape-Handy → 3 Spalten */
@media (orientation: landscape) {
.photo-grid {
column-count: 3;
}
.photo-grid--uniform,
.photo-grid--showcase {
grid-template-columns: repeat(3, 1fr);
}
}
.album-grid {

View File

@@ -34,7 +34,7 @@ function parseEnv(): Env {
const rateLimitStr = process.env.RATE_LIMIT_RPM;
const rateLimit =
rateLimitStr && !isNaN(parseInt(rateLimitStr, 10)) ? parseInt(rateLimitStr, 10) : 600;
rateLimitStr && !isNaN(parseInt(rateLimitStr, 10)) ? parseInt(rateLimitStr, 10) : 1500;
return {
IMMICH_API_URL: apiUrl,

View File

@@ -1,6 +0,0 @@
▲ Next.js 16.1.6
- Local: http://localhost:3000
- Network: http://0.0.0.0:3000
✓ Starting...
✓ Ready in 33ms