Iniciación
Copiar un prompt 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 IA para instalar el plugin. Agregue las Capgo habilidades a su herramienta de IA utilizando el siguiente comando:
npx skills add https://github.com/Cap-go/capgo-skills --skill capacitor-pluginsLuego utilice la siguiente solicitud:
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 de la plataforma a continuación:
npm install @capgo/capacitor-calendarnpx cap syncConfiguración de iOS
Sección titulada “Configuración de iOS”Agregue las descripciones de uso que su aplicación necesite a 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 de escritura solo 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: Migrando a los niveles de acceso de calendario más recientes.
Configuración de Android
Configuración de AndroidAgregar los permisos de calendario que necesita su aplicación 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 de usuario del proveedor de calendario.
Solicitar Acceso al Calendario
Configuración de acceso al calendarioimport { 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 de Android solo, 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);Editar Evento Nativo
Sección titulada “Editar Evento Nativo”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 promesas devuelven null. Listar eventos después si necesitas encontrar el ID del evento creado.
Listar Eventos Próximos
Sección titulada “Listar Eventos Próximos”const now = Date.now();const oneWeekFromNow = now + 7 * 24 * 60 * 60 * 1000;
const { result: events } = await CapacitorCalendar.listEventsInRange({ from: now, to: oneWeekFromNow,});Elige un calendario
Sección titulada “Elige 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 API de recordatorios son solo para iOS.
Aplicación de ejemplo
Sección titulada “Aplicación de ejemplo”El repositorio incluye una aplicación de ejemplo con Capacitor permisos de verificación, creación de eventos, promtivos de eventos nativos, lista de calendarios y lista de rangos de eventos.
| iOS | Sistema operativo Android |
|---|---|
![]() | ![]() |
API de referencia
Título de sección “API de referencia”La referencia completa de API se mantiene en el archivo README y las definiciones de TypeScript:

