React App Assignment
React App Assignment
1. Design the UI based on the provided screenshots, ensuring a clean and user-friendly
interface.
2. Apply CSS styles to the components for proper formatting and alignment.
3. Use the provided highlight colours for each sentiment.
Description:
● reviewer_name: Name of the reviewer.
● content: The main text content of the review.
● raw_content: Unmodified original content of the review.
● date: Date when the review was posted.
● rating_review_score: Numeric rating given by the reviewer.
● out_of: Maximum rating possible (e.g., 10.0).
● source: Information about the source of the review.
○ name: Name of the source (eg: booking.com).
○ icon: Icon of the source.
● source_language: Language in which the review is written.
● analytics: Array containing sentiment analytics for specific categories.
○ category: Category associated with the analytics.
○ topic: Topic associated with analytics.
○ phrases: Phrases related to analytics.
○ sentences: Extracted sentences related to the analytics.
○ sentiment: Sentiment of the analytics.
○ highlight_indices: Array containing start and end indices for highlighted
sentences.
1. Functionality: Ensure the React app displays reviews, highlights sentences, and shows
tooltips as described.
2. Code Quality: Assess the clarity, organization, and readability of the React components.
3. UI/UX: Evaluate the design and user interface for responsiveness and adherence to the
provided screenshots.
4. Sentiment Analysis: Verify that sentences are correctly highlighted based on sentiment, and
tooltips display the correct topics.
5. Optional Feature (if implemented): Assess the use of the optional `highlight_indices`
property.
This assignment is designed to assess the candidate's ability to integrate data from a file,
implement dynamic UI features, and handle state management in a React application.
### Resources
1. The review text is represented by the "content" property in each review object.
2. The analytics property in each review is an array of objects, each object
contains four properties that you should use namely Topic, Sentiment,
Sentences and Highlight Indices.
3. The "Topic" property should be displayed in the tooltip.
4. The "Sentiment" property (can be positive, negative, mixed or neutral) is
depicted by the highlight color (we have provided the colors to use for
each sentiment).
5. The "Sentences" property is an array of sentences present in the review text.
All sentences talk about that "Topic". Each sentence should be highlighted in the
paragraph with the color assigned to that "Sentiment".
6. Optionally, use the "Highlight Indices" (an array of object) property to highlight
the sentences present in each range. Each object in the array contains three
values, start index, end index and sentiment (it's the same in each object and
is equal to the global "Sentiment" property) respectively. The start and end
indices are the starting and ending position of a sentence in the review text