HeadlinesBriefing favicon HeadlinesBriefing.com

Capsule : Apps Web monofichier SQLite

Hacker News •
×

Hey HN, j'ai toujours eu le problème que créer des pages HTML est simple, mais sauvegarder les données nécessitait de les héberger quelque part et les partager n'était pas facile. Ces derniers mois, je construis une application appelée Capsule (c'est aussi le nom de l'extension de fichier) écrite en Rust avec Tauri 2.0 qui permet d'empaqueter une application HTML et ses données dans un seul fichier SQLite. Le fichier HTML et tous les assets associés sont directement embarqués dans la base de données.

Les données utilisateur peuvent être sauvegardées soit comme un magasin clé/valeur localStorage, soit via une API de collections inspirée de MongoDB comme documents, sauvegardés dans une table du fichier. Vous pouvez aussi sauvegarder d'autres assets, comme des fichiers PDF ou des images, directement dans la base de données pour garder différents documents ensemble. Toutes les données peuvent être facilement exportées en CSV ou JSON si nécessaire.

La vie privée et la sécurité étaient une grande priorité, donc les documents ne peuvent rien faire par défaut. Ils n'ont pas d'accès direct au système de fichiers et nécessitent une permission pour accéder à internet. Le modèle de permissions est encore quelque chose sur lequel je travaille pour l'améliorer.

Les documents Capsule peuvent aussi utiliser des modèles IA locaux ou distants pour des fonctionnalités IA spécifiques au document. Un inconvénient de cette approche est que plusieurs personnes travaillant dessus créeront des copies différentes. Pour rendre possible la fusion de différentes copies du même fichier, chaque entrée de données a un UUID et un horodatage uniques.

Je prévois d'ouvrir la spécification du format de fichier pour la version 1.0 de l'app afin que d'autres apps puissent lire ou écrire des fichiers Capsule. Vous pouvez l'essayer dans l'aperçu web sur https://withcapsule.app/preview avec des templates pré-construits ou utiliser n'importe quel fournisseur IA de votre choix pour créer une app personnalisée optimisée pour Capsule. Je travaille encore sur le format de fichier mais il y a des migrations pour chaque nouvelle version, donc les données ne devraient jamais être perdues en utilisant des versions plus récentes de l'app à l'avenir.