Exemples
Exécutez les exemples du Collaboration SDK par fonction et consultez leurs guides et entrées serveur et Web.
Tous les exemples se trouvent dans univer-collaboration-examples. Ils partagent la structure minimale web/main.ts + server/main.ts et fonctionnent indépendamment. Terminez le démarrage rapide, puis choisissez selon votre intégration.
| Exemple | Concept principal | Commande |
|---|---|---|
| Démarrage rapide | Circuit collaboratif central | pnpm example:quick-start |
| Adaptateur de base de données | Adaptateurs de base de données | pnpm example:database-adapter |
| Autorisations | Identité et autorisations | pnpm example:permissions |
| Historique | Historique dérivé | pnpm example:history |
| Commentaires | Commentaires indépendants | pnpm example:comments |
| Worktree | Édition isolée et fusion | pnpm example:worktree |
| Conversion de fichiers | Conversion Office | pnpm example:exchange |
| Déploiement à plusieurs nœuds | Mise à l’échelle horizontale | pnpm example:multi-node |
Démarrage rapide
Assemblez Collaboration Client, Transport, Endpoint, Service et Memory Adapter. Vérifiez dans deux navigateurs le chargement HTTP, les Sessions WebSocket, Room, ACK et diffusions pour la même Sheet.
pnpm example:quick-startOuvrez http://127.0.0.1:3010/?unit=quick-start-sheet.
Adaptateur de base de données
Cet exemple montre comment utiliser le SQLite Adapter intégré et implémenter un Database Adapter personnalisé.
pnpm example:database-adapterOuvrez http://127.0.0.1:3010/?unit=persistent-sheet.
Autorisations
Établissez une identité fiable par cookie et protégez séparément lecture HTTP Unit, JOIN temps réel et soumission. La page bascule entre un Alice · Editor pédagogique et un Bob · Viewer en lecture seule.
pnpm example:permissionsOuvrez http://127.0.0.1:3010.
Historique
Ajoutez hors du cœur History Service, un Adapter distinct, History Endpoint et l’entrée historique du navigateur. Les Events de création Unit et de commit construisent un index dérivé reconstructible.
pnpm example:historyOuvrez http://127.0.0.1:3010/?unit=history-sheet, modifiez la Sheet puis choisissez History en haut.
Commentaires
Ajoutez Thread Comment Service, un Adapter distinct, Comment Endpoint et l’entrée frontend. Comment Endpoint réutilise les Sessions et Rooms Unit de l’Endpoint principal.
pnpm example:commentsOuvrez http://127.0.0.1:3010/?unit=comments-sheet, sélectionnez une cellule et utilisez les commentaires.
Worktree
Explorez le cycle complet : brouillon isolé, Ready, Reopen et Merge par Unit. Basculez entre tronc et brouillon pour voir les changements de l’AI Agent isolés avant fusion.
pnpm example:worktreeOuvrez http://127.0.0.1:3010/?unit=worktree-sheet&worktree=demo-worktree.
Conversion de fichiers
Associez @univerjs-pro/exchange-node à Collaboration Service pour l’import/export Sheet serveur, le suivi des tâches, l’import d’instantanés et l’export de révisions confirmées.
pnpm example:exchangeOuvrez http://127.0.0.1:3010/?unit=exchange-sheet. Importez via File → Open (File) et exportez via File → Save As.
Déploiement à plusieurs nœuds
Exécutez deux nœuds de collaboration derrière Nginx. Redis relaie les mises à jour en temps réel entre les nœuds et partage les session tickets, de sorte que n’importe quel nœud peut servir n’importe quelle requête. Nécessite Docker Compose.
pnpm example:multi-nodeOuvrez http://127.0.0.1:3010/ et cliquez sur New Sheet pour créer un fichier. Copiez l’URL complète dans un autre onglet pour vérifier l’édition collaborative du même document. Créez ensuite quelques fichiers supplémentaires pour observer leur répartition entre les nœuds.
Les exemples ne sont pas des applications de production
Utilisateurs fixes, autorisations pédagogiques, Memory Adapters, secrets locaux et stockage en mémoire des fichiers et tâches sont didactiques. Identité, autorisation, persistance, secrets, fichiers, déploiement et interactions restent à la charge de l’application.
Que pensez-vous de ce guide ?