Home

Awesome

vue-share-buttons

Vue component for placing buttons in your project using which you can share anything. If vue-share-buttons doesn't have a social network for you, just make a Pull request or create new issue for me

Menu

Installation

Install using npm

npm i vue-share-buttons

Link to NPM

Install using Yarn

yarn add vue-share-buttons

Link to Yarn

Icons

For icons, I use simpleicons

Usage

You need to import each social button separately. For example, you want to use the share button on Twitter. To do this you need:

Import component

import TwitterButton from "vue-share-buttons/src/components/TwitterButton";

const app = new Vue({
  el: "#app",
  components: {
    TwitterButton,
  },
});

Add the button to your template

<div id="app">
  <twitter-button
    url="https://github.com/"
    description="GitHub is where people build software."
  />
</div>

And we get the button

<img width="118" alt="vue-share-buttons-twitter" src="https://user-images.githubusercontent.com/14329906/55573133-50549f00-571a-11e9-9dcb-6aa14e9a04e8.png">

Options

Below are the options you can pass to create your own button.

Buttons with a counter

Facebook, LinkedIn

OptionType'sDefaultDescription
urlStringdocument.location.hrefURL-address you want to share
btnTextStringFacebook, LinkedIn, etc.Text to be written on your button
hasIconBooleantruePresence of social network icon in the button
isBlankBooleantrueOpen the "share on social networks" frame in a new window
modalWidthNumber500If the property "isBlank" is set to false, you can set the width of the modal window the "share on social networks"
modalHeightNumber500If the property "isBlank" is set to false, you can set the height of the modal window the "share on social networks"
hasCounterBooleanfalsePresence of a counter with the number of share
digitsCounterNumber0The number of decimal places in the counter
keyCounterString''Counter ID (note, it must be unique if you use several buttons with a counter for the same social network on the same page)
customIconString''Custom imag

Odnoklassniki

OptionType'sDefaultDescription
urlStringdocument.location.hrefURL-address you want to share
descriptionStringdocument.titleMessages you want to share
btnTextStringOdnoklassnikiText to be written on your button
hasIconBooleantruePresence of social network icon in the button
isBlankBooleantrueOpen the "share on social networks" frame in a new window
modalWidthNumber500If the property "isBlank" is set to false, you can set the width of the modal window the "share on social networks"
modalHeightNumber500If the property "isBlank" is set to false, you can set the height of the modal window the "share on social networks"
hasCounterBooleanfalsePresence of a counter with the number of share
digitsCounterNumber0The number of decimal places in the counter
customIconString''Custom image
sharePicString''Link to image instead of favicon

Tumblr

OptionType'sDefaultDescription
urlStringdocument.location.hrefURL-address you want to share
descriptionStringdocument.titleMessages you want to share
titleString''Title you want to share
btnTextStringTumblr, VkontakteText to be written on your button
hasIconBooleantruePresence of social network icon in the button
isBlankBooleantrueOpen the "share on social networks" frame in a new window
modalWidthNumber500If the property "isBlank" is set to false, you can set the width of the modal window the "share on social networks"
modalHeightNumber500If the property "isBlank" is set to false, you can set the height of the modal window the "share on social networks"
hasCounterBooleanfalsePresence of a counter with the number of share
digitsCounterNumber0The number of decimal places in the counter
keyCounterString''Counter ID (note, it must be unique if you use several buttons with a counter for the same social network on the same page)
customIconString''Custom image

Vkontakte

OptionType'sDefaultDescription
urlStringdocument.location.hrefURL-address you want to share
descriptionStringdocument.titleMessages you want to share
titleString''Title you want to share
btnTextStringTumblr, VkontakteText to be written on your button
hasIconBooleantruePresence of social network icon in the button
isBlankBooleantrueOpen the "share on social networks" frame in a new window
modalWidthNumber500If the property "isBlank" is set to false, you can set the width of the modal window the "share on social networks"
modalHeightNumber500If the property "isBlank" is set to false, you can set the height of the modal window the "share on social networks"
hasCounterBooleanfalsePresence of a counter with the number of share
digitsCounterNumber0The number of decimal places in the counter
sharePicString''Link to image instead of favicon
customIconString''Custom image

Pinterest

OptionType'sDefaultDescription
urlStringdocument.location.hrefURL-address you want to share
descriptionStringdocument.titleMessages you want to share
pictureString''Picture you want to share
btnTextStringPinterestText to be written on your button
hasIconBooleantruePresence of social network icon in the button
isBlankBooleantrueOpen the "share on social networks" frame in a new window
modalWidthNumber500If the property "isBlank" is set to false, you can set the width of the modal window the "share on social networks"
modalHeightNumber500If the property "isBlank" is set to false, you can set the height of the modal window the "share on social networks"
hasCounterBooleanfalsePresence of a counter with the number of share
digitsCounterNumber0The number of decimal places in the counter
keyCounterString''Counter ID (note, it must be unique if you use several buttons with a counter for the same social network on the same page)
customIconString''Custom image

Buttons without a counter

Twitter, Hatena, Instapaper, LiveJournal

OptionType'sDefaultDescription
urlStringdocument.location.hrefURL-address you want to share
descriptionStringdocument.titleMessages you want to share
btnTextStringTwitter, Hatena, Instapaper, LiveJournalText to be written on your button
hasIconBooleantruePresence of social network icon in the button
isBlankBooleantrueOpen the "share on social networks" frame in a new window
modalWidthNumber500If the property "isBlank" is set to false, you can set the width of the modal window the "share on social networks"
modalHeightNumber500If the property "isBlank" is set to false, you can set the height of the modal window the "share on social networks"
customIconString''Custom image

