Welcome to the Corelab Challenge! Here you'll show us how awesome you are at coding. In order to do that, we've prepared two repositories which you will fork and program.
You will create a web app which will consume an API to manage the CRUD of vehicles.
The frontend repository is this: https://github.com/corelabbr/corelab-web-challenge
If you feel more comfortable, you can pick another React framework and show us your skills.
The backend repository is this: https://github.com/corelabbr/corelab-api-challenge
If you feel more comfortable, you can pick another Node JS framework and show us your skills.
Try to show us all the skills you have, the more you do and care about the code, the more we get impressed. That's your CHANCE.
The Mobile Layout can be found here: https://shorturl.ae/NTyff
The Desktop Layout can be found here: https://shorturl.ae/xEIEo
Repository:
- Node: ^16.15.0
- NPM: ^8.5.5
- Framework: Adonis TS or any other node framework you know.
- Database: Choose your own, you can even save in memory.
Repository:
- Node: ^16.15.0
- NPM: ^8.5.5
- Framework: React TS
- Sass or other preprocessor
- On clicking on an "Add new vehicle" button, a new form opens up to create a vehicle.
- On submitting the form, it needs to save the new vehicle.
- On typing at the search input, it should filter the vehicles comparing to any of the vehicles property. E.g.: it should compare the searched term to either name, or description, or price, or any other field in the vehicle.
- On clicking on a heart icon, it should favorite the vehicle.
- On clicking on an edit icon, it should open the form again to update the selected vehicle.
- On clicking on an delete icon, it should remove the vehicle.
- On clicking on the filter icon, it should open the filters form, and when the filters are selected, it should filter the vehicles based on those values.
- Code Quality
- Code Format
- Code Perfomance
- Frontend Design
- If your code is Easily Readable
- Mobile First approach
- Code Responsability
- Features Work
- Responsiveness
If you feel comfortable and want to impress us even more, you can do the following:
- Work on correct types and interfaces
- Work on eslint rules
- Work prettier config
- Work on docker containers
- Work on tests
- Work on CI/CD
Create a file PULL_REQUEST.md where you will describe what you did and how in as much detail as possible. Feel free to add videos for better explanation.
Create a new pull request using the same branch name for Backend and Frontend
Send us the pull requests and that's all!