Mock application to find coaches for given areas. The application presents a list of coaches that are set to be for different areas (e.g. frontend development, project management, etc.). You can filter coaches by area, check the details of each caoch, contact a coach, and check the requests sent to the coaches.
The application is based on Vue.js, written in TypeScript, and uses Vuex for state manager. The data is obtained from firebase.
The store of the application uses modules to sectionized the state. The following modules are used:
- coaches: stores the list of coaches
- areas: stores the list of areas
- requests: stores the list of requests
The coaches and areas modules use RxJS to manage the stream of data. This allows more reactivity when fetching the data. The coaches have a favorite property that is found on the local storage. The coaches are fetched after the areas. With this two points in mind, when setting the coaches, we merge the favorite and areas data to the coaches object. The requests module uses a more basic approach and stores the data as a plain object.
Note:
The requests module will start using Observables as well. This will allow to merge the coaches the request was sent to to the stream of data.
- Clone the repository:
git clone https://github.com/darwin-luque/find-coach-app.git
. - Install dependencies:
yarn install
.
- Make sure the backend is running. Check Run the Backend
- Run the application:
yarn serve
- Make the application responisive.
- Add Unit testing.
- Add E2E testing.
Please feel free to create a PR to improve the application or add any suggestion or feature.