Description:
The project requires a client-side web application built on JavaScript to display social media activity from a number of platforms in a single map widget for a marketing tool.
Inputs:
The user will be presented with a map widget (OpenStreetMap leaflet so it is cost free) and when they click a location it will get all the social media posts in the immediate area (using APIs) for each platform and display them as icons on the map. For some platforms, setting the radius is possible, but the general area of 2-5km is desirable as a general rule. The social media platforms to target are:
• Twitter (it is possible to get location and GPS coordinate based tweets from this platform via the API)
• Instagram (location based posts)
• Facebook (location based posts for public psots. It is likely that this will only be for very few posts as Facebook is restrictive on location based posts and it will likely only apply to public pages)
• Flikr (API is available for this use)
• Youtube (requires Google API but this is also possible – ref: [login to view URL])
The user must be able to set the radius (relative for Twitter and Youtube only from my understanding but other platforms can use a reverse geo-code to get the “place” name)
The user must be able to disable/enable different platforms if they only want to target a specific platform
The user must be able to filter by keyword so any posts not containing the keyword are not displayed
The user must be able to enable a monitor button and set an interval where the location they selected will automatically refresh/do a new pull based on the interval
Outputs:
• The social media posts need to display as icons (for each platform) on the map widget for the respective platform
• When a user hovers over an icon, a modal should display (like a tool-tip) with the post information and user
• When a user clicks the icon of a post it should take them to the native platform where the post is present (i.e. via the link to the post)
• For each area that posts are pulled from, they should populate in a rolling/dynamic table next to the map widget as an aggregated list with the post information
o The list needs to be filterable based on each platform
Technical Requirements:
• Built on JavaScript as a client-side application
• Use platform APIs (will need developer to register for APIs during testing and provide instructions for me when payment is complete)
o Use application tokens NOT user login tokens
• Responsive design using Bootstrap 3 so it can easily integrate into an existing application with a copy+paste of the code.
• Must be a single HTML page with attached JavaScript files that can be embedded into an existing web-app
READ THE ATTACHED JOB SPEC FOR A SAMPLE DESIGN CONCEPT
hello, i'm experienced javascript developer and like your project a lot. i can provide you a good result based on react.js for example. or if you have some special requirements about js libs to be used for this task - let me know please. thanks.