https://github.com/onebeyond/front-live-coding-challenge
https://github.com/onebeyond/front-live-coding-challenge
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/onebeyond/front-live-coding-challenge
- Owner: onebeyond
- License: mit
- Created: 2022-03-17T15:48:48.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2023-01-14T16:21:52.000Z (over 2 years ago)
- Last Synced: 2025-02-25T00:56:01.657Z (3 months ago)
- Language: JavaScript
- Size: 995 KB
- Stars: 3
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# DCSL GS Frontend Code Challenge - Phone Catalogue App 📱
## 💭 Context
You are part of a team working on a project for a client who is developing a website with a phone catalogue.
The app already has the following features:
1. Phone catalogue visualisation.
2. Unit tests with __[jest](https://jestjs.io/)__ of the implemented functionalities.
3. Integration tests with __[Cypress](https://www.cypress.io/)__ of the implemented functionalities.## ℹ️ Useful information
### __Essential commands__
- To install the dependencies:
```
npm i
```- To run the application:
```
npm start
```- To execute all the tests:
```
npm test
```- To execute the unitary tests:
```
npm run test:unit
```- To execute the integration tests:
```
npm run test:integration
```### __API Documentation__
https://front-live-coding-api.herokuapp.com/__/docs/api/
### __Team Agreements__
- Communication between the team is fundamental. If anyone is blocked or has any doubts, it is best to ask the rest of your teammates.
- Commits must follow the [Conventional Commits specification](https://www.conventionalcommits.org/en/v1.0.0/).
- To consider the task done:
- The task specified must be implemented.
- Existing tests must pass.
- In case of adding new functionalities, new tests must be added.
- Once the task is completed, a Pull Request from the branch must be created so that it’s reviewed by the rest of the team before merging to the `main` branch.## 🔜 Previous steps to the live coding
1. Clone the repository in your local environment.
2. Use the editor of your choice to visualise the code.
3. Edit the `.env` file and set the `X-User-Id` with your GitHub username.## 💻 Live coding tasks
With your teammates’ help, you must complete the tasks given to the highest possible quality, always following the Team Agreements:
1️⃣ Try to `execute the code locally and verify that it runs correctly`. If not, try to solve any bugs you find until the app works as expected. Try opening the WebConsole of your navigator to have more context. 😉
2️⃣ Run the `unit tests` and verify that they run correctly. Otherwise, try to fix the bugs you find until the tests pass.
3️⃣ Run the `integration tests` and verify that they run correctly. If not, try to solve any bugs you may find until the tests pass.
4️⃣ Add a new `context` (with two properties: `message` and `isError`) to handle the errors in the API calls executed at `PhoneContext` and display them in the `Snackbar` component.
5️⃣ Include the possibility to `remove a phone from the detail view`, as well as the tests that check if the functionality is working correctly.