--- title: "Introducción" url: https://docs.catalyst.zoho.com/es/tutorials/birthday-greetings/nodejs/introduction/ description: "Construye una aplicación de saludos de cumpleaños usando el servicio Job Scheduling y envía automáticamente saludos de cumpleaños a la persona requerida a través de su correo electrónico." last_updated: 2026-08-17T12:16:04Z service: All Services type: tutorial related_links: - name: "Project Directory Structure" url: /es/cli/v1/project-directory-structure/introduction/ - name: "Dynamic Cron" url: /es/job-scheduling/help/cron/key-concepts/#cron-types - name: "Job Scheudling SDK" url: /es/sdk/nodejs/v2/job-scheduling/overview/ - name: "Job Scheduling API" url: /es/api/code-reference/job-scheduling/jobpool/get-all-jobpool/#GetAllJobPools --- # Birthday Greetings App ### Introducción Este tutorial te ayudará a construir una aplicación web React sencilla llamada **Birthday Greetings**. La aplicación te permitirá configurar deseos por correo electrónico que puedes enviar a tus compañeros en su cumpleaños. Puedes configurar el deseo con un mensaje de cumpleaños personalizado y programarlo para que se envíe al correo electrónico de la persona requerida el día de su cumpleaños. Puedes realizar las siguientes acciones en la aplicación: * **Registrarte**/**iniciar sesión** en tu aplicación y emplear los procesos comunes de autenticación, incluyendo la validación de acceso usando lógica personalizada. * **Crear**, **Actualizar**, **Eliminar** y gestionar los deseos de cumpleaños que configures. El lado del cliente de la aplicación se verá así: ![catalyst_tutorials_jobscheduling_fistlook](https://catalyst-docs-development.zohostratus.in/images/tutorials/birthday-greetings/bday-greetings-frontpage.webp) Puedes explorar la funcionalidad de la aplicación usando este enlace: [¡Prueba la app!](https://jobscheduling-tutorial-860829830.development.catalystserverless.com/app/index.html) La lógica backend de este tutorial está codificada usando el runtime de **Node.js**. La aplicación Birthday Greeting emplea características de componentes de los siguientes servicios de Catalyst: 1. **[Catalyst Serverless](https://docs.catalyst.zoho.com/es/serverless/)** - [Functions](https://docs.catalyst.zoho.com/es/serverless/help/functions/introduction/): La lógica backend se codificará usando los siguientes tipos de funciones: - [Advanced I/O Function](https://docs.catalyst.zoho.com/es/serverless/help/functions/advanced-io/): La lógica para interactuar con el cliente y crear el cron dinámico se codificará en esta función. - [Basic I/O Function](https://docs.catalyst.zoho.com/es/serverless/help/functions/basic-io/): La lógica utilizada para la validación personalizada de usuarios se codificará en esta función. - [Job Function](https://docs.catalyst.zoho.com/es/serverless/help/functions/job-functions/): La lógica para activar el correo electrónico que contiene el saludo de cumpleaños se codificará en esta función. 2. **[Catalyst Cloud Scale](https://docs.catalyst.zoho.com/es/cloud-scale/)** - [Data Store](https://docs.catalyst.zoho.com/es/cloud-scale/help/data-store/introduction/): Para almacenar el nombre, mensaje personalizado, cumpleaños y correo electrónico de la persona para quien estás creando y programando el saludo. - [ZCQL](https://docs.catalyst.zoho.com/es/cloud-scale/help/zcql/introduction/): Para publicar y obtener datos del Data Store mediante consultas. - [Authentication](https://docs.catalyst.zoho.com/es/cloud-scale/help/authentication/introduction/): Para emplear los elementos de inicio de sesión requeridos usando el tipo [Embedded Authentication](https://docs.catalyst.zoho.com/es/cloud-scale/help/authentication/native-catalyst-authentication/embedded-authentication/introduction/) para permitir que los usuarios se registren o inicien sesión en tu aplicación. - [Whitelisting](https://docs.catalyst.zoho.com/es/cloud-scale/help/authentication/whitelisting/introduction/): Para usar la característica [Custom User Validation](https://docs.catalyst.zoho.com/es/cloud-scale/help/authentication/whitelisting/custom-user-validation/introduction/) para emplear la lógica de autenticación personalizada. - [Email Templates](https://docs.catalyst.zoho.com/es/cloud-scale/help/authentication/email-templates/introduction/): Para personalizar las plantillas de correo de **Email Verification** y **Forgot Password**. - [Mail](https://docs.catalyst.zoho.com/es/cloud-scale/help/mail/introduction/): Para verificar la dirección de correo del remitente y enviar el correo electrónico a la persona requerida. - [Web Client Hosting](https://docs.catalyst.zoho.com/es/cloud-scale/help/web-client-hosting/introduction/): Para alojar el front end de la aplicación. Puedes inicializar y configurar el cliente como una *React app*. 3. **[Catalyst Job Scheduling](https://docs.catalyst.zoho.com/es/job-scheduling/)** - [Job Pool](https://docs.catalyst.zoho.com/es/job-scheduling/help/jobpool/introduction/): Para ejecutar los function jobs que activarán la job function requerida para enviar el correo electrónico con el saludo de cumpleaños. - [Cron](https://docs.catalyst.zoho.com/es/job-scheduling/help/cron/introduction/): Para programar el envío del correo de saludos usando [Dynamic Cron](https://docs.catalyst.zoho.com/es/job-scheduling/help/cron/key-concepts/). - [Jobs](https://docs.catalyst.zoho.com/es/job-scheduling/help/job/introduction/): Para activar la Job Function requerida cuando se ejecuta desde el Job Pool. Usaremos la [consola web de Catalyst](https://console.catalyst.zoho.com/) y la [Interfaz de Línea de Comandos](https://docs.catalyst.zoho.com/es/cli/v1/cli-command-reference/) (CLI) de Catalyst para construir esta aplicación. > **Nota:** Se te proporcionará el código para los archivos que se incluirán en los componentes de función y cliente en este tutorial. Solo necesitarás copiar el código proporcionado y pegarlo en los archivos apropiados según se indique. ### Flujo de trabajo de la aplicación El flujo de trabajo de la aplicación Birthday Greetings se ilustra a continuación: ![catalyst_tutorials_jobscheduling_workflow_dig](https://catalyst-docs-development.zohostratus.in/images/tutorials/birthday-greetings/catalyst_tutorials_jobscheduling_workflow_dig.webp) 1. Te registras o inicias sesión en la aplicación. 2. Puedes proporcionar un mensaje personalizado, programar cuándo quieres que se envíe el saludo de cumpleaños y a quién debe enviarse usando los elementos de la interfaz en el lado del cliente. 3. Los detalles son entonces utilizados por la *Advanced I/O function* para crear un *Dynamic Cron* usando el [SDK](https://docs.catalyst.zoho.com/es/sdk/nodejs/v2/job-scheduling/cron/create-recurring-cron/). 4. En el momento programado, el dynamic cron enviará un *function job* al function job pool, desde donde el function job se ejecutará para activar la *Job Function*. 5. La job function usará el [Mail SDK](https://docs.catalyst.zoho.com/es/sdk/nodejs/v2/cloud-scale/mail/send-email/) para enviar el correo electrónico con los saludos de cumpleaños a la persona requerida. El flujo de trabajo completo de la aplicación se explicará con más detalle cuando codifiques la [lógica del cliente](https://docs.catalyst.zoho.com/es/tutorials/birthday-greetings/nodejs/config-client/), que te recomendamos revisar mientras sigues los pasos.