Skip to content

Latest commit

 

History

History
69 lines (39 loc) · 2.29 KB

README.md

File metadata and controls

69 lines (39 loc) · 2.29 KB

ms-starwars

starwars

The above image was copied from here.

background

What is this?

This is an orchestration of calls to the Star Wars API (SWAPI). The goal is to provide aassociated metadata from SWAPI endpoints with one request.

The SWAPI is a great resource for Star Wars information. SWAPI provides endpoints for Star Wars data specific to:

  • films
  • characters (people)
  • species
  • vehicles
  • starships

This project enables you to make one call to any of these endpoints, and then goes ahead and makes calls to the associated urls for you.

Note that currently all that is returned from calls to the associated urls is the name and id of the value returned

The goal is to have all associated data in one call. Rather than having to walk through the API etc.

routes

This project has the following routes:

  • /films-list

Provides metadata about all the Star Wars films (episodes 1-7).

  • /film/:episode

Provides metadata about a specific Star Wars film. Note provide episode as a parameter.

  • /people/:id

Provides metadata about a specific Star Wars character. Note provide the SWAPI id of the character as a parameter.

  • /planet/:id

Provides metadata about a specific Star Wars planet. Note provide the SWAPI id of the planet as a parameter.

  • /starship/:id

Provides metadata about a specific Star Wars starship. Note provide the SWAPI id of the starship as a parameter.

  • /vehicle/:id

Provides metadata about a specific Star Wars vehicle. Note provide the SWAPI id of the vehicle as a parameter.

  • /species/:id

Provides metadata about a specific Star Wars species. Note provide the SWAPI id of the species as a parameter.

cache

This project uses flat-cache for local caching. A future improvement would be to use redis or memcached as a more robust option.

future improvements

  • PR's welcome!
  • improve testing
  • implement more robust cache mechanism
  • provide better overall docs
  • increase the amount of information returned from the bundled calls (currently only returns the name and id from the SWAPI records)