Acceptance Criteria:
- Given a user, when they access your application, then they should be presented with a search box prompting them for a topic
- Given a user, when they enter a topic, results from Twitter should be returned
- Given a user, when they enter a topic, results from Wikipedia should be returned
- Given a user who's performed a search, when they hit the browser's refresh button, results should be refreshed under the same search criteria.
Technical notes:
This demonstrates the minimal app I would launch within an agile environment as as a first draft. The app makes two API calls: one to Wikipedia and one to Twitter. Each roundtrip takes about 300-700 ms depending on network latency.
With input from users I would propose adding the follwing features:
- Asyncrhonous fetching of additional detail, perhaps even iframes of messages upon hover (I prefer AngularJS for this).
- Separate pagination for each table or perhaps paginating automatically from the REST endpoint when the user scrolls to the bottom of the page
- A geo search to only return messages within a certain radius using a great circle path function