Skip to content

Commit 9cec71f

Browse files
committed
Switch to using Photon instead of Foursquare
- Foursquare is no longer free to use :(
1 parent c381d94 commit 9cec71f

2 files changed

Lines changed: 486 additions & 232 deletions

File tree

README.md

Lines changed: 16 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,37 @@
11
# Ravelin Front-End Code Test
2-
Build a simple interface to search for venues in London using the Foursquare API.
2+
3+
Build a simple interface to search for museums using the Photon API.
34

45
## User Story
5-
A user visits a website with two text fields:
66

7-
- Authentication Key (an API key for the Foursquare API)
8-
- Venue Name
7+
A user visits a website with an input field.
98

10-
After entering an authentication key and venue name, the user is presented with a list of venues to choose from. Clicking on a venue in the list should display details about the venue, such as the venue's address or category.
9+
After entering a search term, the user is presented with a list of museums to choose from. Clicking a museum in the list should select it and display the museum's full address.
1110

12-
The website should cache search results for five minutes. When the user searches for a venue name that has been previously queried within the last five minutes, the page should display cached results rather than performing a new request to the Foursquare API.
11+
The website should cache search results for five minutes. When the user enters a search term that was previously queried within the last five minutes, the page should display the cached results rather than performing a new request to the Photon API.
1312

1413
## Requirements
14+
1515
- App must work as described in the User Story.
1616
- Showcase your CSS chops. Try and do some amount of original CSS styling.
1717
- Include a README alongside your code test detailing how to run it.
1818

1919
This repo includes a basic scaffold using [vite](https://vitejs.dev/guide/) which you are welcome use as a starting point — just run `npm install` and then `npm run dev` to get started. However, if you'd prefer to use something else, feel free to use any library or framework of choice.
2020

21-
Follow the directions from the recruiter on how to submit the exercise. Please do not publish your code publicly on GitHub or any other site. :warning:
22-
2321
## Nice to haves
22+
2423
- TypeScript Support
2524
- Unit Tests
2625

27-
## Resources
26+
## Submission
27+
28+
- Please do not add your name, username, email address, or any other identifiable information into your code or README. We anonymise submissions prior to code review.
29+
- Do not use public source control (e.g. a public GitHub repository) or publish your solution online.
30+
- Follow the directions from the recruiter on how to submit the exercise.
2831

29-
#### Obtaining Foursquare Credentials
30-
To get access to the Foursquare API you need to create a developer account. Follow the steps in the [Foursquare docs](https://location.foursquare.com/developer/reference/places-api-overview) to:
31-
- Sign up
32-
- Create a new project
33-
- Generate an API key
32+
## Resources
3433

35-
#### Authentication
36-
To authenticate a request to the Foursquare API, the authenication key should be passed in the `Authorization` header. See the [authentication docs](https://location.foursquare.com/developer/reference/authentication).
34+
[Photon](https://photon.komoot.io/) is a free, open source geocoder using OpenStreetMap data. You are welcome to use the demo server for your project as long as the number of requests stay in a reasonable limit.
3735

38-
#### Foursquare Nearby Places Endpoint
39-
- [Foursquare docs](https://location.foursquare.com/developer/reference/places-nearby)
40-
- https://api.foursquare.com/v3/places/nearby?ll=51.509223%2C-0.113492&query={venueName}
36+
- [Photon API docs](https://github.com/komoot/photon/blob/master/docs/api-v1.md)
37+
- Example request: https://photon.komoot.io/api/?q=art&osm_tag=tourism:museum

0 commit comments

Comments
 (0)