Skip to content

A series of code challenges to build front-end development understanding.

Notifications You must be signed in to change notification settings

jsavella/frontend-code-challenge

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Front-end Code Challenge

Front-end developers need to continually look for opportunities to grow stronger and learn to code better. These challenges are designed to test and build your abilities as a front-end developer starting from build systems to complex animation effects and beyond.

History

A challenge that all front-end developers face is finding the opportunity to learn new development practices and develop on a new platform than their current job allows. While sitting in my home office one day I tried to find a good way to build the skills of my own team through collaboration, code consistency, and overall to teach them how to code better each day by looking for opportunities to grow by finding ways to optimize their own workflows. When I started writing the first few code challenges it became clear that this should be a project that continually grows.

About the Challenge

Each week I will release a new code challenge for a full 52-weeks with the intent of growing a particular front-end skill along the way. The added benefit of using Github for this is that it will help you understand the basics of Git through the use of forks, syncing upstream remotes, and so on. While using Git via Terminal is not a requirement it is recommended and will help any front-end developer better understand the benefits and basics of version control.

You will notice that the first challenge is labeled challenge-0 and this is because the first challenge is to create a build system using Gulp, Grunt, or Node directly which will be used for all the other challenges.

Each challenge is designed to test and learn a different aspect of front-end development in on open-source collaborative environment. Take some time each week and complete one challenge, which can be completed individually or as a team to help increase the collaborative environment at your work and promote a stronger development community.

As you progress through each challenge some areas will challenge you to expand your existing knowledge of development and hopefully help you become a better developer. For my own team we are taking the opportunity to code each challenge separately, then coming together as a team to see how each one of us approached the challenge to help us all learn from each other. No one person has the best and only solution, but together we can be better developers.

Basic Requirements

There are a few requirements for every challenge or constraints aimed to break you out of your comfort zones.

  1. All code must be written in vanilla Sass (SCSS) and JavaScript. Please DO NOT use any code libraries for the challenges.
  2. You can use any build system you currently use or you can use a different build system for each challenge. Got a try the all!
  3. Have fun and learn!

Note: To take the challenge simply fork the repo and start coding. Please do not submit any completed code challenges via a pull request. The point of the challenges is to help you be a better developer and you or your team will be the judge of a success for each challenge.

Challenges

Upcoming Challenges

  • Challenge 2 - Typography
  • Challenge 3 - Colors
  • Challenge 4 - Sized Banners
  • Challenge 5 - Header
  • Challenge 6 - Navigation
  • Challenge 7 - Partials
  • Challenge 8 - Summary Card

Contribute to the Challenges

If you have an idea or an area you would like to see covered in an upcoming challenge, please fork the repo and put in a pull request with your challenge. Each challenge will be evaluated based on the following criteria:

  1. Provide a design composition of what the end result will look like. (No copyrighted material please.)
  2. A brief explanation of the challenge and a description of any interactions (ex. rollovers, transitions, animations, etc.).
  • For interactions, we recommend that an animated GIF be provided showing the interaction to help the challenger know what to build.
  1. Other requirements needed to meet the challenge outside of the base requirements, such as, specific JavaScript coding methods, use a Sass @for loop, etc.
  2. A challenge must not be reliant on any code libraries and should be able to be completed using vanilla Sass and JavaScript.
  3. A challenge is meant to teach and be fun, please do not submit a real work problem that you need to see solved since no completed code will be merged back to this repo.

Issues

If there is a challenge that is unclear or contains errors please create an issue and we will get it resolved.

About

A series of code challenges to build front-end development understanding.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CSS 100.0%