This website requires JavaScript.
3b320b08c2
Add renovate.json
renovate/configure
remco
2026-10-02 21:00:15 +00:00
1c9ddcd48a
fix(cms): increase docker mem limit to 6gb and enforce node max-old-space-size to prevent OOM killer crashes
main
openhands
2026-10-02 22:25:16 +02:00
30ff970c38
chore: upgrade to pnpm v12, update dependencies, and fix msw v3 typescript types
openhands
2026-10-02 21:31:42 +02:00
f99980052b
perf: optimize cache layer for speed and stability
openhands
2026-10-02 17:16:03 +02:00
f181cd6af4
chore: ignore local runtime snapshots under backups/
openhands
2026-10-01 18:07:56 +02:00
8a6d92afd8
fix(cloudflare): cache the gamedata tree at the edge with respect_origin
openhands
2026-10-01 18:00:48 +02:00
dbaccd7cfc
fix(gamedata): never cache a missing gamedata file
openhands
2026-10-01 18:00:36 +02:00
4e036b08d5
fix(proxy): drop request rate limiting from gamedata entirely
openhands
2026-10-01 17:56:48 +02:00
f0dcf440a7
fix(proxy): split rate limiting into page and static zones
openhands
2026-10-01 17:49:41 +02:00
4a1211a931
feat(proxy): add per-IP rate and connection limits
openhands
2026-10-01 17:25:49 +02:00
e3c010f383
fix(proxy): raise nginx worker rlimit above worker_connections
openhands
2026-10-01 17:11:04 +02:00
a6cc3cafa9
fix(catalog): read furnidata from one cache, purge the gamedata edge on write
openhands
2026-10-01 15:16:48 +02:00
cede541813
fix(catalog): route item-table writes to the catalog they belong to
openhands
2026-09-30 20:06:48 +02:00
e0efbef30d
fix(catalog): make the Builder Club catalog read and write its own offers
openhands
2026-09-30 19:17:20 +02:00
cebcf440c5
feat(catalog): record bulk edits, make deletions reversible, unify the tree read
openhands
2026-09-30 18:19:36 +02:00
9550b3d66f
feat(catalog): make the live catalog self-correcting and honest about failure
openhands and Claude Opus 4.8
2026-09-30 15:15:34 +02:00
28ce0f911c
fix(catalog): keep the live catalog truthful after every import path
openhands and Claude Opus 4.8
2026-09-30 14:45:26 +02:00
d73baf1458
fix(catalog): take furnidata values from the clone source for retro items
openhands
2026-09-29 16:02:58 +02:00
2f7e557d5e
feat(catalog): add a Studio button to fix missing furnidata entries
openhands
2026-09-29 15:48:32 +02:00
4be7eaed59
fix(catalog): never create a page that reuses a sibling's order number
openhands
2026-09-29 15:34:44 +02:00
9cc57cddfc
feat(catalog): update the catalog live after an import, no page refresh
openhands
2026-09-29 15:34:36 +02:00
7507c3b55c
fix(deploy): detect the actually-live blue/green slot, stop nginx-sync clobbering the upstream
openhands
2026-09-28 23:38:22 +02:00
90b65c92a2
feat(proxy): sync Cloudflare ranges at nginx+Traefik, block IP spoofing
openhands
2026-09-28 23:35:00 +02:00
7697728d07
feat(cache): single-owner caching across nginx, edge and content edits
openhands
2026-09-28 21:55:18 +02:00
30dcecd530
style: restore tab indentation in package.json
openhands
2026-09-27 19:49:30 +02:00
e4f83a8036
chore: upgrade to pnpm v12, vitest v5 and resolve deprecated subdependencies
openhands
2026-09-27 19:42:34 +02:00
f187cd70a9
chore(deps): bump vitest and @vitest/coverage-v8 to 5.0.2
openhands
2026-09-27 19:32:57 +02:00
d2d01141f1
style: apply Biome formatting to the catalog release test
openhands
2026-09-27 19:26:08 +02:00
c2981bd970
test(catalog): give the Git publication tests room to finish
openhands
2026-09-27 19:20:44 +02:00
d9ef7f8360
chore(ci): remove Renovate
openhands
2026-09-27 19:15:31 +02:00
1f9ad02410
chore: ignore .env.local and .env.*.local
openhands
2026-09-27 19:03:44 +02:00
80d7ae14ba
fix(ci): fail fast when the deploy dir has no DATABASE_URL
openhands
2026-09-27 18:57:10 +02:00
bc00ecf08c
feat(i18n): complete message parity across all 25 locales
openhands
2026-09-27 18:38:58 +02:00
944527e078
feat(nitro-cleanup): dedupe FurnitureData and clean dangling figure entries
openhands
2026-09-27 17:14:30 +02:00
d176fad4da
fix(nitro): repair stale meta.image in bundles that are already lossless
openhands
2026-09-27 17:13:52 +02:00
9ee22db8ba
fix(nitro): normalise attached and recovered .nitro bundles too
openhands
2026-09-27 16:00:44 +02:00
b26e2e0de4
feat(nitro): normalise hotel and uploaded bundles to WebP Lossless
openhands
2026-09-27 15:55:17 +02:00
306e209e29
fix(nitro): normalise uploaded bundles so meta.image matches the texture
openhands
2026-09-27 15:47:44 +02:00
17de94d984
feat(nitro): convert imported SWF bundles to WebP Lossless
openhands
2026-09-27 15:42:21 +02:00
420210ffa0
fix(build): make the production build pass, and stop it eating 20GB
openhands
2026-09-25 19:47:10 +02:00
155bf750c3
fix(cache): bound grace windows, cap render queues, and drop the useless estimate
openhands
2026-09-25 18:55:33 +02:00
f81b114b69
perf(cache): single-flight avatar renders, cacheable public reads, cheap row counts
openhands
2026-09-25 18:42:23 +02:00
203399aab7
fix(cache): true LRU, stale-while-revalidate and cross-process invalidation
openhands
2026-09-25 18:26:45 +02:00
f490fcc9da
fix(imaging): stop caching fallback renders
openhands
2026-09-24 23:34:54 +02:00
fe5a7a6185
fix(imaging): keep avatars rendering, cacheable and reliably timed
openhands
2026-09-24 23:22:28 +02:00
8486ac4053
feat(security): add darklist.de source and raise the blocklist cap to 1M
openhands
2026-09-24 23:22:27 +02:00
7f6febf906
fix(security): drop URLhaus feed, validate CIDR ranges, pass unknown client IPs
openhands
2026-09-24 19:19:22 +02:00
7392b843ad
fix(security): LAPI-only engine boot, import via stdin, correct compose service
openhands
2026-09-24 18:59:13 +02:00
9562a75378
feat(security): external IP blocklist sync for the local CrowdSec engine
openhands
2026-09-24 18:39:38 +02:00
84d53139a9
feat(security): opt-in local CrowdSec LAPI bouncer on the Docker engine
openhands
2026-09-24 18:08:18 +02:00
3e1a3f92c8
feat(security): recovery alerts, gate-block sharing, rolling-window burst and admin breakdown for CrowdSec
openhands
2026-09-23 15:06:16 +02:00
301edd2c9a
feat(security): ops alerts, shared backoff, atomic quota and daily stats for CrowdSec
openhands
2026-09-23 14:45:35 +02:00
5e4fc9ab59
feat(security): give back to CrowdSec and harden the CTI budget
openhands
2026-09-23 14:24:44 +02:00
ee25545b7f
chore: pin Node.js toolchain to 26.10.0
openhands
2026-09-23 13:07:05 +02:00
f32a6dadd0
feat(security): auto-block repeat offenders via CrowdSec community reputation
openhands
2026-09-23 13:03:19 +02:00
64edb81ab7
docs: add Cloudflare & anti-DDoS setup guide to README
openhands
2026-09-22 23:38:54 +02:00
c56696b230
docs(env): document anti-DDoS thresholds and Cloudflare API auto-block vars
openhands
2026-09-22 23:37:39 +02:00
6264f9fb20
test(security): make Cloudflare block tests deterministic under CI Redis
openhands
2026-09-22 23:31:41 +02:00
4479753160
feat(security): mirror anti-DDoS blocks to Cloudflare edge via API
openhands
2026-09-22 23:27:15 +02:00
f0c27eb815
feat(security): Cloudflare-aware IP trust and admin-tunable anti-DDoS
openhands
2026-09-22 22:22:51 +02:00
fd4d0fa1cb
feat(security): harden anti-DDoS gate with scanner triage, tiered blocks and in-process global halt
openhands
2026-09-22 21:57:09 +02:00
98a184953a
feat(security): add Redis-backed app-layer anti-DDoS rate limiting to proxy
openhands
2026-09-22 21:48:40 +02:00
d8f2a21011
deps: upgrade Next.js from 16.3.5 to 16.3.6
openhands
2026-09-22 21:31:34 +02:00
761bfb2940
ci: run unit, integration and UI tests as parallel jobs
openhands
2026-09-22 21:18:49 +02:00
292268f418
ci: reuse host-playwright browser cache instead of re-downloading chromium
openhands
2026-09-22 21:10:15 +02:00
b2777634f7
ci: run all workflows on the self-hosted host runner
openhands
2026-09-22 20:59:02 +02:00
628d24c0c7
feat(home): redesign landing page with cinematic hero and glass panels
openhands
2026-09-22 20:28:23 +02:00
898204ce83
test-workflow for runner v3.5.0
openhands
2026-09-21 21:32:50 +02:00
7707722f4c
fix(build): remove deprecated middleware to fix Next.js build and update ci-deploy script
openhands
2026-09-21 20:58:34 +02:00
234a2aaf1d
security: implement dynamic Content Security Policy (CSP)
openhands
2026-09-21 20:42:26 +02:00
aec5771397
fix: resolve draw-badge test mock iterability issues and failing edge cases
openhands
2026-09-21 20:25:58 +02:00
b13b3a50ff
security: switch default hashing to Argon2id, fix tests
openhands
2026-09-21 19:48:31 +02:00
ac60a867d9
security: harden authentication (register/login)
openhands
2026-09-21 19:33:13 +02:00
6dc80b0b05
fix: resolve all biome lint and TypeScript errors in test files
openhands
2026-09-21 18:37:39 +02:00
93862c2275
lint: fix biome issues in new test files and helpers
openhands
2026-09-21 18:19:39 +02:00
99eb3af17b
test: add ~100 unit tests + bugfixes (theme-resolver, actions, services, features)
openhands
2026-09-21 18:11:15 +02:00
4b68728dbd
test(e2e): update UI workflow screenshots after theme utility fixes
openhands
2026-09-20 17:08:39 +02:00
b1eeda8de0
feat(nitro-cleanup): make delete button visible
openhands
2026-09-20 16:54:41 +02:00
6d4e3486e1
fix(styles): generate shadcn color utilities via inline theme tokens
openhands
2026-09-20 16:44:45 +02:00
8a66db4ed7
fix(imaging): make avatar and badge images resilient to upstream outages
openhands
2026-09-20 12:58:55 +02:00
c3ff497050
feat(referrals): add referral attribution and daily login rewards
openhands
2026-09-20 12:29:01 +02:00
463bc2cb47
fix(test): derive nitro scan cache path from cwd
openhands
2026-09-19 23:41:29 +02:00
1db49263eb
chore(deps): update @babel/parser and @types/node
openhands
2026-09-19 23:34:52 +02:00
a039ba13cc
chore: align Node toolchain on 26.9.0
openhands
2026-09-19 23:28:09 +02:00
9813dbc2a4
fix(studio): surface selected nitro cleanup actions in sticky bar
openhands
2026-09-19 23:18:57 +02:00
6c53f4680c
feat(studio): run nitro scans in the background with cancel-re-attach and nightly auto-clean
openhands
2026-09-19 13:41:14 +02:00
9d571e0c29
perf(studio): stream nitro repair progress over SSE and allow cancelling
openhands
2026-09-19 13:12:45 +02:00
ba81d16f00
perf(studio): cache nitro scan, stream progress, virtualize cleanup list
openhands
2026-09-19 13:01:59 +02:00
c916e42572
perf(studio): speed up nitro scan and stop the cleanup panel freezing
openhands
2026-09-19 11:39:19 +02:00
91e649398c
feat(i18n): make admin and catalog components fully translatable
openhands
2026-09-18 16:02:08 +02:00
03774bb411
feat(i18n): make admin and catalog components translatable
openhands
2026-09-18 14:56:36 +02:00
d6111387e4
feat(auth): align login and register with themed intro, translated social cards
openhands
2026-09-18 13:35:22 +02:00
469f69ddd7
feat(home): two-column hero with live status panel, explore nav, featured news
openhands
2026-09-18 13:27:08 +02:00
d0db352f36
feat(home): make index clearer with decluttered hero and live stats panel
openhands
2026-09-18 13:06:26 +02:00
a6e808a099
perf(landing): share one SSE socket for online counters, respect reduced motion
openhands
2026-09-18 12:57:52 +02:00
4b5dda467c
perf(theme): make landing animations fully composited
openhands
2026-09-18 12:51:02 +02:00
4acafcfef6
style(auth): satisfy Biome in password digest helpers
openhands
2026-09-18 12:44:44 +02:00
d131124515
feat(theme): animate public background with aurora and particles, polish landing pages
openhands
2026-09-18 12:44:39 +02:00
5923b736fa
refactor(studio): extract helper components from OrganizeImportsDialog
openhands
2026-09-17 21:35:16 +02:00
3862649369
refactor(catalog): extract AddItemFormFields from CatalogItemsTable
openhands
2026-09-17 21:21:40 +02:00