Skip to content

Instalación

This content is not available in your language yet.

  • Node.js ≥ 20
  • Un bundler moderno (Vite, webpack 5+) o ESM nativo
  1. Añade los paquetes:

    Ventana de terminal
    pnpm add @prolibu-suite/cobalt-core @prolibu-suite/cobalt-tokens
  2. Importa los tokens (en tu CSS global):

    @import '@prolibu-suite/cobalt-tokens/css';
    @import '@prolibu-suite/cobalt-tokens/css/dark';
  3. Registra los Web Components (una sola vez en tu entry point):

    main.js
    import { defineCustomElements } from '@prolibu-suite/cobalt-core/loader';
    defineCustomElements(window);

    Y en vite.config.js:

    export default {
    plugins: [vue({
    template: {
    compilerOptions: { isCustomElement: (tag) => tag.startsWith('co-') }
    }
    })]
    };
  4. Úsalos como cualquier elemento HTML:

    <co-button label="Guardar" variant="primary"></co-button>
    <co-input label="Email" icon-left="envelope"></co-input>

Para prototipos rápidos, demos o HTML vanilla, podés cargar Cobalt directamente desde unpkg sin instalar nada ni correr un bundler. Copy-paste en cualquier .html:

<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="https://unpkg.com/@prolibu-suite/cobalt-tokens@0.1.0/build/css/tokens.css">
<script type="module" src="https://unpkg.com/@prolibu-suite/cobalt-core@0.1.0/dist/cobalt/cobalt.esm.js"></script>
</head>
<body>
<co-button label="Guardar" variant="primary"></co-button>
<co-input label="Email" icon-left="envelope"></co-input>
</body>
</html>
RecursoURL
Design tokens (CSS)https://unpkg.com/@prolibu-suite/cobalt-tokens@0.1.0/build/css/tokens.css
Dark mode tokenshttps://unpkg.com/@prolibu-suite/cobalt-tokens@0.1.0/build/css/tokens-dark.css
Web Componentshttps://unpkg.com/@prolibu-suite/cobalt-core@0.1.0/dist/cobalt/cobalt.esm.js
<co-form> schema-drivenhttps://unpkg.com/@prolibu-suite/cobalt-form@0.1.0/dist/cobalt-form/cobalt-form.esm.js
Form controller (framework-agnostic)https://unpkg.com/@prolibu-suite/cobalt-form-core@0.1.0/dist/index.js

5 ejemplos consumiendo Cobalt desde CDN, de menos invasivo a totalmente custom:

Si todo funciona, deberías ver:

Ver código
<co-button label="¡Funciona!" variant="primary"></co-button>