À propos du projet

Plasmic est un constructeur visuel open source pour le web, destiné à créer rapidement des applications, des sites web et du contenu tout en s'intégrant à une base de code existante. Le README le positionne comme un moyen de « briser le plafond du low-code » en permettant aux utilisateurs de glisser-déposer leurs propres composants React et de publier des écrans directement dans des applications existantes. Les principaux cas d'usage décrits incluent la gestion de contenu (les équipes marketing assemblant des landing pages à partir de composants React enregistrés dans un site Next.js, avec des garde-fous de conception), la création d'applications (outils internes, portails clients, logiciels métier) et la création générale de sites web sans être lié à une plateforme e-commerce, un CMS ou un hébergeur spécifique. Capacités clés mises en avant : - Enregistrement de composants React personnalisés arbitraires pour les utiliser comme blocs de construction dans Plasmic Studio. - Une API headless plus une génération optionnelle de code React dans une base de code. - Des interactions stateful riches, des intégrations de sources de données et de backends, et des abstractions telles que les composants, les variantes, les slots et la gestion d'état composable. - Des composants de design system headless personnalisables propulsés par react-aria. - Un mode créateur de contenu avec une édition simplifiée et des garde-fous de conception. - Des fonctionnalités de collaboration incluant le multijoueur, le branching, les imports inter-projets et les organisations multi-workspaces. - L'import de designs depuis Figma en traduisant son format de document vectoriel en DOM/CSS. - Une génération de code orientée vers la performance des pages, la génération de sites statiques, l'optimisation des images et la réduction des décalages de mise en page. - Le déploiement ou l'export vers Vercel, Netlify ou d'autres fournisseurs d'hébergement. - L'authentification et les permissions des utilisateurs finaux, y compris le RBAC et les permissions limitées à l'utilisateur. - Une plateforme open source qui peut être forkée et contrôlée. Le README montre un flux d'intégration CMS typique : installer un package de loader spécifique au framework (par exemple @plasmicapp/loader-nextjs), enregistrer éventuellement des composants d'application ou de design system avec PLASMIC.registerComponent, ajouter des placeholders tels que PlasmicComponent et PlasmicRootProvider dans l'application, puis laisser les non-développeurs créer des pages ou des sections qui sont livrées dans l'application. La publication des modifications peut être récupérée via des webhooks, la revalidation statique incrémentale ou la récupération dynamique depuis le CDN Plasmic. Il note également des conseils de versionnage : les packages @plasmicapp dépendent de versions exactes les uns des autres pour rester synchronisés, et les packages @plasmicpkgs utilisent des plages de peer dependencies. Le README recommande de vérifier les versions dupliquées ou incompatibles avec npm list et d'utiliser npm dedupe ou de réinstaller si nécessaire. Licence : le contenu en dehors de platform/ est sous licence MIT ; platform/ est sous licence AGPL. Le support communautaire est proposé via la documentation, un forum et une communauté Slack.