Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/arsamsarabi/tenerity-react-native-challenge-arsam


https://github.com/arsamsarabi/tenerity-react-native-challenge-arsam

Last synced: about 1 month ago
JSON representation

Awesome Lists containing this project

README

        


The Lounge

# Tenerity Mobile Technical Challenges
\* To start please fork this repository

## Project Structure

### AwesomeProject
In this folder you will find a react native application, where you need to implement your solution for the technical challenge.

### back
This folder contains a mock backend that serves the data needed to complete the technical challenge. This server is built using [JSON Server](https://github.com/typicode/json-server). To run this server, use the command `yarn serve`.
Refer to the [JSON Server](https://github.com/typicode/json-server) documentation on how to query data from the APIs.

## Mobile Technical Challenge

For this challenge, you are working on enhancing our brand new _Loyalty Rewards_ application called **Awesome Deals**! We’d like you to design, build and test new application features explained bellow.

### Home screen slider
We'd like to showcase our offers in a form of a horizontal slider on the landing screen.

#### Requirements:
1. Slider items must enable the user to add the selected offer to their list of _"myOffers"_
2. If an offer has the property `{ "promoted": true }` it should be displayed at the beginning of the slider.

### My Offers screen
This screen must enable the user to view a list of their selected offers.

#### Requirements:
1. Users must be able to remove selected offers from their list of _"myOffers"_
2. Display the total cost of the selected offers

## Notes

* You are free to design the component as you see fit, but bear in mind the user experience.
* We would like to see how you can think through a problem and design a user experience to meet them, how you approach the problem and what technologies you would choose. We expect you to be thinking about design, accessibility, performance, testability, extensibility and maintainability.

## Submission

To submit your work, you should create a **Pull Request** back to this repository.