{"id":47597354,"url":"https://github.com/smashingtags/homelabarr-ce","last_synced_at":"2026-04-01T18:22:06.913Z","repository":{"id":345454561,"uuid":"1055941579","full_name":"smashingtags/homelabarr-ce","owner":"smashingtags","description":"Free, open-source Docker container management for homelabs. 157+ apps, one-click deploy. CE Demo: ce-demo.homelabarr.com | PE Demo: demo.homelabarr.com | homelabarr.com | imogenlabs.ai | mjashley.com | Discord: discord.gg/Pc7mXX786x","archived":false,"fork":false,"pushed_at":"2026-03-27T04:56:41.000Z","size":17659,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-27T12:47:43.249Z","etag":null,"topics":["containers","docker","docker-compose","homelab","media-server","plex","react","self-hosted","typescript"],"latest_commit_sha":null,"homepage":"https://wiki.homelabarr.com/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/smashingtags.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"ko_fi":"homelabarr"}},"created_at":"2025-09-13T04:47:01.000Z","updated_at":"2026-03-27T03:46:13.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/smashingtags/homelabarr-ce","commit_stats":null,"previous_names":["smashingtags/homelabarr-ce"],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/smashingtags/homelabarr-ce","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smashingtags%2Fhomelabarr-ce","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smashingtags%2Fhomelabarr-ce/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smashingtags%2Fhomelabarr-ce/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smashingtags%2Fhomelabarr-ce/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/smashingtags","download_url":"https://codeload.github.com/smashingtags/homelabarr-ce/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/smashingtags%2Fhomelabarr-ce/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31290820,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T13:12:26.723Z","status":"ssl_error","status_checked_at":"2026-04-01T13:12:25.102Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["containers","docker","docker-compose","homelab","media-server","plex","react","self-hosted","typescript"],"created_at":"2026-04-01T18:22:06.624Z","updated_at":"2026-04-01T18:22:06.873Z","avatar_url":"https://github.com/smashingtags.png","language":"TypeScript","funding_links":["https://ko-fi.com/homelabarr"],"categories":[],"sub_categories":[],"readme":"# HomelabARR CE\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://github.com/smashingtags/homelabarr-ce\"\u003e\n      \u003cimg src=\"wiki/docs/img/homelabarr-octopus-v2b.jpg\" alt=\"HomelabARR CE\" width=\"300\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\u003cstrong\u003eYour homelab, one dashboard.\u003c/strong\u003e\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://github.com/smashingtags/homelabarr-ce/releases/latest\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/v/release/smashingtags/homelabarr-ce?label=Release\u0026logo=github\" alt=\"Release\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/smashingtags/homelabarr-ce/blob/main/LICENSE\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/License-MIT-blue.svg\" alt=\"MIT License\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://discord.gg/Pc7mXX786x\"\u003e\n        \u003cimg src=\"https://img.shields.io/discord/1334411584927301682?label=Discord\u0026logo=discord\u0026color=5865F2\" alt=\"Discord\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://wiki.homelabarr.com\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/Docs-Wiki-blue?logo=readthedocs\u0026logoColor=white\" alt=\"Documentation\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://www.reddit.com/r/homelabarr/\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/Reddit-r/homelabarr-FF4500?logo=reddit\u0026logoColor=white\" alt=\"Reddit\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://github.com/smashingtags/homelabarr-ce/actions/workflows/github-code-scanning/codeql\"\u003e\n        \u003cimg src=\"https://github.com/smashingtags/homelabarr-ce/actions/workflows/github-code-scanning/codeql/badge.svg\" alt=\"CodeQL\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://snyk.io/test/github/smashingtags/homelabarr-ce\"\u003e\n        \u003cimg src=\"https://snyk.io/test/github/smashingtags/homelabarr-ce/badge.svg\" alt=\"Snyk\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://ce-demo.homelabarr.com\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/Try_the_Demo-Live-brightgreen?logo=docker\u0026logoColor=white\" alt=\"CE Demo\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://homelabarr.com\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/Website-homelabarr.com-FF8C1A?logo=firefox\u0026logoColor=white\" alt=\"HomelabARR\"\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://imogenlabs.ai\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/Imogen_Labs-AI-8B5CF6\" alt=\"Imogen Labs\"\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n---\n\n## Project Status\n\n\u003e **Community-maintained.** HomelabARR CE is stable and actively used. New features go through the `dev` branch → `staging` → `main`. PRs welcome — see [CONTRIBUTING.md](CONTRIBUTING.md).\n\n---\n\n## What is HomelabARR?\n\nYou know how setting up self-hosted apps usually means Googling Docker Compose files, copying YAML, editing ports, and hoping it works? HomelabARR skips all of that.\n\nIt's a dashboard. You open it, you see a catalog of 100+ apps, you click **Deploy**, and the app is running. That's it.\n\nPlex, Sonarr, Radarr, Jellyfin, Ollama, Home Assistant, qBittorrent — they're all in there, ready to go.\n\n**Free and open source.** MIT license. No account required. No telemetry.\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"wiki/docs/img/screenshots/dark-dashboard.png\" alt=\"HomelabARR Dashboard\" width=\"700\"\u003e\n\u003c/p\u003e\n\n---\n\n## Try It Right Now\n\nDon't want to install anything yet? [**Open the live demo →**](https://ce-demo.homelabarr.com)\n\nLogin: `admin` / `admin`. Browse apps, click around. Nothing you do in the demo touches a real server.\n\n---\n\n## Install It (5 minutes)\n\nYou need a Linux machine with Docker installed. You don't need to write Compose files, but you do need basic shell access to your server.\n\n```bash\n# 1. Grab the code (cloning to /opt/homelabarr is recommended — it matches the default template path)\ngit clone https://github.com/smashingtags/homelabarr-ce.git /opt/homelabarr\ncd /opt/homelabarr\n\n# 2. Set three things (copy-paste these exactly)\nexport JWT_SECRET=$(openssl rand -base64 32)\nexport DOCKER_GID=$(getent group docker | cut -d: -f3)\nexport CORS_ORIGIN=http://$(hostname -I | awk '{print $1}'):8084\n\n# 3. Start it\ndocker compose -f homelabarr.yml up -d\n```\n\nOpen `http://your-server-ip:8084` in a browser. Log in with `admin` / `admin`. **Change the password right away** — or set `DEFAULT_ADMIN_PASSWORD` in your `.env` before first start if this won't be a throwaway local install.\n\nThat's the whole install.\n\n\u003e 💾 **For a permanent setup**, move those exports into a `.env` file in the same directory as `homelabarr.yml` instead of re-running them on every reboot. See the [configuration docs](https://wiki.homelabarr.com/guides/configuration/) for the full list of options.\n\n\u003e 📁 **Cloned somewhere other than `/opt/homelabarr`?** Set `CLI_BRIDGE_HOST_PATH` in your `.env` to match your clone path, or the app catalog won't load.\n\n\u003e 💡 **Don't have Docker?** Run `curl -fsSL https://get.docker.com | sh` first. Takes about a minute.\n\n\u003e ⚠️ **Running in a Proxmox LXC?** You might need to add `lxc.apparmor.profile: unconfined` to the container config. See the [FAQ](https://wiki.homelabarr.com/guides/faq/) for details.\n\nWant to build from source instead? Check the [full install guide](https://wiki.homelabarr.com/guides/quick-start/).\n\n---\n\n## What You Get\n\n- **100+ apps, one click each.** Media servers, download clients, monitoring, AI tools, virtual desktops, backup, and more.\n- **Three ways to deploy.** Just IP:port, or with Traefik reverse proxy for SSL, or Traefik + Authelia for 2FA on top.\n- **Manage running containers.** Start, stop, restart, remove, view logs — all from the dashboard.\n- **Port Manager.** See every port in use across all your containers. Catch conflicts before they happen.\n- **Add your own apps.** Drop a YAML file in `apps/myapps/` and it shows up in the catalog automatically.\n- **Secure by default.** Login required, API keys for automation, rate limiting, security headers.\n- **Dark mode.** Obviously.\n- **Mobile app.** iOS and Android — manage your homelab from the couch.\n- **CLI tool.** If you'd rather type than click, there's a terminal interface too.\n\n---\n\n## What Apps Are Included?\n\n| Category | # | Some highlights |\n|----------|---|-----------------|\n| 🤖 AI \u0026 Machine Learning | 14 | Ollama, Open WebUI, ComfyUI, Stable Diffusion, LocalAI |\n| 🎬 Media Servers | 5 | Plex, Jellyfin, Emby |\n| 📚 Media Management | 16 | Sonarr, Radarr, Lidarr, Bazarr, Prowlarr |\n| ⬇️ Downloads | 14 | qBittorrent, SABnzbd, NZBGet, Deluge, Transmission |\n| 📊 Monitoring | 9 | Grafana, Netdata, Uptime Kuma, Tautulli |\n| 🌐 Self-hosted | 37 | Nextcloud, Vaultwarden, Immich, Home Assistant, n8n |\n| ⚙️ System | 13 | Portainer, Dozzle, Watchtower, Traefik |\n| 🖥️ Virtual Desktops | 10 | Kasm Workspaces, Firefox, Chrome, Tor Browser |\n| 🎞️ Transcoding | 5 | Tdarr, Handbrake, MakeMKV |\n| 💾 Backup | 3 | Duplicati, Restic |\n| 📁 My Apps | — | Whatever you add |\n\nEvery template is just a Docker Compose YAML file in `apps/\u003ccategory\u003e/`. You can read them, edit them, or write your own.\n\n---\n\n## What Does It Look Like Inside?\n\nTwo containers. That's the whole thing.\n\n| Piece | What it does | Port |\n|-------|-------------|------|\n| **Frontend** | The dashboard you see in your browser. React app served by nginx. | 8084 |\n| **Backend** | Reads app templates, talks to Docker, handles login. Node.js + Express. | 8092 |\n\nThe frontend sends API requests to the backend. The backend talks to the Docker socket to start and stop containers. Simple.\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"wiki/docs/img/diagrams/system-architecture.png\" alt=\"How it works\" width=\"700\"\u003e\n\u003c/p\u003e\n\nWant the deep dive? [Architecture docs →](https://wiki.homelabarr.com/guides/architecture/)\n\n---\n\n## Settings You Might Want to Change\n\n| Setting | Do you need it? | What it does |\n|---------|----------------|-------------|\n| `JWT_SECRET` | **Yes** | Keeps your login secure. The install command generates one for you. |\n| `DOCKER_GID` | **Yes** | Tells the backend which group can talk to Docker. The install command figures this out. |\n| `CORS_ORIGIN` | **Yes** | The URL you open the dashboard at. If login won't work, this is probably wrong. |\n| `DEFAULT_ADMIN_PASSWORD` | Optional | Change the default password (it's `admin` if you don't set this). |\n| `TZ` | Optional | Your timezone. Defaults to `America/New_York`. |\n\nAll the config options: [wiki.homelabarr.com/guides/configuration](https://wiki.homelabarr.com/guides/configuration/)\n\n---\n\n## Repo Structure\n\n```\nhomelabarr-ce/\n├── src/              # React frontend (Vite + shadcn/ui)\n├── server/           # Node.js + Express backend\n├── apps/             # App templates (one YAML per app, organized by category)\n│   ├── ai/           # AI \u0026 machine learning tools\n│   ├── downloads/    # Download clients\n│   ├── media-servers/\n│   ├── self-hosted/\n│   ├── myapps/       # ← your custom templates go here\n│   └── ...\n├── wiki/             # Source for wiki.homelabarr.com (MkDocs)\n├── .github/          # CI workflows, issue/PR templates, security policy\n├── traefik/          # Example Traefik config for reverse proxy setup\n├── homelabarr.yml    # The Docker Compose file you run\n└── nginx.conf        # nginx config baked into the frontend image\n```\n\n---\n\n## Want to Hack on It?\n\n```bash\nnpm install\nnpm run dev       # Runs the dashboard on :5173 and the API on :8092\nnpm run build     # Build for production\nnpm test          # Run the test suite\n```\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for how to submit changes.\n\n---\n\n## Security\n\nWe scan this project with four different tools, automatically, on every push:\n\n| Tool | What it checks |\n|------|---------------|\n| [CodeQL](https://github.com/smashingtags/homelabarr-ce/security/code-scanning) | The actual code — injection bugs, XSS, that kind of thing |\n| [Snyk](https://snyk.io/test/github/smashingtags/homelabarr-ce) | Every npm package and Docker base image for known vulnerabilities |\n| [Dependabot](https://github.com/smashingtags/homelabarr-ce/security/dependabot) | Outdated packages that have security patches available |\n| [Docker Scout](https://hub.docker.com/r/smashingtags/homelabarr-frontend) | The finished container images, plus supply chain attestations |\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\"docs/images/scout-frontend-A.png\" alt=\"Frontend Scout Score A\" width=\"500\"\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cem\u003eFrontend image — Scout Score A\u003c/em\u003e\u003c/p\u003e\n\nContainers run as a non-root user. All the usual security headers are on. Rate limiting is on. Session tokens use `crypto.randomBytes`, not `Math.random`.\n\nFound a vulnerability? Email **michael@mjashley.com** — see [SECURITY.md](SECURITY.md).\n\n---\n\n## Want More? Check Out the Pro Edition\n\nCE handles Docker containers. **PE** (Professional Edition) adds storage management — SnapRAID + MergerFS + cache mover + file sharing + system monitoring.\n\nIf you've got a bunch of mismatched hard drives and want to turn them into a storage pool without RAID, that's what PE is for.\n\n[See pricing →](https://homelabarr.com#pricing)\n\n---\n\n## Links\n\n| | |\n|---|---|\n| 🌐 **Website** | [homelabarr.com](https://homelabarr.com) |\n| 📖 **Docs** | [wiki.homelabarr.com](https://wiki.homelabarr.com) |\n| 🎮 **Demo** | [ce-demo.homelabarr.com](https://ce-demo.homelabarr.com) — log in with admin / admin |\n| 💬 **Discord** | [discord.gg/Pc7mXX786x](https://discord.gg/Pc7mXX786x) |\n| 📣 **Reddit** | [r/homelabarr](https://www.reddit.com/r/homelabarr/) |\n| 🏢 **Company** | [imogenlabs.ai](https://imogenlabs.ai) |\n| 👤 **Author** | [mjashley.com](https://mjashley.com) |\n\n---\n\n## Contributors\n\n\u003ctable\u003e\n\u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/smashingtags\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/48292010?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003esmashingtags\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/fscorrupt\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/45659314?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eFSCorrupt\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/drag0n141\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/44865095?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDrAg0n141\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/aelfa\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/60222501?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAelfa\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/cyb3rgh05t\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/5200101?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ecyb3rgh05t\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/justinglock40\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/23133649?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ejustinglock40\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/mrfret\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/72273384?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003emrfret\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/dan3805\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/35934387?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDoCtEuR3805\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/brtbach\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/24246495?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ebrtbach\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/ramsaytc\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/16809662?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eramsaytc\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/Shayne55434\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/37595910?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eShayne\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/Nossersvinet\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/83166809?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eNossersvinet\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/ookla-ariel-ride\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/42082417?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eOokla, Ariel, Ride!\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/townsmcp\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/14061617?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eJames Townsend\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/red-daut\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/78737369?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eRed Daut\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\u003ca href=\"https://github.com/DomesticWarlord\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/57776315?v=4\" width=\"50\" style=\"border-radius:50%\" /\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDomesticWarlord\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/table\u003e\n\n## License\n\n[MIT](LICENSE) — do whatever you want with it.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmashingtags%2Fhomelabarr-ce","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsmashingtags%2Fhomelabarr-ce","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsmashingtags%2Fhomelabarr-ce/lists"}