# Wild Cloud Apps Directory This is the official Wild Cloud apps repository containing a curated collection of self-hosted applications that can be deployed to your Wild Cloud cluster. ## What are Wild Cloud Apps? Wild Cloud apps are pre-packaged Kubernetes applications using Kustomize that follow standardized conventions for configuration, secrets management, and deployment. Each app includes: - **App manifest** (`manifest.yaml`) - Metadata, dependencies, and default configuration - **Kustomization** (`kustomization.yaml`) - Kubernetes resource definitions - **Configuration templates** - Deployments, services, ingresses, and other resources Apps use gomplate templates that compile with your Wild Cloud configuration when added, making them easy to customize while maintaining a consistent deployment experience. ## Using Wild Cloud Apps ### Commands Run these commands from your Wild Cloud home directory: - **`wild-apps-list`** - Browse all available apps in the repository - **`wild-app-add `** - Add an app to your cluster: - Copies the app manifest to your `apps` directory - Adds default configuration to your `config.yaml` - Generates required secrets in your `secrets.yaml` - Compiles templates with your configuration - **`wild-app-deploy `** - Deploy or update the app in your cluster ### How It Works 1. **Add an app**: `wild-app-add` compiles the app's templates using your Wild Cloud configuration (domain, email, etc.) and creates standard Kustomize files in your Wild Cloud home directory 2. **Customize** (optional): Modify the compiled files in your home directory, or use Kustomize patches/overlays 3. **Deploy**: `wild-app-deploy` applies the Kustomize configuration to your cluster 4. **Manage**: Track changes with Git, update configurations as needed ### Dependencies Some apps require other apps to function. For example: - **Immich** requires PostgreSQL and Redis - **OpenProject** requires PostgreSQL and Memcached - **Gitea** requires PostgreSQL When you add an app, check its `requires` field in the manifest and ensure dependencies are added first. ## Available Apps This repository includes apps for: - Content management (Ghost, Discourse) - Project management (OpenProject) - Photo management (Immich) - Code hosting (Gitea) - Email marketing (Listmonk, Keila) - AI interfaces (Open WebUI, vLLM) - Databases (PostgreSQL, MySQL, Redis, Memcached) - And more... Run `wild-apps-list` to see the full catalog with descriptions. ## Contributing Want to add a new app or improve an existing one? See [ADDING-APPS.md](ADDING-APPS.md) for detailed guidance on creating Wild Cloud apps. Contributions are welcome via pull requests. Ensure your app follows the Wild Cloud conventions and includes all required files. ## Notice: Third-Party Software The Kubernetes manifests and Kustomize files in this directory are designed to deploy **third-party software**. Unless otherwise stated, the software deployed by these manifests **is not authored or maintained** by this project. All copyrights, licenses, and responsibilities for that software remain with the respective upstream authors. These files are provided solely for convenience and automation. Users are responsible for reviewing and complying with the licenses of the software they deploy. This project is licensed under the GNU AGPLv3 or later, but this license does **not apply** to the third-party software being deployed. See individual deployment directories for upstream project links and container sources.