9 points par xguru 2024-07-27 | 2 commentaires | Partager sur WhatsApp
  • Implémentation d’un serveur Git LFS (Large File Storage, stockage de fichiers volumineux) écrite en TypeScript
  • Conçu pour être auto-hébergé en local pour un usage personnel
  • La prise en charge multi-utilisateur est possible, mais nécessite une authentification HTTP basique (à utiliser derrière un proxy HTTPS comme Caddy ou Traefik)
  • Runtime
    • Granary peut s’exécuter sur Bun, Deno et Node
    • Le code suit un pattern d’adaptateurs, avec Deno comme runtime principal, tandis que les adaptateurs Bun et Node ne fournissent qu’une implémentation minimale
    • Utilise serveFile, de la bibliothèque standard de Deno, pour gérer les téléchargements
    • Lors des envois, utilise Web Crypto pour calculer le SHA-256 et gérer simultanément le streaming des fichiers
    • Utilise un serveur HTTP propre à chaque runtime : Bun.serve, Deno.serve, createServer de Node
  • Licence MIT

2 commentaires

 
alstjr7375 2024-07-27

C’est vraiment trop difficile de gérer des binaires avec git.
J’aimerais que ça s’améliore un peu.

 
halfenif 2024-07-27

En fait, ce n’est pas vraiment fait pour le suivi de versions de fichiers binaires modifiés.