Alibaba REST Countries API

Design preview for the REST Countries API with color theme switcher coding challenge

Design preview for the REST Countries API with color theme switcher coding challenge

The challenge

Your task is to build a project using the provided design files, integrate with the REST Countries V2 API to pull country data, and display it as demonstrated in the provided designs. You will find both a mobile and desktop version in light and dark mode color schemes for each page. Note that the final implementation doesn't have to be pixel perfect and anything close to the photos will suffice.

Where to find everything

The design files, which are located in the designs section below, are in JPG static format. This will mean that you'll need to use your best judgment for styles such as font-size, padding and margin.

There are no assets for this challenge, as the country flags will be pulled from the REST Countries V2 API and you can use an icon font library for the icons.

There is a style-guide.md file, which contains the information you'll need, such as the color palette and fonts.

You can use any JavaScript framework/library on the front-end such as React or Vue, but we prefer if you use Vue for this project. You also have complete control over which packages you use to do things like make HTTP requests or style your project. Note that a clean project structure is a bonus.

Designs

Mobile

Desktop

You can also download all the design files zipped here.

Your users should be able to

Project bonuses

Deploying your project

There are a number of ways to host your project for free. Please choose one and deploy it somewhere.

Sharing your solution

Please reply to the email you received with a link to a GitHub repository that contains your code. This repository needs a README.md file that explains everything we need to know (including a link to the demo)

Giving feedback

Feedback is always welcome, so if you have any to give on this challenge please email frontend[at]alibaba[dot]ir.

Have fun building! 🚀