This is a solution to the Ping coming soon page challenge on Frontend Mentor. Frontend Mentor challenges help you improve your coding skills by building realistic projects.
Users should be able to:
- View the optimal layout for the site depending on their device's screen size
- See hover states for all interactive elements on the page
- Submit their email address using an
input
field - Receive an error message when the
form
is submitted if:- The
input
field is empty. The message for this error should say "Whoops! It looks like you forgot to add your email" - The email address is not formatted correctly (i.e. a correct email address should have this structure:
name@host.tld
). The message for this error should say "Please provide a valid email address"
- The
- Solution URL: https://www.frontendmentor.io/solutions/ping-coming-soon-page-using-html-css-and-javascript-validation-dpQyuqG8p
- Live Site URL: https://ameyadeokule.github.io/ping-coming-soon-page/
- Semantic HTML5 markup
- CSS custom properties
- Flexbox
- JavaScript DOM Manipulation
- Regex for email validation
- Email Validtion using Regex.
- Using and styleing icons.
I want to write CSS in SASS or tailwind into this webpage and in future convert it to React SPA. Further would like to use email validation library like validate.js to validate email addresses so I don't miss out on boundary conditions.
- JavaScript: HTML Form - email validation - Good resource on how to approach email validation in JavaScript.
- I hate regex cheatsheet - Use this if you need quick regex for any values.
- A Complete Guide to Flexbox - This section helped me in better understanding flexbox and how the arrangements world
- A Complete Guide to CSS Media Queries - This is an amazing article which helped me finally understand breakpoints and how to handle HTML elements on a much smaller screen using CSS media queries.
- Website - Ameya Deokule
- Frontend Mentor - @ameyadeokule
I would like thank Kethmar Salumets @developerhabits for encouraging me to start completing challenges on Frontend Mentor.