cowrywise-test

Description:

This test aims at checking the following in your implementation:

  • Attention to detail in implementing mockups and interfaces.
  • Proficiency with the Vue component lifecycle.
  • Handling API calls and responses using an API client, axios etc.
  • Using new CSS paradigms like grid, css variables.
  • Responsive design thinking.
  • Writing clean component-based "non-hacky" SCSS.
  • Understanding of CSS animations and transitions.

Instructions and Mockups:

Using the Unsplash API, you're to create a mini unsplash clone using the mockups and design below as a guide..

  • The design uses a staggered grid to present photos from the API, note the first row containing the photos overlap the backdrop behind the search bar. The design uses a staggered grid to present photos from the API, note the first row containing the photos overlap the backdrop behind the search bar. .

  • The names of the author and photo location should be fetched from the API.

  • Use a tint overlay on top of the images to give the text good contrast, should an image have a light background.

  • Implement loading placeholders to provide feedback to users while fetching data from the API.

  • On clicking an image, show a modal of the image in the best resolution that doesn't take too long to download.

Click here for the link to the test's page.

Added Features and Functionalities:

  • Storybook for Vue: for component documentation.
  • Back to top button.
  • Empty input error modal.
  • Custom 404 photo search not found.


Build Setup

# install dependencies
$ npm install

# serve with hot reload at localhost:3000
$ npm run dev

# build for production and launch server
$ npm run build
$ npm run start

# generate static project
$ npm run generate

For detailed explanation on how things work, check out Nuxt.js docs.