Use the Star Wars API to generate a list of the films that a particular character appears in.
Submit an application that accomplishes the objectives below. Hosting is up to you, we only need a link to a working deployment of your project, and a link to your source code. We reccomend js bin and Plunker for free, all-in-one solutions.
Bonus points for SCM with github/gitlab/bitbucket + continuous integration and deployment to a real hosting service such as AWS, Google Cloud, Digital Ocean, or Heroku
- Allow users to choose a character from the provided JSON file
- Upon selection of a character, the UI should update to display information about each of the films that that character appears in. Minimally: Title, and formatted ('Thursday, May 19 2005') release date
- Do this with any js framework, and some kind of component-based pattern
- You can only use the API routes found the provided 'characters.json' file, and the data returned from those calls
- Don't load the movie data until the character is clicked
- Don't show any movie information until all of the character's movies have loaded
- Handle HTTP errors
- Make it pretty! You're encouraged to use Bootstrap, Bulma, Material Components, or any other css framework
Feel free to use any function library you'd like.
If you have feedback about the exercise, please include it.
NOTE: Obi-wan's URL is intentionally incorrect, please do not modify the JSON.
characters.json
{
"characters": [
{
"name": "Luke Skywalker",
"url": "https://swapi.co/api/people/1/"
},
{
"name": "Darth Vader",
"url": "https://swapi.co/api/people/4/"
},
{
"name": "Obi-wan Kenobi",
"url": "https://swapi.co/api/people/unknown/"
},
{
"name": "R2-D2",
"url": "https://swapi.co/api/people/3/"
}
]
}
This project was generated with Angular CLI version 6.2.4.
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.