# yaml-language-server: $schema=https://schema.zeabur.app/template.json
apiVersion: zeabur.com/v1
kind: Template
metadata:
    name: VaultWarden
spec:
    description: A lightweight, self-hosted password manager compatible with Bitwarden clients.
    coverImage: https://bitwarden.com/assets/5tLEoqbQt08omW27MGgH9R/924319ab65afb4500aa8c09a956162f7/bitwarden-personal-og.png
    icon: https://upload.wikimedia.org/wikipedia/commons/0/03/Bitwarden_Logo.png
    variables:
        - key: PUBLIC_DOMAIN
          type: DOMAIN
          name: VaultWarden Domain
          description: The domain for accessing your VaultWarden instance.
    tags:
        - Password Manager
        - Security
    readme: |-
        # VaultWarden

        VaultWarden (formerly Bitwarden_RS) is an unofficial Bitwarden-compatible server written in Rust. It is designed to be a **lightweight and resource-efficient** alternative to the official Bitwarden server, making it ideal for self-hosted deployments on low-powered devices or budget-friendly cloud instances.

        ## What is VaultWarden?

        VaultWarden is fully compatible with all official [Bitwarden](https://github.com/bitwarden/) clients, including:
        - Browser extensions (Chrome, Firefox, Safari, Edge, etc.)
        - Desktop apps (Windows, macOS, Linux)
        - Mobile apps (iOS, Android)
        - CLI tools

        While Bitwarden's official server requires significant resources (Microsoft SQL Server, .NET runtime), VaultWarden runs on minimal hardware with just a single binary and SQLite database.

        ## Features

        - **Full Bitwarden Compatibility**: Works seamlessly with all official Bitwarden clients
        - **Lightweight**: Uses minimal CPU and memory compared to the official server
        - **SQLite Support**: No need for heavy database servers
        - **Organizations & Collections**: Share passwords with teams and family
        - **Secure Password Sharing**: Send encrypted text and files
        - **Two-Factor Authentication**: TOTP, Duo, YubiKey, and email 2FA support
        - **Emergency Access**: Grant trusted contacts access in emergencies
        - **Attachments**: Store encrypted files alongside your passwords
        - **Vault Health Reports**: Identify weak, reused, or breached passwords
        - **Self-hosted**: Full control over your data

        ## Getting Started

        1. **Deploy**: Click the deploy button to create your VaultWarden instance
        2. **Configure Domain**: Enter your desired domain when prompted
        3. **Create Account**: Visit your VaultWarden URL and create a new account. **Keep your master password safe** - it cannot be recovered!
        4. **Start Using**: Log in with your master password and start storing your passwords securely

        ## Important Security Notes

        - Your **master password** is the key to all your data. Store it securely and never share it.
        - Enable **two-factor authentication** for additional security.
        - Regularly **backup your data** to prevent data loss.

        ## Documentation

        For more information, visit the official resources:
        - [VaultWarden GitHub](https://github.com/dani-garcia/vaultwarden)
        - [Bitwarden Help Center](https://bitwarden.com/help/)
        - [Bitwarden GitHub](https://github.com/bitwarden/)
    services:
        - name: Vault Warden
          icon: https://upload.wikimedia.org/wikipedia/commons/0/03/Bitwarden_Logo.png
          template: PREBUILT_V2
          spec:
            id: vault-warden
            source:
                image: vaultwarden/server:latest
            ports:
                - id: web
                  port: 80
                  type: HTTP
            volumes:
                - id: volume
                  dir: /data
            env:
                DOMAIN:
                    default: https://${ZEABUR_WEB_DOMAIN}
                    expose: false
            configs: []
            portForwarding:
                enabled: false
          domainKey: PUBLIC_DOMAIN
