docker-compose build
docker-compose run --rm backendpl carton install
docker-compose run --rm frontend npm install
docker-compose up
Then, once all the services are up, load conference data (+ geocode and summaries) to the Python backend:
docker-compose exec backendpy python manage.py migrate
docker-compose exec backendpy python manage.py load_data
docker-compose exec backendpy python manage.py geocode
docker-compose exec backendpy python manage.py summarize
Then hit http://localhost.
- not compulsory
- restful
- basic http auth
- https
- cors enabled
http://developers.booking.com/api/technical.json
- autocomplete
- getHotels
- getBookingcomReview{,Score}s
- goetHotel{Facilities,DescriptionPhotos,DescriptionTranslations}
- getRooms
- getHotelAvailabilityV2
- getBlockAvailability
- Availibility: ability to book
- Block: the “booking”, has a price
- Policy: information on cancelation, deposits, particulars
- Occupancy: number of people in a Block
- Mealplan: included meals in Block
- Facility: amenities provided
- Room: static things in a room
- Property: accommodation venue, hotel/apartment, holiday home, etc
- As a traveller, I want to share my itinerary to my followers so they can experience my journey!
- As someone who would like to travel to a specific place but have no idea what attractions are there, I want to have something suggest places depending on my state (e.g. Facebook feed) so I can best enjoy my travel!
- As someone who has photos of places I want to travel, I’d like to have something suggest to me based on these places
- As someone who would ask about travel, I’d like to have a search box to put my question in so I can get answers!
- As someone attending conferences, I’d like to have suggestions for booking + attractions along with my conference registration
- frontend: AngularJS
- backend: Django
- emit a list of conferences
GET /conferences/
#+RESULTS: [ { "id": 1, "name": "Accessibility Camp Bay Area 2016", "url": "http://www.accessibilitycampbay.org/", "start_date": "2016-10-29", "end_date": "2016-10-29", "cfp_date": null, "city": "San Francisco", "state": "California", "country": "USA", "topics": "accessibility, a11y", "languages": "English", "code_of_conduct": "", "twitter": "A11yCampBay", "facebook": "", "accessibility": "", "diversity_tickets": null, "youtube": "" }, { "id": 2, "name": "Accessibility Camp DC 2014", "url": "http://www.accessibilitycampdc.org/", "start_date": "2014-10-11", "end_date": "2014-10-11", "cfp_date": null, "city": "Washington", "state": "DC", "country": "USA", "topics": "accessibility, a11y", "languages": "English", "code_of_conduct": "", "twitter": "", "facebook": "", "accessibility": "", "diversity_tickets": null, "youtube": "" }, ... ]
- emit details of conference specified by its
id
GET /conferences/1/
#+RESULTS: { "id": 1, "name": "Accessibility Camp Bay Area 2016", "url": "http://www.accessibilitycampbay.org/", "start_date": "2016-10-29", "end_date": "2016-10-29", "cfp_date": null, "city": "San Francisco", "state": "California", "country": "USA", "topics": "accessibility, a11y", "languages": "English", "code_of_conduct": "", "twitter": "A11yCampBay", "facebook": "", "accessibility": "", "diversity_tickets": null, "youtube": "" }
- emits a list of hotels near the conference venue (default 15km)
GET /conferences/:id/hotels/