You have been tasked with creating a new feature for our events app using Angular 8. The feature will let users view speakers in the app. It will consist of two views, a list view and a details view.
- Clone the repo and create a private repository on Github.
- Fetch the speakers from the api using the endpoint "https://public-api-dev.crowdcomms.com/v1/apps/helloapp/people"
- Display the speakers in a list (only show the details you deem suitable)
- Add a search box to filter the list
- Implement UI for users to star a speaker (ideally, any starred speakers will persist when the browser is refreshed but this is not a requirement for this challenge.)
- When a user clicks a speaker it should navigate to a "details" view
- The details view will display all the information we have about a speaker
Note: We have included a http interceptor to authorise any requests.
You will need to add me(dandouglas) as a collaborator to the repo once you have finished.
The app must:
- Be presentable
- Be optimised for performance
- Display some basic knowledge of the main Angular concepts and best practices
You should also commit regularly and follow the Angular guidelines for commit messages. Example commit message: "fix(people list): people not showing"
It would be nice if the code was tested but this is not a requirement.
Good luck!
4 hours
Run ng serve
for a dev server. Navigate to http://localhost:4200/
. The app will automatically reload if you change any of the source files.
Run ng generate component component-name
to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module
.
Run ng build
to build the project. The build artifacts will be stored in the dist/
directory. Use the --prod
flag for a production build.
Run ng test
to execute the unit tests via Karma.
Run ng e2e
to execute the end-to-end tests via Protractor.
To get more help on the Angular CLI use ng help
or go check out the Angular CLI README.