Use the Twitter API to make an @Trizic page

We at Trizic are interested in making a front-end with standards-compliant, asyncronous, api-driven, beautious javascript. Your task is to do just that with Twitter's REST API .

Please complete any number of the steps below within 5 days of us sending you this document. You may put in as many hours as you wish, but we recommend a maximum of around 5 hours. Use any framework and languages you would like (React & EcmaScript 2015 encouraged) to complete the task. Update your forked repository with your solution and any steps needed to run it.

We are looking for code quality, knowledge of cross-browser compatibility, quick load times, and innovation/thoughtfulness.

Part I: Get it

Fork this repository.

Use the Twitter API to fill the following areas on the page:

  • The 30 most recent tweets from @Trizic
  • The 30 most recent tweets from @laughingsquid.
  • The 30 most recent tweets from @techcrunch.

(Check out the User Timeline API)

Each tweet should include at minimum:

  • The tweet content
  • A well-formatted created_at date
  • A link to the tweet.
  • For retweets and mentions, the username should be included.

Bonuses/for fun: Make the columns flexible for screen width so the columns fill 100% of the page width. Layout could be as small as 320px wide. Column arrangment is open-ended.

Part II: Meta

Make an "edit layout" view that has a form to change the layout settings.

Use HTML5 LocalStorage to store and load the layout settings.

Configurable settings could possibly include:

  • The order of the columns.
  • The time range of the tweets shown.
  • The number of tweets shown in each column.
  • The overall palette/skin of the page.

The "edit layout" panel can appear either on the same page as the tweets page, on its own page, or embedded within the tweets layout - whichever you would like. There should be a straightforward way to toggle between edit and view modes, and it should be clear to the user which mode they are currently in.

Bonuses/for fun: Implement any configurable settings you are inspired by or would find useful for a page to view tweets. If appropriate for that setting, use an interaction (like drag and drop) instead of a form field.