--- title: Soft Serve created: 2026-06-08 updated: 2026-06-08 type: app tags: [catalogue, git, app-marathon3-batch-c] confidence: high contested: false sources: [https://selfh.st/apps/?tag=git&app=soft-serve] --- # 🍒 Soft Serve > Le serveur Git minimaliste et TUI-first de l'Ă©cosystĂšme Charm — Ă©crit en Go par Charm. ## 📋 Informations GĂ©nĂ©rales | Champ | Valeur | | :--- | :--- | | **Site web** | [charm.sh](https://charm.sh) | | **GitHub** | [charmbracelet/soft-serve](https://github.com/charmbracelet/soft-serve) | | **License** | MIT | | **Langage** | Go | | **Étoiles GitHub** | 5k ⭐ | | **CatĂ©gorie** | [[cat-git|Git]] | ## 📝 Description **Soft Serve** est un serveur Git lĂ©ger, rapide et TUI-first (Terminal UI) Ă©crit en Go par l'Ă©quipe Charm (Bubble Tea, Lip Gloss). HTTP/SSH server, anonymous read support, admin via SSH, web UI, repo management, hooks, configurĂ© par YAML. **DiffĂ©rence vs Gitea/GitLab** : binaire unique Go, pas d'UI web complexe, TUI magnifique, philosophically "just Git", zero JavaScript, plus rapide Ă  mettre en place. **Pour qui** : devs qui vivent dans le terminal, dotfiles, micro-team labs, prĂ©sentations SSH, kiosks Git, intĂ©grateurs minimalistes. ## 🚀 Installation ### Binaire (recommandĂ©) ```bash # macOS brew install charmbracelet/tap/soft-serve # Linux curl -fsSL https://repo.charm.sh/apt/gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/charm.gpg echo "deb [signed-by=/usr/share/keyrings/charm.gpg] https://repo.charm.sh/apt * *" | sudo tee /etc/apt/sources.list.d/charm.list sudo apt update && sudo apt install soft-serve # DĂ©marrer soft serve ``` ### Docker Compose ```yaml version: '3.8' services: soft-serve: image: ghcr.io/charmbracelet/soft-serve:latest container_name: soft-serve restart: unless-stopped ports: - "23231:23231" # SSH - "23232:23232" # HTTP + Web UI volumes: - soft-serve-data:/data - ./config.yaml:/data/config.yaml:ro volumes: soft-serve-data: ``` ### Configuration `config.yaml` ```yaml host: 0.0.0.0 http_listen_addr: 0.0.0.0:23232 ssh_listen_addr: 0.0.0.0:23231 public_key: ssh-rsa AAAAB3... # clĂ© du serveur private_key: /data/.ssh/soft_serve_server_ed25519 repo_path: /data/repos data_path: /data/db log_path: /data/soft-serve.log anonymous_access: true ``` ## 🔄 Alternatives ### Open Source - [[app-gitea]] — Git platform complet (lourd, web UI riche) - **Gitolite** — Git server SSH-only en Perl (legacy) - **Kallithea** — Mercurial + Git server Python - **Fossil** — SCM distribuĂ© mono-binaire (D. Richard Hipp) - **Radicle** — P2P Git (crypto, dĂ©centralisĂ©) - **OneDev** — DevOps platform Java complĂšte ### PropriĂ©taires - **GitHub Enterprise** — rĂ©fĂ©rence industry - **GitLab EE** — self-hosted premium - **Bitbucket Data Center** — Atlassian - **AWS CodeCommit** — Git managĂ© Amazon ## 🔐 SĂ©curitĂ© - **Auth SSH** : clĂ©s publiques, tokens par utilisateur - **Anonymous read** : configurĂ© globalement (par repo possible) - **Hooks pre-push** : scripts de validation - **TUI admin** : opĂ©rations sensibles via SSH direct - **Pas de plugin tiers** : surface d'attaque minimale (binaire Go) - **HTTP basic** : sur la web UI, Ă  coupler HTTPS obligatoire ## 📚 Ressources - [Documentation](https://github.com/charmbracelet/soft-serve#readme) - [Blog announcement](https://charm.sh/blog/soft-serve-0.4/) - [Charm ecosystem](https://charm.sh/) ## Pages LiĂ©es - [[cat-git]] — CatĂ©gorie Git - [[app-gitea]] — Alternative complĂšte - [[app-termix]] — Web SSH client