Empezar
Copie una solicitud de configuración con los pasos de instalación y la guía de markdown completa para este plugin.
Set up this Capacitor plugin in the project.
Use the package manager already used by the project.
Install these package(s): `@capgo/capacitor-calendar`
Run the required Capacitor sync/update step after installation.
Read this markdown guide for the full setup steps: https://raw.githubusercontent.com/Cap-go/website/refs/heads/main/apps/docs/src/content/docs/docs/plugins/calendar/getting-started.mdx
Use that guide for platform-specific steps, native file edits, permissions, config changes, imports, and usage setup.
If that guide references other docs pages, read them too.
Instalar
Sección titulada “Instalar”Puede utilizar nuestra configuración asistida por inteligencia artificial para instalar el complemento. Agregue las Capgo habilidades a su herramienta de inteligencia artificial utilizando el siguiente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsLuego utilice el siguiente prompt:
Use the `capacitor-plugins` skill from `Cap-go/capgo-skills` to install the `@capgo/capacitor-calendar` plugin in my project.Si prefiere la configuración manual, instale el complemento ejecutando los siguientes comandos y siguiendo las instrucciones específicas del plataforma a continuación:
npm install @capgo/capacitor-calendarnpx cap syncConfiguración de iOS
Título de la sección “Configuración de iOS”Agregue las descripciones de uso que su aplicación necesita ios/App/App/Info.plist:
<key>NSCalendarsUsageDescription</key><string>This app needs calendar access.</string><key>NSCalendarsWriteOnlyAccessUsageDescription</key><string>This app needs permission to add calendar events.</string><key>NSCalendarsFullAccessUsageDescription</key><string>This app needs permission to read and manage calendar events.</string><key>NSRemindersUsageDescription</key><string>This app needs reminders access.</string><key>NSRemindersFullAccessUsageDescription</key><string>This app needs permission to read and manage reminders.</string>iOS 17 y posteriores distinguen entre acceso solo de escritura y acceso completo al calendario. Solo incluya descripciones de uso de recordatorios si su aplicación llama a las API de Recordatorios.
Referencia de Apple: Migrar a los niveles de acceso de calendario más recientes.
Configuración de Android
Título de la sección “Configuración de Android”Agregue las permisos de calendario que su aplicación necesita android/app/src/main/AndroidManifest.xml:
<uses-permission android:name="android.permission.READ_CALENDAR" /><uses-permission android:name="android.permission.WRITE_CALENDAR" />Referencia de Android: Permisos del proveedor de calendario.
Solicitar acceso al calendario
Sección titulada “Solicitar acceso al calendario”import { CapacitorCalendar } from '@capgo/capacitor-calendar';
const permission = await CapacitorCalendar.requestFullCalendarAccess();
if (permission.result !== 'granted') { throw new Error('Calendar permission was not granted');}Para aplicaciones que solo agregan eventos, utilice requestWriteOnlyCalendarAccess() Para flujos de lectura solo para Android, utilice requestReadOnlyCalendarAccess().
Crear un evento
Sección titulada “Crear un evento”Las fechas son timestamps de Unix en milisegundos.
import { CapacitorCalendar } from '@capgo/capacitor-calendar';
const startDate = Date.now() + 60 * 60 * 1000;const endDate = startDate + 60 * 60 * 1000;
const { id } = await CapacitorCalendar.createEvent({ title: 'Product review', location: 'Capgo', startDate, endDate, description: 'Created with @capgo/capacitor-calendar',});
console.log('Created event', id);Abrir el editor de eventos nativos
Sección titulada “Abrir el editor de eventos nativos”await CapacitorCalendar.createEventWithPrompt({ title: 'Planning session', location: 'Office', startDate: Date.now() + 24 * 60 * 60 * 1000, endDate: Date.now() + 25 * 60 * 60 * 1000,});En Android, las llamadas de creación y modificación basadas en solicitudes devuelven nullSi necesitas encontrar el ID del evento creado, lista los eventos después.
Lista de eventos futuros
Sección titulada “Lista de eventos futuros”const now = Date.now();const oneWeekFromNow = now + 7 * 24 * 60 * 60 * 1000;
const { result: events } = await CapacitorCalendar.listEventsInRange({ from: now, to: oneWeekFromNow,});Elegir un calendario
Sección titulada “Elegir un calendario”const { result: calendars } = await CapacitorCalendar.listCalendars();const { result: defaultCalendar } = await CapacitorCalendar.getDefaultCalendar();
const calendarId = defaultCalendar?.id ?? calendars[0]?.id;selectCalendarsWithPrompt() Está disponible en iOS cuando deseas mostrar el selector de calendario del sistema.
Crear un recordatorio de iOS
Sección titulada “Crear un recordatorio de iOS”const permission = await CapacitorCalendar.requestFullRemindersAccess();
if (permission.result === 'granted') { await CapacitorCalendar.createReminder({ title: 'Send launch notes', dueDate: Date.now() + 2 * 24 * 60 * 60 * 1000, notes: 'Created with @capgo/capacitor-calendar', });}Las APIs de recordatorio son solo para iOS.
App de ejemplo
Sección titulada “App de ejemplo”El repositorio incluye una Capacitor app de ejemplo con comprobaciones de permisos, creación de eventos, promt de eventos nativos, lista de calendario y lista de rangos de eventos.
| iOS | Android |
|---|---|
![]() | ![]() |
API Reference
Sección titulada “API Reference”La referencia completa de API se mantiene en el archivo README del paquete y definiciones de TypeScript:

