32 Day - Age Calculator App

Este desafío está diseñado para mejorar tus habilidades de validación de formularios y JavaScript. Trabajar con fechas en JavaScript puede ser complicado, así que esta será una buena prueba.

Feb 8, 2024

Age Calculator App

notion image

Bienvenido

Gracias por aceptar codificar este proyecto como parte del reto #100DaysOfProjects.
En líneas generales, el objetivo del reto es transformar el diseño en código, y hacer que se parezca lo más posible al diseño.
El diseño de este reto es propiedad original de Frontend Mentor.
Para realizar este desafío, necesitas conocimientos básicos de HTML, CSS y JavaScript.

Requerimientos

Tu misión será desarrollar esta aplicación calculadora de edad y lograr que se parezca lo más posible al diseño.
Los usuarios deberían poder:
  • Ver la edad en años, meses y días después de enviar una fecha válida a través del formulario
  • Mostrar errores de validación si:
    • Cualquier campo está vacío cuando se envía el formulario.
    • El número de día no está entre 1 y 31.
    • El número de mes no está entre 1 y 12.
    • La fecha es mayor a la actual.
    • La fecha no es válida, por ejemplo, 31/04/1991 (hay 30 días en abril)
  • Ver el diseño óptimo según el tamaño de pantalla del dispositivo.
  • Ver estados hover para los elementos interactivos en la página.
¿Quieres apoyo en el desafío? Únete a nuestro canal de Telegram.

Diseño

Pantallas grandes:
notion image
Mostrar error cuando se envían campos vacíos:
notion image
Mostrar error cuando se envía día, mes o año inválidos:
notion image
Mostrar error cuando se envía un día mayor al mes actual:
notion image
Diseño cuando se envían los datos correctamente:
notion image
Pantallas pequeñas:
notion image
Elementos interactivos (hover):
notion image

Desarrollo

Siéntase libre de utilizar cualquier flujo de trabajo con el que se sienta más cómodo. A continuación, recomendamos un proceso de trabajo.
  1. Usa la plantilla base que proporcionamos.
  1. Inicializa tu proyecto local con Git. Esto será útil para ayudarte a practicar los comandos básicos de Git.
  1. Crea un repositorio en GitHub con el nombre del proyecto.
  1. Vincula tu repositorio local con GitHub para subir los archivos locales al finalizar el proyecto.
  1. Crea una cuenta en Netlify o Vercel para vincular con tu cuenta GitHub y hacer deploy del proyecto.
  1. Analiza los diseños para saber cómo abordarás el proyecto. Este paso es crucial para ayudarte a pensar en el marcado HTML y las clases CSS para crear estilos reutilizables.
  1. Escribe los estilos base del proyecto, incluyendo los estilos generales como font-family, font-size, etc.
  1. Comienza por agregar los estilos de arriba hacia abajo. Pase a la siguiente sección una vez que esté satisfecho de haber completado el área en el que estaba trabajando.

Despliegue

Como mencionamos anteriormente, hay muchas formas de alojar tu proyecto de forma gratuita. Nuestros recomendados son:

Envía tu solución

Envía tu solución a nuestro grupo de Facebook para que lo vea el resto de la comunidad con el siguiente texto:
Hola Frontend Club👋, Acabo de completar el reto # como parte del desafío #100DaysOfProjects. Mi solución: Página web - https://profile-card.netlify.app/ Repositorio - https://github.com/01-day-profile-card.git

Recursos

Proporcionamos los recursos necesarios para completar el proyecto.

Medidas

El diseño debería verse bien en pantallas con estas medidas.
### Widths - Mobile: 375px - Desktop: 1200px

Colores

### Paleta de colores - Purple: hsl(259, 100%, 65%) - Light red: hsl(0, 100%, 67%) - White: hsl(0, 0%, 100%) - Off white: hsl(0, 0%, 94%) - Light grey: hsl(0, 0%, 86%) - Smokey grey: hsl(0, 1%, 44%) - Off black: hsl(0, 0%, 8%) ### Tipografia - Fuente: [Poppins](https://fonts.google.com/specimen/Poppins) - Peso: 400i (itálica), 700, 800i (itálica) - Font size (inputs): 32px

Plantilla

  • Contenido de texto del diseño.
Day DD Month MM Year YYYY -- years -- months -- days

"Yo puedo hacer cosas que tú no puedes, tú puedes hacer cosas que yo no puedo; juntos podemos hacer grandes cosas". — Madre Teresa de Calcuta.