RI API

Rhode Island as a Unit of Measurement | Measure any quantity in terms of Rhode Island.

coffee milk Rhode Island Logo coffee milk

API Endpoints

Below is a table describing the functionality provided by each API endpoint when accessed via GET requests.

Endpoint Functionality Example Request
measure/length Converts lengths between different units. /measure/length?from=feet&to=meters&value=10
measure/area Converts areas between different units. /measure/area?area=303&units=sqmi
measure/population Converts areas between different units. /measure/population?population=500000
measure/population-density Converts areas between different units. /measure/population-density?density=300
measure/highest-point Converts areas between different units. /measure/highest-point?height=3000
measure/shoreline Converts areas between different units. /measure/shoreline?shoreline=900
measure/highest-point Converts areas between different units. /measure/area?from=square_km&to=square_mile&value=5
facts/ Provides random facts. /facts?type=science
media/ Provides random image sources. /media
restaurants/ Get one random Rhode Island restaurant. /restaurants
restaurants/all FULL list of Rhode Island restaurants. /restaurants/all
history/ Provides a list of all historical facts about Rhode Island. /history
history/random Provides a random historical fact about Rhode Island. /history/random
people/ Displays random entry of a famous person from Rhode Island. /people/
people/all/ Displays massive list of all famous people from Rhode Island. /people/all/

Endpoint Details

1. measure/length

This endpoint allows users to convert lengths from one unit to another. Supported units include meters, kilometers, feet, and miles. Users must specify from, to, and value parameters in the query.

2. measure/area

This endpoint enables users to convert areas between different measurement units like square meters, square kilometers, acres, and square miles. The from, to, and value parameters need to be provided in the query.

3. /facts

The facts endpoint provides random facts based on the specified type. Possible types include 'science', 'history', and 'math'. The type parameter can be included in the query to specify the category of fact desired.

4. /media

The media endpoint provides WikiMedia photo URLs based on the search term "Rhode Island". Fetching from WikiMedia each time, not hosted locally.

5. /restaurants

This endpoint provides a list of restaurants based in Rhode Island. I will add more structure and queries in the future to allow localization. The list is a json file I had scraped using cheerio/puppeteer function found in this repo. The original list from which I scraped is on visitrhodeisland.com.

6. /history

This endpoint provides a list of historical events critical to Rhode Island history. I largely used the list on this helpful timeline from the Rhode Island Secretary of State website: https://sos.ri.gov/divisions/archives/ri-history/timeline

7. /people

This endpoint provides a list of famous people from Rhode Island. The information contained is largely scraped from the Wikipedia page: https://en.wikipedia.org/wiki/List_of_people_from_Rhode_Island I will add more structure in the future to allow more functionality. The list is a json file I had scraped using cheerio function found in this repo.

Usage

To use these endpoints, make a GET request to the appropriate URL with the necessary query parameters as shown in the examples.

Feedback

If you have any feedback or issues, please open an issue in this repository, and we will address it as soon as possible.

Thank you for using our API!

Functional deployment:

https://radiant-wildwood-30276-73f4e705b27f.herokuapp.com/

Details:

Technologies used:

Room for Improvement:

Installation

Feel free to clone and fork this repo!