Note: This document is a work in progress. You can help improve it.


GitHub has a great mascot called OctoCat. OctoCat even has its own gallery of variations, created by GitHub itself and fans, called Octodex.

Unfortunately, the Octodex is not responsive*! Today, your task is to recreate the layout of The Octodex as closely as possible, but make it responsive. You can use all the tools you have at your disposal to get the job done. Use your browser's Developer Tools to inspect their site to find the exact font sizes and padding amounts.

* Well, actually it uses javascript to set the number of columns on page load, but we want to see interactive responsiveness when we resize our window!


  • Build on your knowledge of HTML & CSS
  • Implement, from scratch, a given design
  • Understand HTML/CSS Layout
  • Be able to place elements on a page where you want them.
  • Use flexbox techniques layout pages.


  • You should strive to implement the design as close as possible, though, especially if you've never touch HTML or CSS before, this can be extraordinarily difficult and will take a lot of practice and mileage.

  • Note: You should complete at least the tasks given for explorer mode as listed below before turning in the assignment, as well as before attempting adventure or epic modes.

Explorer Mode

  • Recreate the page as closely as you possibly can. Use the same fonts, sizes, and colors. Download some of your favorites
  • Use some Octocat images to use in your page (12-16 or so). Your layout should be flexible but doesn't need to perfectly responsive.
  • Use flexbox styles to layout the header and the Octocats (hint: check out the flex-wrap property).

TIP Reminder to breakdown the layout into smaller chunks that are easier to style

Adventure Mode

  • If you're feeling adventurous, use CSS media queries to resize the Octocat containers to look great as a single full-width column on small screens and a nice grid on bigger screens.
  • watch this video to work more with media queries

Epic Mode

  • Go back to your hobby website and update site to be mobile friendly and responsive.

Additional Resources