The system has to support a set of Social Media features. Especially, it is expected to support sending information about new posts to Facebook, Twitter, Google+, and other prominent social media websites.
We want to look into a way to allow the user to send (or not) a page to a given social media website. One way to do so is to link a page with a social media tag such as "Facebook" and "Twitter". If link to such, then it should be posted on that social media site. This can be done in such a way that the new tweet happens at a given time in the day (or multiple times over a given period, for example, you could have your tweets sent immediately and then again the next day at 10am. On Facebook you could ask the system to post a comment about your new article immediately on your personal account, and the next day at 12 noon in your business page.)
The concept of using tags is very similar to having a set of settings and select those settings on a per page basis.
Different systems allow for different type of content and that generates a certain number of limitations. For example, Facebook expects a fairly small icon and will generally not accept large images. On the other hand, Pinterest expects very large images. Similarly, Twitter only accepts messages of 140 characters, including your link. Often, using the first 100 or so characters of your post is not going to be very exciting as a tweet.
This makes it very difficult for the owner of a site to offer the proper everything for all the social media websites he has an account with. The idea is to create features on our websites that allow users to easily be told what to do to make sure that everything works as expected. For example, you want to allow the user to upload a large image on their page and that will be shared on Pinterest. For Facebook, the system can automatically create a small version of that image and signal its URL using the og:image meta tag. For twitter, we can make use of the teaser of that page which the system can check to make sure it will fit on Twitter before it is sent there.
In order for a person to create their account on our website, it is possible to ask them to give us their user name on various social media websites. From all the information we can load from these websites, we can then present it as part of the account of a Snap! website (with the authorization of the user.)
To make it easy we want to offer any number of icons to link to pages such as a business Facebook page or a LinkedIn account.
This is simply a set of icons and an easy way for users to specify their account (i.e. either by pasting their full URL or entering their account name.)
Many (if not most) social media websites offer widgets to post on your website. Those generally show your current status on their website and allows your website visitors to connect with you and like your pages, posts, and comments.