Skip to content
  • Learning paths
  • Challenges
  • Solutions
  • Articles
  • Unlock Pro
  • Log in with GitHub
Solution
Submitted over 1 year ago

Responsive React+TypeScript+Tailwind

react, tailwind-css, typescript
German Pinto•320
@germanp007
A solution to the Blog preview card challenge
View live sitePreview (opens in new tab)View codeCode (opens in new tab)

Solution retrospective


React Tailwind

Hi, I made this simple component with React, Tailwind, and Typescript... Please, I'd love to get feedback to improve something or get better practices. Enjoy coding!(●'◡'●)

Code
Select a file

Please log in to post a comment

Log in with GitHub

Community feedback

  • Petrit Nuredini•2,860
    @petritnuredini
    Posted over 1 year ago

    Congratulations on completing your project! It's great to see your dedication and effort in building a visually appealing and functional application. Here are some short recommendations to enhance your work:

    1. HTML and CSS Best Practices:

      • Semantic HTML: Use the <main> tag instead of <body> within your React component for better semantics.
      • Responsive Design: Good start on responsiveness. Consider using rem units for font sizes and spacing for better scalability across devices.
    2. React Component Structure:

      • Component Reusability: Ensure that components like SvgComponent are reusable and configurable for different scenarios.
    3. Styling:

      • Consistent Styling: Maintain consistent styling across the app. Ensure that classes like bg-YellowBg, bg-WhiteNeutral, etc., are clearly defined and reusable.
      • Avoid Inline Styling: Refrain from inline styling in JSX. It's better to use CSS or styled-components for maintainability and performance.
    4. Accessibility:

      • Alt Text: Good use of alt text on images. Ensure it's descriptive for screen readers.
    5. Code Organization:

      • Project Structure: Keep your project structure organized. Group similar files together and maintain a clear hierarchy.
    6. References for Learning:

      • React Documentation: React
      • CSS Best Practices: MDN Web Docs

    Keep up the hard work and continue to challenge yourself with new projects! Your progress is impressive, and each project brings new opportunities to learn and grow. Stay curious and explore new technologies and concepts!

    Marked as helpful
  • P
    Daniel 🛸•44,760
    @danielmrz-dev
    Posted over 1 year ago

    Hello @germanp007!

    Your solution looks great!

    I have a couple of suggestions (about semantic HTML) for improvement:

    📌 First: Use <main> to wrap the main content instead of <div>.

    Tags like <div> and <span> are typical examples of non-semantic HTML elements. They serve only as content holders but give no indication as to what type of content they contain or what role that content plays on the page.

    📌 Second: Don't skip heading levels - start with <h1>, then use <h2>, and so on.

    Unlike what most people think, it's not just about the size and weight of the text.

    • The <h1> to <h6> tags are used to define HTML headings.

    • <h1> defines the most important heading.

    • <h6> defines the least important heading.

    • Only use one <h1> per page - this should represent the main heading/title for the whole page.

    All these tag changes may have little or any visual impact but they make your HTML code more semantic and improve SEO optimization as well as the accessibility of your project.

    I hope it helps!

    Other than that, great job!

    Marked as helpful

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

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