BandAid is an app that allows artists and music venues, large and small, to connect with one another through a smooth booking process. Rather than relying on personal and professional networks, BandAid expands the realm of possibilities for artists looking to book a gig and makes it easier for venues to fill their events calendar.
BandAid is an application that utilizes a frontend and a backend application. The frontend Application creates a seamless user interface for artists and venues, implements OAuth for login, and makes API calls to the backend. The backend is responsible for receiving requests from the frontend, submitting requests to the Yelp and Last.fm APIs, and return digestible JSON data for the frontend to consume.
This project requires:
- Ruby 2.7.4
- Rails 5.2.X
To get started, clone the repo in your terminal by entering the following:
git clone git@github.com:BandAid-2205/bandaid-2205-fe.git
Once cloned, run the following commands:
- bundle install
- rails db:create
- rails db:migrate
- Install Figaro
- `bundle exec figaro install`
- Update the `application.yml` file with `ENV` variables storing API keys for [Yelp](https://www.yelp.com/developers/documentation/v3/get_started) and [last.fm](https://www.last.fm/api/show/artist.getInfo) (pages for obtaining API keys linked)
BandAid-2205-FE is deployed remotely on Herkou.
Base URL: https://bandaid-fe.herokuapp.com/
{:id=>"1",
:type=>"artist_poro",
:attributes=>
{:name=>"The Dirty Dozen Brass Band",
:bio=>
"The Dirty Dozen Brass Band are a New Orleans style brass band which plays R&B and Traditional New Orleans music. Band Members include Charles Joseph, Keith Anderson, Roger Lewis, Kevin Harris, Lionel Batiste, Efrem Towns, Kirk Joseph, Jenell Marshall, Revert Andrews, Gregory Davis, and Raymond Weber. Original band formed in 1975.\n\nThe Dirty Dozen Brass Band \n\nCelebrating over 40 years since their founding in 1977, New Orleans-based Dirty Dozen Brass <a href=\"https://www.last.fm/music/The+Dirty+Dozen+Brass+Band\">Read more on Last.fm</a>",
:genres=>["jazz", "New Orleans", "brass", "funk", "blues"],
:image_path=>"https://lastfm.freetls.fastly.net/i/u/174s/2a96cbd8b46e442fc41c2b86b821562f.png"
}
}
get '/api/v1/lastfm/search?query=the%20dirty%20dozen%20brass%20band'
get "/api/v1/artists/<user_id>"
'get '/api/v1/lastfm/search?query=the%20dirty%20dozen%20brass%20band'
{
"data": {
"id": "6",
"type": "venue",
"attributes": {
"name": "Trilly Cheesesteaks",
"location": "3735 Ulloa St, New Orleans, LA 70119",
"phone": "504-582-9057",
"price": "$",
"category": "restaurant",
"rating": 5,
"user_id": 10000,
"bookings": [],
"artists": [],
"venue_artists": []
},
"relationships": {}
},
"included": []
}
/api/v1/yelp/search
Or
get '/api/v1/yelp/search?term=music%20venue&location=New%20Orleans&limit=5'