DSGN 270 Assignment 3 - Social Integration Proof-of-Concept

Outcome: Integrate social media content into a website.

In this assignment, you will build a small proof-of-concept social media integration that you can promote to a potential market of clients.

Potential APIs

Instructions

  1. Define a market of potential businesses to sell your product/service to. For example:
    • Bars and restaurants
    • Retail stores
    • Teachers/instructors
    • Other developers (or a product/service you can use yourself)
  2. Define a need for that market that can be solved by displaying their social media content on their own website. For example:
    • Local pub posts their daily specials on Instragram but they don't have time to update their website daily.
    • A carpenter would like to display daily Twitter progress photos of their latest project on their portfolio website.
    • A martial arts instructor would like to display their Youtube video series (on how to properly kick a hole through a wall) on the fight club website.
  3. Select a social media platform with a developer API that you can use to request the required content.
    • Create a test account on that platform in the name of a fake client.
    • Post relevant content to that account that you can request with the developer API.
  4. Using a secure platform of your choice, display this content on a webpage so that it solves your defined problem.
  5. Create user documentation describing to the client how to update their content on the Social Media platform so that it updates on their website.
  6. Create developer documentation outlining the steps taken to set up the API connection in case it needs to be repeated.

Marking Rubric - 50 points

Each of the following criteria will be worth 10 points.

1. Market and Problem definition - 10 points

2. Test account with sample content - 10 points

Choose a social media tool that solves your market problem and User Story.

3. Operational integration with Task Flow - 10 points

Create a public web page that displays social content in a way that supports your User Story.

To be included in the project README. Define instructions as a Task Flow for the potential client to test the integration. For example:

  1. Go to web page and take note of the current content.
    • content can be displayed using an embed strategy offered by the social tool.
  2. Log into social tool (include creds in brightspace comment).
  3. Make a change or add a new post in social tool admin.
  4. Refresh output page to confirm content has changed.

Further notes:

4. Custom Branding using an API endpoint - 10 points

5. Secure API token/key - 10 points


General Requirements


Submitting Your Assignment

In order to receive a grade, you must:

  1. Deploy your integration using a hosting method of your choice (i.e. GH Pages, Heroku, Netlify, etc).
  2. In addition to the requirements of the assignment, include the following in your project README.md:
    • Course title and author name;
    • Any comments that may help squeeze marks out of your instructor (maybe give him hints on where to look for the requirements above);
    • Attributions for any code or assets that are not your own.
  3. Zip your project (excluding node_modules and .env file) and submit them to Brightspace.
  4. Include the following as a comment with your Brightspace submission:
    • Relevant GH repo(s);
    • Live integration link;
    • Link to the social media test account;
    • Login information for the social media test account.

Appendix Example platforms:

1. JAMstack with proxy

2. Nuxt build

3. Node as proxy

  1. Custom API is called from your page to your Node endpoint.
  2. Node requests data from the API on the backend (secure).
  3. Node sends the response data back to the client.