Titolo, luogo, data e ora, fuso orario, ripetizione, invitati, avvisi e note; poi scarica il file .ics o aprilo direttamente nel calendario. Puoi anche incollare un programma o allegare un documento o una foto per creare più eventi insieme.

Come posso inserire un pulsante "aggiungi al calendario" o un generatore di eventi sul mio sito?

Il generatore di ICS Maker viene distribuito come script standalone: un elemento vuoto, un tag script che punta a event-creator.js, e una chiamata a EventCreator.mount() — nessuna fase di build, nessun framework, nessun account, nessuna chiave e nessun limite di visualizzazioni. Il bundle è un'unica IIFE autosufficiente sotto gli 85 kB compressi (gzip), con la libreria di rendering inclusa, e non effettua alcuna richiesta di rete: niente analytics, niente font, nessun CDN, quindi non aggiunge nessuna origine a una Content-Security-Policy e nessun paragrafo a una privacy policy. Ogni colore, raggio e font è una proprietà CSS personalizzata sotto .ec-root, la modalità scura segue le preferenze del visitatore, e un sito React può renderizzare il componente direttamente invece di caricare il bundle.

Un solo tag script

<div id="event-creator"></div>
<script src="https://icsmaker.com/event-creator.js"></script>
<script>
  EventCreator.mount('#event-creator', { showPreview: false });
</script>

Il bundle porta con sé il proprio rendering, i propri stili e nessuna dipendenza da installare. Non comunica con nulla — niente analytics, niente font, nessun CDN — quindi la privacy policy della tua pagina non ha bisogno di nuovi paragrafi, e una Content-Security-Policy rigorosa non ha bisogno di nuove origini.

Renderlo simile al tuo sito

Ogni colore, raggio e font è una proprietà CSS personalizzata sotto .ec-root, quindi sovrascrivere --ec-accent è di solito tutto il lavoro di personalizzazione grafica necessario. Segue autonomamente la preferenza per la modalità scura del visitatore, e il pannello di anteprima può essere disattivato con showPreview: false quando lo spazio è limitato.

Usi già React?

Salta il bundle e renderizza il componente direttamente — stessa logica del form, una copia in meno della libreria di rendering nella pagina.

Domande

L'embed invia qualcosa ai vostri server?
No. È un file statico che viene eseguito interamente nel browser del visitatore: niente analytics, niente telemetria, nessuna chiamata verso l'esterno. Puoi ospitare tu stesso il bundle se preferisci non caricarlo da questo dominio.
Quanto è grande?
Meno di 85 kB compressi (gzip), libreria di rendering inclusa, e si carica dopo la tua pagina anziché bloccarne il caricamento. La build fallisce se il bundle dovesse mai superare questa soglia, quindi il numero indicato in questa pagina non può smettere di essere vero senza che ce ne accorgiamo.
Posso limitare quali formati i visitatori possono scaricare?
La chiamata mount accetta opzioni — un formato predefinito, una data predefinita, una bozza precompilata e se mostrare o meno l'anteprima — e il componente React accetta le stesse opzioni come props.