A simple app to manage passenger's contacts
This repository contains my submission for the interview task assignment.
You can access the live demo of this project here.
- React.js 18
- Zustand
- Tailwind CSS
- Daisyui
- Cypress
- React Table
- React Query
- Axios
To run this project locally, follow these steps:
-
Installation: Clone this repository.
git clone https://github.com/SimaAmini/passenger-contacts
-
Install Dependencies: Navigate to the project directory and install the necessary packages.
npm install
-
Run the Application: Start the development server.
npm run start
├── cypress
│
├── public
│ └── index.html
│
├── src
│ │
│ ├── _mappers
│ │ ├── map-contact-to-model.js
│ │ └── map-contacts-to-model.js
│ │
│ ├── _services
│ │ ├── get-contact.js
│ │ └── get-contacts.js
│ │
│ ├── assets
│ │ └── svg-icons
│ │ └── ...
│ │
│ ├── components
│ │ ├── search-box
│ │ ├── table
│ │ └── header
│ │
│ ├── contact-detail
│ │ ├── conatct-detail.jsx
│ │ └── use-contact-detail.js
│ │
│ ├── contacts
│ │ ├── components
│ │ ├── columns.js
│ │ │ ├── contact-card.jsx
│ │ │ └── frequently-contacts.jsx
│ │ ├── conatct-list.jsx
│ │ └── use-contact-list.js
│ │
│ ├── core
│ │ ├── axios.js
│ │ ├── request.js
│ │ └── use-query.js
│ │
│ ├── pages
│ │ ├── detail.jsx
│ │ ├── error.jsx
│ │ ├── home.jsx
│ │ └── not-found.jsx
│ │
│ ├── store
│ │ ├── conatct-store.js
│ │ └── freq-store.js
│ │
│ ├── utils
│ │
│ └── ...
└── ...
To run the e2e tests run this command:
npm run cy:run