Skip to content
  • Unlock Pro
  • Log in with GitHub
Profile
OverviewSolutions
16
Comments
13
EmicJoykiller
@EmicJoykiller

All comments

  • P
    Aydan•680
    @AydanKara
    Submitted 5 months ago
    What are you most proud of, and what would you do differently next time?

    I am most proud of creating a fully accessible and user-friendly contact form with real-time validation and clear error messaging. The form follows best practices, including semantic HTML, ARIA attributes, and a clean UI.

    Next time, i would focus more on modularizing the JavaScript validation from the beginning to improve maintainability. I would also explore using a JavaScript framework (such as React) to make the form state management smoother.

    What challenges did you encounter, and how did you overcome them?

    🛑 Challenge: Only the first error message was showing when using .every() for validation.

    • ✅ Solution: I switched to .forEach() to ensure all errors appear simultaneously, improving the user experience.

    🛑 Challenge: The :invalid CSS rule didn’t apply when JavaScript handled validation.

    • ✅ Solution: I added a custom .invalid class in JavaScript to control the styling manually.

    🛑 Challenge: Making the form fully accessible for screen readers.

    • ✅ Solution: Used ARIA attributes (aria-describedby, aria-live) to announce errors and success messages properly.
    What specific areas of your project would you like help with?

    🔹 Validation Performance: My form validation works well, but are there more efficient ways to structure it?

    🔹 Accessibility Improvements: How can i further improve keyboard navigation and screen reader support?

    🔹 Error Handling Best Practices: Are there better ways to manage error messages dynamically while keeping the code scalable?

    Accessible Contact Form

    #accessibility
    1
    EmicJoykiller•270
    @EmicJoykiller
    Posted 4 months ago

    You did an outstanding job focusing on accessibility, user experience, and code quality. Building a fully accessible contact form with real-time validation, clear error messaging, semantic HTML, and ARIA support — all without using a frontend framework — shows excellent attention to detail and strong fundamentals.

    What you did very well:

    Accessibility: Great use of ARIA attributes like aria-describedby and aria-live to enhance the experience for screen reader users.

    Error Handling: Smart move replacing .every() with .forEach() to display all validation errors at once. It made the form much more user-friendly.

    Progressive Enhancement: Manually controlling the invalid styling using a custom .invalid class was a clever solution to work around browser inconsistencies with JavaScript-driven validation.

    Marked as helpful
  • Gustavo Gutiérrez•470
    @gustavo2023
    Submitted 4 months ago
    What specific areas of your project would you like help with?

    Any suggestions to improve accessibility

    Interactive FAQs accordion component

    #accessibility
    1
    EmicJoykiller•270
    @EmicJoykiller
    Posted 4 months ago

    Add an aria-expanded attribute to indicate if an answer is open or closed.

    Use aria-controls to associate each question button with its corresponding answer.

    Ensure answers have unique ids for aria-controls to reference.

    Allow full keyboard navigation (Tab to focus, Enter/Space to toggle answers).

    Ensure visible focus styles are present and clear for keyboard users.

    Optionally wrap each answer in a <section> or add role="region" for better screen reader context.

    Maintain logical heading structure (consider using <h2> for each question if appropriate).

    Test with a screen reader (like NVDA, VoiceOver) to catch anything Lighthouse might miss.

  • Harold-chn•870
    @chanwinharold
    Submitted 4 months ago

    interactive-rating-component-main

    1
    EmicJoykiller•270
    @EmicJoykiller
    Posted 4 months ago

    nicely done

  • Akin Holo•230
    @akin-holo
    Submitted 5 months ago
    What are you most proud of, and what would you do differently next time?

    This project is not complete yet.

    I am still coming back to finish it

    What challenges did you encounter, and how did you overcome them?

    This project is not complete yet.

    I am still coming back to finish it

    What specific areas of your project would you like help with?

    This project is not complete yet.

    I am still coming back to finish it

    Tip Calculator App using html, css and javascript

    1
    EmicJoykiller•270
    @EmicJoykiller
    Posted 5 months ago

    looks good so far; i did not check the functionality since you're not done yet but keep going

    Marked as helpful
  • P
    LaStellaa•570
    @LaStellaa
    Submitted 5 months ago

    Time tracking dashboard

    1
    EmicJoykiller•270
    @EmicJoykiller
    Posted 5 months ago

    nice work, keep going

  • Ali Seidu•90
    @aliseidu8855
    Submitted almost 2 years ago

    Newsletter sign up using javascript, css and htlm

    #accessibility#cube-css#jquery#node#semantic-ui
    1
    EmicJoykiller•270
    @EmicJoykiller
    Posted 5 months ago

    One small improvement would be to center the .container more effectively, especially in larger screen sizes, to maintain a balanced look. You could achieve this by using align-items: center; on the parent flex container or applying margin: auto; with display: flex; and justify-content: center;.

    Other than that, great job! Keep up the good work!

  • orbdev1•130
    @orbdev1
    Submitted 5 months ago
    What are you most proud of, and what would you do differently next time?

    i think styling contional classes tailwindcss

    What challenges did you encounter, and how did you overcome them?

    Some redimenzion, overflows of boxes and styling, trying to do it and see documentation of tailwind

    What specific areas of your project would you like help with?

    Styling and i dont know if this is a correct way to use TS

    Article preview component master

    #tailwind-css#react
    1
    EmicJoykiller•270
    @EmicJoykiller
    Posted 5 months ago

    Strengths: Effective use of conditional styling with Tailwind CSS

    Strong problem-solving approach (referencing documentation, experimenting)

    Challenges & Improvements: Handling box resizing and overflow issues

    Ensuring correct TypeScript usage

    Optimizing Tailwind class management

    Suggestions for Improvement: Utilize flexbox, grid, and overflow utilities in Tailwind

    Use clsx or classnames for cleaner conditional styling

    Enable strict: true in tsconfig.json for better TypeScript validation

    Leverage Tailwind plugins for streamlined styling

    Break down UI components into smaller, reusable parts with well-typed props

  • Marc REGNIER•100
    @marc-regnier
    Submitted 11 months ago

    Testimonials grid css responsive design

    1
    EmicJoykiller•270
    @EmicJoykiller
    Posted 11 months ago

    Your solution looks great and matches the design perfectly! The layout and structure are spot on. The only suggestion I have is to consider changing the background color to "Very-dark-grayish-blue" as I think that's the correct one based on the design. Other than that, awesome work—keep it up!

    Marked as helpful
  • Francisco Javier Marin Ascenso•200
    @Franciscoj91
    Submitted 12 months ago
    What are you most proud of, and what would you do differently next time?

    I let a lot of time pass from finishing the project to publishing it, it was a challenge to continue after so much time but I pride myself on not leaving it behind.

    What challenges did you encounter, and how did you overcome them?

    Using the picture tag and using it correctly is a learning that I will use from now on.

    What specific areas of your project would you like help with?

    Any opportunity for improvement, comment, or question about what has been done will be welcomed.

    Product Preview Card Component

    1
    EmicJoykiller•270
    @EmicJoykiller
    Posted 12 months ago

    Wonderful work, keep going

  • briankrou•100
    @briankrou
    Submitted 12 months ago

    recipe-page

    1
    EmicJoykiller•270
    @EmicJoykiller
    Posted 12 months ago

    good work, keep going

  • Adewuyi Muhammad•10
    @dewaleadewuyi
    Submitted about 1 year ago

    Social links profile

    1
    EmicJoykiller•270
    @EmicJoykiller
    Posted about 1 year ago

    good job overall, just make the card centered using flex or grid, as it should be matching that, also the card color could be a closer match.

    well done

  • alexrtm•50
    @alexrtm
    Submitted about 1 year ago
    What are you most proud of, and what would you do differently next time?

    This one wasn't super challenging. I am just proud that I got my solution to be reasonably close to the design.

    What challenges did you encounter, and how did you overcome them?

    The main challenge in this one was getting the font sizes to be responsive without media queries. I ended up using the clamp() function to achieve responsive typography and card sizing.

    What specific areas of your project would you like help with?
    1. While clamp() seemed to work well in this case for implementing responsive typography and layout, I would like to explore additional techniques for handling responsiveness. I would appreciate feedback on how to better handle extreme screen sizes (both small and large) and ensure that the design remains visually appealing across all devices.
    2. While I tried my best to ensure the project was semantically structured and included basic accessibility features (like alt attributes), there’s always room for improvement. I’d like feedback on how to improve the accessibility of my card component, particularly for users who rely on screen readers or keyboard navigation.
    3. Although the typography is responsive, fine-tuning font sizes, line heights, and spacing for optimal readability can be tricky. I’m seeking feedback on how to fine-tune typography and spacing for better readability and visual hierarchy across different devices.
    4. I'd like feedback on my uses of grid on the blog preview card itself to control the layout of its child elements.
    5. I'd like feedback on my use of flexbox for the author element.

    Blog Preview Card

    1
    EmicJoykiller•270
    @EmicJoykiller
    Posted about 1 year ago

    Looks good, feel free to adjust the card size according to the figma desing.

  • P
    Emilia Burza•780
    @eburza
    Submitted about 1 year ago

    QR code component

    #accessibility
    2
    EmicJoykiller•270
    @EmicJoykiller
    Posted about 1 year ago

    Awesome work

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

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

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

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

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