Étape 1: Installation npm

Installez le paquet depuis le registre npm.

Terminal window
npm install add-to-calendar-button

Étape 2: Importation

Importez le module dans le composant où vous souhaitez utiliser le bouton.

import 'add-to-calendar-button';

Étape 3: Optimiser la configuration Vue

En théorie, tout est déjà prêt.
Vue fonctionne très bien avec les Web Components.

Vous pouvez toutefois voir un avertissement dans la console du navigateur.
Pour le supprimer, fournissez quelques informations supplémentaires aux options du compilateur.

Cela peut se placer dans vite.config.js ou ailleurs selon votre configuration. Consultez la documentation officielle de Vue pour plus de détails: cliquez ici .

// vite.config.js or vite.config.ts
compilerOptions: {
isCustomElement: (tag) => tag.includes('-')
}

Si Add to Calendar Button est le seul Web Component de votre projet, vous pouvez être plus explicite.
Nous recommandons alors de déclarer comme custom elements les balises commençant par « add- ».

// vite.config.js or vite.config.ts
compilerOptions: {
isCustomElement: (tag) => tag.startsWith('add-')
}

Étape 4: Utilisation

Commencez par ajouter une balise <add-to-calendar-button> à votre code HTML, avec les options sous forme d’attributs.

Oui, c’est aussi simple que cela.

Votre bloc de code pourrait ressembler à ceci.

<add-to-calendar-button
name="Titre"
options="'apple','google'"
location="World Wide Web"
start-date="2026-10-18"
end-date="2026-10-18"
start-time="10:15"
end-time="23:30"
time-zone="Europe/Paris"
language="fr"
></add-to-calendar-button>

Styles et langues

Le script inclut le style de bouton « default » et le pack anglais : le bouton est donc immédiatement fonctionnel et agréable sans configuration supplémentaire.

Lorsque vous chargez directement le script navigateur, les autres styles et langues sont chargés automatiquement à la demande (quelques Ko chacun). Les intégrations groupées doivent enregistrer explicitement les modules requis comme ci-dessous.

Bundling via npm (recommandé pour les frameworks)

Lors du bundling, importez les modules de style et de langue requis avant le module principal. Ils sont ainsi enregistrés sans requête avant la mise à niveau du custom element, y compris pendant l’hydratation SSR :

import 'add-to-calendar-button/styles/3d'; // any style besides "default"
import 'add-to-calendar-button/i18n/de'; // any language besides English
import 'add-to-calendar-button'; // load the component last

Pour charger tous les styles ou toutes les langues en une seule instruction, utilisez les modules agrégés : import 'add-to-calendar-button/styles/all' et import 'add-to-calendar-button/i18n/all'.

Consultez les options « button-style » et « language » sur la page Configuration pour tous les détails.