CasaOS is a user-friendly, open-source personal cloud OS designed for home users who want to self-host their data and applications without complex configurations. It targets non-technical users seeking to replace SaaS services with a local, privacy-focused alternative using affordable hardware like Raspberry Pi, NUC, or old PCs. By integrating Docker ecosystem apps and a visual interface, CasaOS eliminates the need for command-line knowledge while providing full control over personal data.
Built with Go and Vue.js, CasaOS runs on Debian, Ubuntu, and Raspberry Pi OS, and leverages Docker for app deployment. It supports over 100,000 Docker containers via its app store, includes built-in file management, and offers remote access through a web interface. Deployment is as simple as a one-liner install script, and updates are handled via UI or CLI.
What You Get
- One-click Docker app installation - Install 50+ community-verified apps like Nextcloud, Jellyfin, AdGuard, and Sonarr with a single click, powered by Docker containers.
- Integrated file manager with drag-and-drop - Browse, upload, share, and organize files with a visual interface that requires no CLI knowledge.
- System and app dashboard widgets - Monitor CPU, memory, disk usage, and app status in real-time with glanceable widgets on the home screen.
- Multi-device remote access - Access files and apps from phones, TVs, or VR devices over the internet without complex port forwarding or VPN setup.
- Hardware-agnostic support - Runs on x86_64, arm64, and armv7 devices including Raspberry Pi, Intel NUC, ZimaBoard, and old PCs with one-liner installation.
- Pre-installed essential apps - Comes with 20+ pre-configured Docker apps including Filebrowser, Syncthing, PhotoPrism, and qBittorrent out of the box.
Common Use Cases
- Running a home media server - A family uses CasaOS to self-host Jellyfin and PhotoPrism for streaming movies and organizing photos without relying on Netflix or Google Photos.
- Managing personal cloud storage - A photographer uses CasaOS with Nextcloud to sync and back up raw image files across devices, avoiding Dropbox subscription fees.
- Hosting smart home services - A tech-savvy homeowner installs HomeAssistant and AdGuard on CasaOS to centralize IoT device control and block ads across the home network.
- Building a low-cost NAS - A student repurposes an old laptop with CasaOS to create a 24/7 file server with automatic backups and remote access, replacing a $300 commercial NAS.
Under The Hood
Architecture
- The project exhibits a layered architecture with a clear distinction between frontend and backend concerns.
- A custom HTTP handler multiplexer manages API versions and documentation endpoints, suggesting a focus on API evolution.
- Dependency injection is present, facilitating modularity and testability.
- The build process leverages
goreleaser for cross-compilation and static linking, promoting portability.
Tech Stack
- A hybrid tech stack is employed, utilizing Go for the backend and a TypeScript-based Next.js frontend.
- OpenAPI specifications are used to generate TypeScript SDKs, streamlining frontend-backend communication.
- Cloud storage integrations are configured through environment variables, embedded during the build process.
- Build automation is managed with a Makefile and release configuration via
.goreleaser.yaml.
Code Quality
- Testing practices are present but appear to be evolving, with a mix of passing and skipped tests.
- Error handling is basic, lacking custom error types and structured logging.
- Naming conventions generally align with Go best practices, but consistency could be improved.
- A CI/CD pipeline automates builds, tests, and deployments, but could benefit from more detailed reporting.
What Makes It Unique
- The integration of a Redoc-based API documentation viewer directly within the application provides a user-friendly experience.
- The use of systemd for service management and a cron-based job scheduler enhances operational capabilities.
- The project’s commitment to API-first development, evidenced by OpenAPI specifications and code generation, is a notable strength.