Skip to content
  • Unlock Pro
  • Log in with GitHub
Solution
Submitted about 2 years ago

🦊 Smoothly Animated Sign-up Form [Redesign] + [react-hook-form] 🦊

framer-motion, gsap, react, animation
visualdennis•8,375
@visualdenniss
A solution to the Intro component with sign-up form challenge
View live sitePreview (opens in new tab)View codeCode (opens in new tab)

Solution retrospective


You can find MY ANIMATION TUTORIAL HERE

🔥 Another challenge with my own custom design on top the original fem design.

  • Landing Page Animation done in gsap.
  • Changing Words Animation done in vanilla JS.
  • Error Animations done in framer-motion (due to exit animations)
  • Input Field Animations done in vanilla CSS.

For optimum animation experience, recommended viewing dimensions: 1440x800

  • I've built the form using react-hook-form for functions and yup for validation.
  • Modal component built by using Dialog component by headlessui
  • The placeholder text for terms of services generated by ChatGPT (who would have written all that text anw :) )

It is also responsive for mobile.

And finally with this submission, i've officially completed all newbie challenges 🔥

Code
Couldn’t fetch repository

Please log in to post a comment

Log in with GitHub

Community feedback

  • billccr•130
    @billccr
    Posted about 2 years ago

    Very inspiring to see what you've done with this 'newbie' challenge. Quite a beautiful presentation.

    For image compression, conversion, and resizing, you might also want to take a look at Squoosh App. It's a web app that's super intuitive, fast, and works offline (no uploading of assets required). Jad Joubran (of Learn JS Online) does a great analysis video of it.

    Marked as helpful
  • Zsolt Varjú•490
    @zsoltvarju
    Posted about 2 years ago

    Hello Dennis!

    I really love your take on this project in fact I love it much more than the original design. I am just a beginner so i cant really give you any kind of constructive criticism about your code, but i would like to let you know that as i tried your live preview and used the built in autofill function in chrome for the inputs the background color of the input changes to #e8f0fe and hides its corresponding label.

    Keep up the great work!

    P.S.: sorry if my comment is hard to understand i tried my best trying to explain it! :)

    Marked as helpful
  • Melvin Aguilar 🧑🏻‍💻•61,020
    @MelvinAguilar
    Posted about 2 years ago

    Hello there 👋. Good job on completing the challenge !

    Your solution is quite elegant and the animations are very smooth. However, i found a problem with your page. The images should not be too heavy; 5.07MB is too much for a single image. Not everyone has a good internet connection. In fact, when I reviewed your solution at my university (where the internet is not very good), it took more than 5 seconds to load and I could only see the white letters.

    You could even use Lighthouse to check the performance of your page, and read their article on Large Network Payloads: Avoid enormous network payloads

    Apart from that minor issue, the other aspects of the solution are impeccable. It is a very impressive job.

    Happy coding !

    Marked as helpful
  • P
    Ed•720
    @EdwinSch
    Posted about 2 years ago

    Hi there! Just wanted to say I love your personal takes on the standard designs. 👍 It takes a lot of creativity and design knowledge to re-design the entire challenge(s). Just had the same tip as Melvin already mentioned above; keep track of your image/content sizes. Users will leave an application if the performance is slow, no matter how great the design. Easy fix by just compressing down your images.

    Keep it up! Great stuff :)

  • Madi•170
    @MadiMalik
    Posted about 2 years ago

    I told you not to underestimate your design skills, even when it comes to building forms. Your animation was fantastic, and I thoroughly enjoyed it!

  • Shawn(Heongi) Yeo•190
    @hyeo151
    Posted about 2 years ago

    Love your work !

  • Jo Young•840
    @Jo-cloud85
    Posted about 2 years ago

    It is really inspiring for aspiring developer to see pro-developers like yourself pushing boundaries for each challenge, going beyond the basic requirements. This is a really impressive little project by the way! Awesome!

  • 🦊[Shadow]🦊•420
    @Shadow-IO-oI
    Posted about 2 years ago

    🦊^_^🦊👍

  • Hira•130
    @hirashabeer
    Posted 12 months ago

    hey @visualdenniss...could you spare a moment to review my recently solve expenses chart component solution and answer my questions pleaseeeeeeee
    i want to get rid of this headache asap

  • Smit Valture•310
    @smitvalture
    Posted almost 2 years ago

    Great website

  • Alexander Bobykin•90
    @abobykin
    Posted almost 2 years ago

    WOW, it's really cool!

    So good looking work, seems like you love your work & users. I made a task for myself to review your code carefully if I can find anything else after all guys of course (now it's just pretty late for my), but for now please take at least my respect so far Denis!

    Thank you for your great efforts, it's really inspiring to learn (once again)!

Join our Discord community

Join thousands of Frontend Mentor community members taking the challenges, sharing resources, helping each other, and chatting about all things front-end!

Join our Discord
Frontend Mentor logo

Stay up to datewith new challenges, featured solutions, selected articles, and our latest news

Frontend Mentor

  • Unlock Pro
  • Contact us
  • FAQs
  • Become a partner

Explore

  • Learning paths
  • Challenges
  • Solutions
  • Articles

Community

  • Discord
  • Guidelines

For companies

  • Hire developers
  • Train developers
© Frontend Mentor 2019 - 2025
  • Terms
  • Cookie Policy
  • Privacy Policy
  • License

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

How does the accessibility report work?

When a solution is submitted, we use axe-core to run an automated audit of your code.

This picks out common accessibility issues like not using semantic HTML and not having proper heading hierarchies, among others.

This automated audit is fairly surface level, so we encourage to you review the project and code in more detail with accessibility best practices in mind.

How does the CSS report work?

When a solution is submitted, we use stylelint to run an automated check on the CSS code.

We've added some of our own linting rules based on recommended best practices. These rules are prefixed with frontend-mentor/ which you'll see at the top of each issue in the report.

The report will audit 1st-party linked stylesheets, and styles within <style> tags.

How does the HTML validation report work?

When a solution is submitted, we use html-validate to run an automated check on the HTML code.

The report picks out common HTML issues such as not using headings within section elements and incorrect nesting of elements, among others.

Note that the report can pick up “invalid” attributes, which some frameworks automatically add to the HTML. These attributes are crucial for how the frameworks function, although they’re technically not valid HTML. As such, some projects can show up with many HTML validation errors, which are benign and are a necessary part of the framework.

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub

Oops! 😬

You need to be logged in before you can do that.

Log in with GitHub