* ci: add --affected filtering and fix Turbo cache invalidation - Remove globalDependencies **/.env which invalidated all caches on any .env change - Move 40+ env vars from globalEnv to build-specific env (lint/format/typecheck don't need DB_URL etc.) - Add per-task inputs with test file exclusions so test changes don't trigger build/typecheck - Enable affectedUsingTaskInputs for task-level --affected detection - Add --affected to all turbo commands in CI (lint, format, typecheck, build) - Add fetch-depth: 0 for proper git history comparison - Add Docker Buildx + GHA layer caching for E2E builds * ci: add Cloudflare remote cache for Turborepo Configure turborepo-remote-cache-cloudflare as the remote cache backend. This commit can be reverted independently to disable remote caching. * fix(ci): set TURBO_SCM_BASE for --affected to work in PRs Turbo defaults to comparing against `main`, but PRs target `dev`. Without explicit base/head refs, --affected falls back to running all tasks. Use the PR base SHA for pull_requests, the before SHA for pushes, and HEAD~1 as a last resort. * perf(typecheck): exclude bundled .cjs/.css from tsc websocket (835K lines) and tasks (755K lines) had bundled output files being typechecked due to `include: ["."]` in their tsconfig. Full typecheck drops from ~70s to ~26s. * perf(turbo): scope topo task inputs to package.json only The topo virtual task had no explicit inputs, defaulting to all files. This caused any source change to cascade cache invalidation through all dependent packages via ^topo. Since topo is only for dependency ordering, its hash should only change when dependencies change. * fix(turbo): disable remote cache signature verification The cache lives on a private CF worker, signature verification just adds noise without security benefit. * fix(turbo): remove runtime env vars from build cache key These env vars (DB_*, AUTH_*, DOCKER_*, etc.) are all runtime configuration provided by users when running the Docker container. They don't influence the build output since Next.js standalone mode reads process.env at runtime and SKIP_ENV_VALIDATION=true skips validation during build. Listing them in build.env caused unnecessary cache busting in local dev. Also restores coverage report comments per review feedback. * fix(turbo): include test files in typecheck cache inputs Test files must be typechecked — excluding them from typecheck inputs caused changed tests to skip type validation.
Install 💻 • Translations 🈺 • Discord 👋
- 🖌️ Highly customizable with an extensive drag and drop grid system
- ✨ Integrates seamlessly with your favorite self-hosted applications
- 📌 Easy and fast app management - no YAML involved
- 👤 Detailed and easy to use user management with permissions and groups
- 👥 Support for single sign on via OIDC / LDAP
- 🙊 Safe encryption using BCrypt and AES-256-CBC for your valuable data
- 🕔 Realtime widget updates using WebSockets, tRPC and Redis
- 🔍 Search through thousands of data points in supported integrations or your data in Homarr using the fast built-in search
- 🦞 Icon picker with over 11K icons
- 🚀 Compatible with any major consumer hardware (x86, Raspberry Pi, old laptops, ...) and most OS (Windows, Linux, TrueNAS, Unraid)
- 🖥️ Extensive Kubernetes support with Helm for efficient scaling & high reliability
Please click here for official installation instructions
Homarr is a free-to-use open source project maintained by volunteers and developers from all over the world.
We publish under the Apache License 2.0 license which allows commercial usage.
We invest multiple hours daily in providing support, developing Homarr, integrating to third party software and more.
We also pay for licensing and server hosting fees.
Please consider helping us cover these costs to enable the future development of Homarr. Thank you!
Please click here to sponsor us at OpenCollective
You can also support us by helping with translating the entire project to as many languages as possible or contributing directly to the code or documentation. Please read our Contribution Guidelines. All contributions, regardless of their size or scope, are welcome and highly appreciated! Thank you ❤️
Sponsors
Thanks to your generous sponsors, we can continue to build Homarr. Check them out for high-quality and easy-to-use development tools. Feel free to contact us at homarr-labs@proton.me if you wish to become a sponsor.





