Skip to content
This repository has been archived by the owner on Jul 17, 2023. It is now read-only.

catherineisonline/intro-component-with-sign-up-form-frontendmentor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Intro Components With Sign-up Form

Solution for a challenge from frontendmentor.io.



About The Project

Practice building out a sign-up form complete with client-side validation using JavaScript. The challenge is to build out this landing page and get it looking as close to the design as possible. You can use any tools you like to help you complete the challenge. So if you've got something you'd like to practice, feel free to give it a go.



Users should be able to:
1. View the optimal layout depending on their device's screen size. 2. See hover states for all interactive elements on the page.
3. Submit their email address using an input field.
4. Receive an error message when the form is submitted if the input field is empty & the email address is not formatted correctly.

I do not have access to the Figma sketch so the design is not pixel perfect.

Built with

  • Semantic HTML5 markup
  • CSS custom properties
  • Flex
  • Grid
  • Desktop-first workflow
  • JavaScript

What I learned

Another great project to practice form validation. Learned from past mistakes to position error messages corretly. This challenge needs some fix regarding errors as they disappear after some time. I think it will be better if the error is still visible untill the user tries to interact with it, for intance. Because when there are many errors and they all disappear the user won't be able to remember everything by heart.

Useful resources

  1. Figma - Paste your design image to check the size of containers, width, etc.
  2. Perfect Pixel - Awesome Chrome extension that helps you to match the pixels of the provided design.

Acknowledgments

A big thank you to anyone providing feedback on my solution. It definitely helps to find new ways to code and find easier solutions!