Digg, Xing, Pocket

OptionType'sDefaultDescription
urlStringdocument.location.hrefURL-address you want to share
btnTextStringDigg, Xing, PocketText to be written on your button
hasIconBooleantruePresence of social network icon in the button
isBlankBooleantrueOpen the "share on social networks" frame in a new window
modalWidthNumber500If the property "isBlank" is set to false, you can set the width of the modal window the "share on social networks"
modalHeightNumber500If the property "isBlank" is set to false, you can set the height of the modal window the "share on social networks"
customIconString''Custom image

Blogger

OptionType'sDefaultDescription
urlStringdocument.location.hrefURL-address you want to share
descriptionStringdocument.titleMessages you want to share
titleString''Title you want to share
btnTextStringBloggerText to be written on your button
hasIconBooleantruePresence of social network icon in the button
isBlankBooleantrueOpen the "share on social networks" frame in a new window
modalWidthNumber500If the property "isBlank" is set to false, you can set the width of the modal window the "share on social networks"
modalHeightNumber500If the property "isBlank" is set to false, you can set the height of the modal window the "share on social networks"
customIconString''Custom image

Reddit, Renren

OptionType'sDefaultDescription
urlStringdocument.location.hrefURL-address you want to share
titleString''Title you want to share
btnTextStringReddit, RenrenText to be written on your button
hasIconBooleantruePresence of social network icon in the button
isBlankBooleantrueOpen the "share on social networks" frame in a new window
modalWidthNumber500If the property "isBlank" is set to false, you can set the width of the modal window the "share on social networks"
modalHeightNumber500If the property "isBlank" is set to false, you can set the height of the modal window the "share on social networks"
customIconString''Custom image

Weibo

OptionType'sDefaultDescription
urlStringdocument.location.hrefURL-address you want to share
descriptionStringdocument.titleMessages you want to share
pictureString''Picture you want to share
titleString''Title you want to share
btnTextStringWeiboText to be written on your button
hasIconBooleantruePresence of social network icon in the button
isBlankBooleantrueOpen the "share on social networks" frame in a new window
modalWidthNumber500If the property "isBlank" is set to false, you can set the width of the modal window the "share on social networks"
modalHeightNumber500If the property "isBlank" is set to false, you can set the height of the modal window the "share on social networks"
customIconString''Custom image

Buttons for instant messengers

Facebook Messenger

OptionType'sDefaultDescription
appIDString''A unique identifier for the application
urlStringdocument.location.hrefURL-address you want to share
btnTextStringFacebookText to be written on your button
hasIconBooleantruePresence of social network icon in the button
customIconString''Custom image

Viber, WhatsApp

OptionType'sDefaultDescription
urlStringdocument.location.hrefURL-address you want to share
btnTextStringViber, WhatsAppText to be written on your button
hasIconBooleantruePresence of social network icon in the button
customIconString''Custom image

Telegram

OptionType'sDefaultDescription
urlStringdocument.location.hrefURL-address you want to share
descriptionStringdocument.titleMessages you want to share
btnTextStringTelegramText to be written on your button
hasIconBooleantruePresence of social network icon in the button
customIconString''Custom image

Send a message via email

This isn't really a share button, this is a button that allows you to open the software to send an email message, but it may be useful for you πŸ™ƒ

OptionType'sDefaultDescription
urlStringdocument.location.hrefURL-address you want to share
btnTextStringEmailText to be written on your button
hasIconBooleantruePresence of social network icon in the button
subjectStringdocument.titleEmail subject
customIconString''Custom image

Full list of social networks

Not worked

Example

<twitter-button v-bind:isBlank="false" btnText />
<img width="38" alt="Twitter button with icon" src="https://user-images.githubusercontent.com/14329906/55610855-df9e9880-5794-11e9-8fe2-8c0fd86df43d.png">

Live Demo

<twitter-button class="share-button--circle" v-bind:hasIcon="false" />
<img width="84" alt="Twitter circle button" src="https://user-images.githubusercontent.com/14329906/55610809-c564ba80-5794-11e9-9d85-1130f7ad0881.png">

Live Demo

<twitter-button v-bind:hasIcon="false" class="share-button--outline" />
<img width="85" alt="Twitter outline button without icon" src="https://user-images.githubusercontent.com/14329906/55610923-09f05600-5795-11e9-89c3-13a50ab397eb.png">

Live Demo

<twitter-button class="share-button--circle share-button--outline" btnText />
<img width="45" alt="Twitter outline and circle button with icon" src="https://user-images.githubusercontent.com/14329906/55610998-44f28980-5795-11e9-8c73-6c29249b8a17.png">

Live Demo

<facebook-button class="share-button--outline" hasCounter />
<img width="184" alt="Twitter outline button with icon and counter" src="https://user-images.githubusercontent.com/14329906/55611429-88012c80-5796-11e9-9c71-2bf20e52f95f.png">

Live Demo

<facebook-button
  class="share-button--painted"
  url="https://github.com/"
  hasCounter
/>
<img width="74" alt="Twitter painted button with icon and counter" src="https://user-images.githubusercontent.com/14329906/55611270-1aed9700-5796-11e9-963f-182b572471b3.png">

Live Demo

Author

This component was developed by Alexander Shulaev for personal purposes and submitted to Open Source, if it will help someone I will be very happy about it😊

Link

SVG-icon by Simple Icons

Roadmap

License

The MIT License (MIT)