The project is built using Angular Cli and is running Angular version 4 using Typescript as programming language, Karma for unit testing and Protractor for e2e testing.
The project is organized using a feature oriented approach and the folder containing the attendee features can be found under the path src/app/atteendee. The attendees list is built using an angular component with infinite scroll.
The styling and responsiveness relies on bootstrap.
The attendee folder contains the following:
attendee.ts
- the representation of the attendee dataattendee.service.ts
- the service responsible to comunicate with the attendee api- inside the
list
folder is located the attendee-list component:attendee-list.component.html
- the html structure for the componentattendee-list.component.ts
- the logic for the componentattendee-list.component.scss
- the scss file for component specific stylesattendee-list.resolver.ts
- used before the component is loaded to fetch the data from the api
Run the following commands from the console:
npm install -g @angular/cli
git clone https://github.com/nbrites/attendees.git
Point your console path to the cloned respository root folder and run the following commands:
- Run
npm install
- Run
ng serve
for a dev server.
Navigate to http://localhost:4200/
Run ng test
to execute the unit tests via Karma.
Run ng e2e
to execute the end-to-end tests via Protractor.
- ngx-bootstrap - for styling
- ngx-infinite-scroll - for infinite scrolling
- lodash - Javascript utility library