https://github.com/snowfrogdev/age-calculator-app
https://github.com/snowfrogdev/age-calculator-app
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/snowfrogdev/age-calculator-app
- Owner: snowfrogdev
- Created: 2023-04-29T18:00:29.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2023-05-01T13:55:09.000Z (about 2 years ago)
- Last Synced: 2025-02-13T15:23:04.583Z (4 months ago)
- Language: TypeScript
- Size: 727 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Frontend Mentor - Age calculator app solution
This is a solution to the [Age calculator app challenge on Frontend Mentor](https://www.frontendmentor.io/challenges/age-calculator-app-dF9DFFpj-Q). Frontend Mentor challenges help you improve your coding skills by building realistic projects.
## Table of contents
- [Frontend Mentor - Age calculator app solution](#frontend-mentor---age-calculator-app-solution)
- [Table of contents](#table-of-contents)
- [Overview](#overview)
- [The challenge](#the-challenge)
- [Screenshot](#screenshot)
- [Links](#links)
- [My process](#my-process)
- [Built with](#built-with)
- [Useful resources](#useful-resources)
- [Author](#author)## Overview
### The challenge
Users should be able to:
- View an age in years, months, and days after submitting a valid date through the form
- Receive validation errors if:
- Any field is empty when the form is submitted
- The day number is not between 1-31
- The month number is not between 1-12
- The year is in the future
- The date is invalid e.g. 31/04/1991 (there are 30 days in April)
- View the optimal layout for the interface depending on their device's screen size
- See hover and focus states for all interactive elements on the page
- **Bonus**: See the age numbers animate to their final number when the form is submitted### Screenshot

### Links
- Solution URL: [https://github.com/snowfrogdev/age-calculator-app](https://github.com/snowfrogdev/age-calculator-app)
- Live Site URL: [https://snowfrogdev.github.io/age-calculator-app/](https://snowfrogdev.github.io/age-calculator-app/)## My process
### Built with
- Semantic HTML5 markup
- CSS custom properties
- Flexbox
- Mobile-first workflow
- Custome elements
- Typescript
- No bundlers, no frameworks, no ui libraries### Useful resources
- [web.dev](https://web.dev/custom-elements-v1/#rules-on-creating-custom-elements) - This article on custome elements helped me with reflecting properties to attributes.
## Author
- Website - [Philippe Vaillancourt](https://snowfrog.dev)
- Frontend Mentor - [@snowfrogdev](https://www.frontendmentor.io/profile/snowfrogdev)
- Twitter - [@snowfrogdev](https://www.twitter.com/snowfrogdev)