Skip to content

Commit 1e90ba0

Browse files
committed
docs: coding challenge instructions
1 parent dd571b9 commit 1e90ba0

File tree

3 files changed

+106
-2
lines changed

3 files changed

+106
-2
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
.DS_store

README.md

Lines changed: 105 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,105 @@
1-
# aerolab-frontend-challenge
2-
Frontend Challenge
1+
![Aerolab's Frontend Developer coding challenge](assets)
2+
# Aerolab Frontend Developer coding challenge
3+
4+
The challenge is to build a catalog view for a loyalty program app. We’ll provide you with the base UI and API, you can use it as provided or you can make any improvements you deem fit. It’s up to you, your imagination and your skills to come up with new solutions and/or interactions between the components.
5+
6+
Remember that the product’s main goal is to help users redeem items through a points-based system. We expect your end-product to be both visually attractive and functionally effective.
7+
8+
* [Acceptance Criteria](#Acceptance-Criteria)
9+
* [Tech Stack](#Tech-Stack)
10+
* [Design resources](#Design-resources)
11+
* [API Documentation](#API-Documentation)
12+
* [Delivery](#Delivery)
13+
* [Aerolab career opportunities](#Aerolab-careers-opportunities)
14+
15+
## Acceptance Criteria
16+
17+
Users have an undetermined amount of points accumulated, and each product is worth a set amount of points. We’ll test the product you submit, along with the code it is written in, and any additional interactions or layers you’d like to add.
18+
19+
We want to see how your code’s UI interacts with different states and user interactions, so your product should comply with the following guidelines
20+
21+
(Keep in mind that the jury will also take into account the quality of the submitted code. Simply meeting this criteria doesn’t mean your solution will be the best)
22+
23+
Feel free to reach one of the following levels of quality based on your skills. Show us what you can do and what you are an expert at! 💪
24+
25+
### Level 1 - It works! ⚙️
26+
27+
- Make a desktop version
28+
- Each product should have a visible price in points.
29+
- Link to the project GitHub repository (footer)
30+
- The user should be able to sort products by price, from highest to lowest, and vice-versa.
31+
- The user should be able to see how many points they have in their account.
32+
- There should be a clear way for the user to distinguish those products that they can redeem from those they cannot.
33+
- A “Redeem” button should be available for those products that the user has enough points to claim.
34+
- A “Redeem now” option should appear when the user interacts with a product that they have enough points to claim.
35+
- When the user doesn’t have enough points for a product, they should be able to see how many more points they need to claim it.
36+
- The user should not be able to redeem a product for which they don’t have enough points.
37+
- When the user clicks on the Redeem now button, the system should automatically deduct the item’s price from the users’ points.
38+
- The user should be able add points to their account
39+
40+
41+
### Level 2 - Eye Candy 💅
42+
43+
- *All of above*
44+
- Make a mobile responsive version
45+
- Make the Hero/Header section with the big scroll button
46+
- Make the "Browse, Choose, Enjoy" section
47+
- Put all your effort into making the site look beautiful
48+
- Pay attention to details and the design system we provide you
49+
- The user should be able to filter products by category
50+
- The user should be able to use the pagination to view more listed products
51+
52+
### Level 3 - Mind-blowing 🤯
53+
54+
- *All of above*
55+
- Make a tablet responsive version
56+
- Make some visual tweaks (animations, micro interactions, etc)
57+
- Put all your effort on website performance (images, web vitals, network optimization, etc)
58+
- Be careful about SEO (metadata, markup semantics, SSR, etc.)
59+
- Be careful about Accesibility (keyboard navigation, narrator, markup semantics, etc.)
60+
- Be careful about environment variables security
61+
- If you want you can make some unit or integration tests
62+
63+
## Tech Stack
64+
65+
We recommend that you use the following technologies, which are aligned with the daily work we do at Aerolab 🪁 and which in this case we believe are also adequate to solve the challenge.
66+
67+
### We recommend
68+
69+
- [**NextJS**](https://nextjs.org/) (SSR framework)
70+
- [**Styled Components**](https://styled-components.com/) (CSS)
71+
- [**Vercel**](https://vercel.com/) (deploy)
72+
73+
### Optionally
74+
75+
- *Typescript (data types)*
76+
- *Jest + React Testing Library (testing)*
77+
78+
> 😎 You can use any additional library you need to carry out the challenge.
79+
80+
> 👍 BTW, we can be flexible if you feel comfortable with any other technology or if you want to combine them in different ways. You can use other stack like *CRA, VueJS, NuxtJS, Remix, Svelte, Angular, React Native, Flutter, Heroku, Digital Ocean, Stitches CSS, Styled JSX,* etc...
81+
82+
## Design resources
83+
84+
We've crafted a beautiful design for this coding challenge. We provide your a Figma access to all of resources like, views, design systems, responsive adaptations, typography, styles, and more.
85+
86+
- [See the beautiful design](https://www.figma.com/file/3O7BxHFnSSawJeny3lXWkE)
87+
88+
## API Documentation
89+
- [Claim your API token](https://aerolab.co/coding-challenge) and have access to endpoints
90+
- Read our [API Documentation](https://aerolabchallenge.docs.apiary.io/)
91+
92+
## Delivery
93+
94+
This needs to ship. You should upload the project to a public link (we recommend [Vercel](https://vercel.com/)). You should also upload it to Github so we can review the code.
95+
96+
In case you need a hand in getting your site to go live, we recommend you read the [Vercel Docs](https://vercel.com/docs/concepts/deployments/overview) to help you out.
97+
98+
🚀 Once your code is ready send the public link and repository link via email to whoever sent it to you from Aerolab, or you can apply at https://aerolab.co/jobs if you got here some other way.
99+
100+
## Aerolab careers opportunities
101+
102+
Are your looking for a remote developer job? We are open to work! We have positions for Frontend and Fullstack developers but also there are positions for Product Designers, Project Managers and more! Feel free to apply at https://aerolab.co/jobs
103+
104+
105+
Loading

0 commit comments

Comments
 (0)