share-url

Generates social sharing urls without downloading its third party scripts. Adaptable to any UI.
Supported: Facebook, Twitter, Telegram, Whatsapp, Pinterest, Reddit, Linkedin, [e-mail].(#email)
Demo
https://noeldelgado.github.io/share-url/
Dependencies
None
Installation
NPM
npm i share-url --save
Or as a <script> tag from a CDN as ShareUrl:
Unkpkg CDN
<script src="https://unpkg.com/share-url"></script>
jsDelivr CDN
<script src="https://cdn.jsdelivr.net/npm/share-url"></script>
Usage Example
<a href={ShareUrl.facebook({ u: 'https://google.com' }}>
Share on Facebook
</a>
document.querySelector('a').href = ShareUrl.facebook({ u: 'https://google.com' });
facebook
https://developers.facebook.com/docs/plugins/share-button/
https://www.facebook.com/sharer.php?u={url}
ShareUrl.facebook({
u: 'http://google.com',
});
whatsapp
https://faq.whatsapp.com/general/chats/how-to-use-click-to-chat
https://api.whatsapp.com/send?text={text}
ShareUrl.whatsapp({
text: 'Check out http://google.com',
});
telegram
https://core.telegram.org/widgets/share#custom-buttons
https://t.me/share/url?url={url}&text={text}
ShareUrl.telegram({
url: 'https://google.com',
text: 'Check out',
});
https://developer.twitter.com/en/docs/twitter-for-websites/tweet-button/guides/parameter-reference1
https://twitter.com/share?text={text}&url={url}
ShareUrl.twitter({
text: 'custom share text',
in_reply_to: '471716611724812288',
url: 'https://dev.twitter.com/web/tweet-button',
hashtags: 'example,demo',
via: 'twitterdev',
related: 'twitterapi,twitter',
});
pinterest
https://developers.pinterest.com/docs/widgets/save/
https://pinterest.com/pin/create/button/?url={url}
ShareUrl.pinterest({
url: 'http://www.flickr.com/photos/kentbrew/6851755809/',
media: 'http://farm8.staticflickr.com/7027/6851755809_df5b2051c9_z.jpg',
description: 'Next Stop Pinterest',
});
reddit
http://www.reddit.com/buttons/
http://www.reddit.com/submit?url={url}
ShareUrl.reddit({
url: '//www.reddit.com/buttons',
title: 'Buttons!',
});
linkedin
https://developer.linkedin.com/docs/share-on-linkedin
https://linkedin.com/sharing/share-offsite/?url={url}
ShareUrl.linkedin({
url: 'http://developer.linkedin.com',
});
email
https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Email_links
mailto:{to}?subject={subject}&body={body}
ShareUrl.email({
to: 'nowhere@mozilla.org',
cc: 'nobody@mozilla.org',
subject: 'This is the subject',
body: 'This is the body - https://developer.mozilla.org/',
});
License
MIT Š Noel Delgado