Skip to content
  • Unlock Pro
  • Log in with GitHub
Profile
OverviewSolutions
6
Comments
10

not-a-patch

@notapatchBirmingham, UK200 points

I’m a mysterious individual who has yet to fill out my bio. One thing’s for certain: I love writing front-end code!

Latest solutions

  • Time Tracking Dashboard with ReactJS and Tailwindcss


    not-a-patch•200
    Submitted almost 4 years ago

    0 comments
  • ReactJS


    not-a-patch•200
    Submitted almost 4 years ago

    0 comments
  • Rails, Stimulus JS, Tailwindcss, CSS Grid, Flexbox, Devise


    not-a-patch•200
    Submitted almost 4 years ago

    0 comments
  • Vite and Tailwindcss


    not-a-patch•200
    Submitted about 4 years ago

    2 comments
  • Vite and Tailwindcss


    not-a-patch•200
    Submitted about 4 years ago

    0 comments
  • Job Listings - ReactJS Tailwindcss JS Array Methods


    not-a-patch•200
    Submitted almost 4 years ago

    2 comments

Latest comments

  • Neil Khatri•620
    @nkhatri7
    Submitted over 3 years ago

    Job listings with filtering built with React and SCSS

    1
    not-a-patch•200
    @notapatch
    Posted over 3 years ago

    You're doing good, Neil.

    It looked feature complete. I'm not very experienced in ReactJS, but I've read a few solutions and your answer was similar to others and the code was clear to read.

    The favourite bit was using Set to create a unique list.

    Array.from(new Set([...attributes, attribute])));
    

    Nothing more to say other than keep going!

  • Mathieu THIRY•300
    @promathieuthiry
    Submitted almost 4 years ago

    Job listing using React, styled components and Parcel

    1
    not-a-patch•200
    @notapatch
    Posted almost 4 years ago

    I must admit, I wouldn't have known if this was a Parcel project or a create-react-app without looking into the package.json. Is there another way?

    I've not used styled components, but I could follow along and nothing was surprising.

    The JS array methods are what I was expecting.

    So the feedback, really is, well done and keep going.

    Marked as helpful
  • AM46•290
    @amallen1
    Submitted almost 4 years ago

    Job Listings App built w/ React

    1
    not-a-patch•200
    @notapatch
    Posted almost 4 years ago

    I've only written 3 ReactJS applications, including this one. I'm quite the newbie, but I could read your code and understand it completely. Very educational, thanks.

    Marked as helpful
  • Rahul Chandankeri•20
    @Rahulchandankeri
    Submitted almost 4 years ago

    Tip calculator app

    1
    not-a-patch•200
    @notapatch
    Posted almost 4 years ago

    Looks really good. The code looks neat. I have the following issues:

    • The tip percentage doesn't toggle. So when you click on it the button should change color and stay that color. Otherwise, you don't know what percentage you chose when it does the calculation.

    • I don't think it should calculate the tip without you clicking tip. Currently, it does but leaves it as 0.

    • The buttons on the mobile layout should have two columns, not three.

    Good luck and keep going!

  • not-a-patch•200
    @notapatch
    Submitted almost 4 years ago

    Job Listings - ReactJS Tailwindcss JS Array Methods

    2
    not-a-patch•200
    @notapatch
    Posted almost 4 years ago

    Well that's brilliant @AlexKMarshall

    I've fixed with max-width - I was missing a wrapper around the job list.

    Conditional logic - It's much nicer to have the logic spread over fewer lines - think that's called more cohesion?? Anyway, improvement.

    Div soup. I made a change for the list. Hopefully that's better? If that's right I'll look through the rest of the app.

      <div className="lg:flex-1 lg:justify-end bg-white flex items-center rounded">
            <ul className="mt-5 flex flex-wrap content-start gap-4">
              {jobFilterList.map(filter =>
                <li key={filter} >
                  <button
                    className="p-2 self-center text-sm font-bold text-primary-200 hover:text-white bg-neutral-400 hover:bg-primary-200 rounded"
                    onClick={() => handleAddFilter(filter)}
                  >
                    {filter}
                  </button>
                </li>
              )}
            </ul>
          </div>
    

    The H3, I mistakenly thought you should only have 1 H1. That isn't the case. I've updated the H3 to H1.

    Anyway, I've put acknowledgement for your code review in my README.me. Thanks, again!

  • May Sapal Thant•10
    @MaySapalThant
    Submitted almost 4 years ago

    I'm just beginner and I just use table element for positioning.

    1
    not-a-patch•200
    @notapatch
    Posted almost 4 years ago

    You've done the hardest bit, version one. But you can make some improvements. With new programmers the most obvious issues you see is a lack of consistency in how they write. Inconsistent code is harder to read. For example:

    Bad - inconsistent, hard to read

         body{
            font-size: 20px;
        }
    
        .card {
            width: 450px;
            height: 680px;
        }
    
        .hearder-pic{
            width: 450px;
        }
    

    Good - consistent, easier to read

       body {
            font-size: 20px;
        }
    
        .card {
            width: 450px;
            height: 680px;
        }
    
        .hearder-pic {
            width: 450px;
        }
    

    You might want to see if you can get a linter to solve these problems. But fixing them by hand for a while is helpful, as learning consistency is a good habit.

    “I'm not a great programmer; I'm just a good programmer with great habits.”

    ― Kent Beck


    Regarding the work. You should try to solve CSS problems like this with Flexbox and flex grid instead of table. Save table for actual rows of data and keep Flexbox and CSS Grid for everything else. The reason is that Flexbox and CSS grid allow you to solve responsive problems easily. Look at this problem, changing between mobile and desktop is literally one line of CSS.

    • It is also worth fixing the 2 HTML issues and the 7 accessibility issues.
    • Consider getting a spell checker in the code, it might have picked up "hearder" which should be header.

    If there's anything you don't understand, I'm happy to write it again.

    Well done and keep going!

View more comments

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

Beta Member

This badge is a shoutout to the early members of our community. They've been around since the early days, putting up with (and reporting!) bugs and adjusting to big UX overhauls!

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