Implement social buttons for GitLab
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Description
As we are attracting more opensource projects to the platform, I see them strugling to promote their new repositories location. We could help by providing "social buttons" similar to the ones available for GH: https://ghbtns.com/
Proposal
This should be part of the product and not as a separate service.
There is a lot of room for discussion on what could be relevant (same features?). I think we should have at least a "widget" like with Repo logo + description + clone instructions, like the one we have in Project's main page:
This should be a game changer as projects could just include the iframe snippet in their documentation page and people can start contributing.
I also see the benefits of the "Star" button or similar, and perhaps a "Fork me on GitLab" kinda of badge for the top of the page :-)
Links / references
Documentation blurb
Overview
This should be implemented as both the "widget" functionality and a discovery feature for project collaborators where they could get the snippet from the UI rather than crafting URLs following a guide from docs.
This is partially related to the effort here: https://gitlab.com/gitlab-org/gitlab-ce/issues/8938 although not exclusive to "big opensource projects" as "any project" can benefit from this.
We may also consider oEmbed as well, so people could refer to a project in a blog post and if they have oEmbed support enabled and GitLab on the whitelist, it would retrieve a widget by default, etc.
Use cases
-
Open source project wants to promote their repository from main website. They go to project
Settings > Widgets (?)and get a snippet for the repository clone widget. -
Projects / Libraries catalog website wants to list amount of Stars and Forks a project has, in order to provide some insights of how big the project is and the health of contributions it is receiving, etc, so they craft the iframe URLs using the
namespace/projectas params and insert it into the template of the project details page. (Think about something like rubygems, when you click in a gem from the list, you get to the gem details page. This is the perfect place to add this "social" buttons).
Feature checklist
Make sure these are completed before closing the issue, with a link to the relevant commit.
-
Feature assurance -
Documentation -
Added to features.yml
