A series of ReactJS coding challenges with a variety of difficulties. Deep dive into the why here.
Interested in some React fundamentals / philosophies? Check out the react-philosophies GitHub repo.
Β
Sponsored
Time To Estimate. A fun, simple way for agile teams to remotely estimate tasks together. Free, with no sign-up required.
mixmello. Create remixed versions of your favourite Spotify playlists.
Β
The Challenges
Easy π
π Rocket Ship
Unnecessary re-renders, fine grained control.
Β
Medium π
π Dark Mode
State / shared state, DOM manipulation.
π Coinbee 
Data visualisation and graphing. API usage.
Β
Hard π¬
π§ Spootify
Loading state, API usage.
π€ Chatter
Web sockets, events, callbacks & React hooks. Talks to Botty.
Β
Future Challenges 
π shopit
A product page with a shopping cart/checkout experience.
Β
What are the challenges for?
They could be:
- Short coding exercises, for use in interviews with candidates
- Ways for you to test yourself / test your coding abilities under pressure
- Fun exercises to help you learn React
Β
How do they work / how do I get started?
The scaffolding of each challenges / app is done for you and each challenge has create-react-app as its foundation.
- Clone the whole challenges repository
- Run
yarnornpm installin any of the individual challenge directories to install dependencies - Run
yarn startornpm startto start the application on port 3000 (CRA default) - Each challenge has a README with requirements for you to complete
Some challenges might require usage of external APIs, but all information will be provided in the individual challenge readme.
Β
Have you got the solutions?
All the coding challenges have been completed to a high standard. Get an automatic invite to the solutions repository at solutions.alexgurr.com.
Β
Why are the solutions invite only?
People use these challenges for interviews. By putting the solutions behind a collaboration wall / invite-only repository we can discourage candidates from simply looking up the solutions.
Β
Can I search for GitHub users and see if they accessed the solutions?
Yes! We track current / past collaborators, meaning if you want to check if a potential candidate had access / looked at the solutions you can simply search for them. You can do this by clicking the search icon in the top left at solutions.alexgurr.com and searching for them.
Β
Why does it take so long for updates / new challenges?
I work on these challenges & solutions in my spare time, on top of a full time job and everything else that comes in life. Because of this, I don't always get a lot of time to maintain and add new challenges. Interested in becoming a collaborator or submitting your own challenge? Reach out below or submit a new challenge!
Β
Community 
We're on Slack - come and join us!
Β
Thoughts or feedback π¬
Conflicting opinion about a challenge difficulty rating? Need some help or guidance? Got a challenge idea? Get in touch at alexgurr.com.
Β
Contributing π‘
We have an issue template, pull request template and a new challenge template. We encourage you to fill out the right template and open a PR / issue!
What Makes A Good Challenge?
- Clear requirements
- Fun and engaging
- Accurate difficulty level
- Looks good (visually pleasing)
- Realistic -- would someone ever need to build something like this in real life?
- Easy to get started (minimal pre-requisites)



