Description
Headless social share for Angular. Provides straightforward API for getting social share URLs which can be used in your templates.
ng-social-links advantages:
- Native to Angular.
- Configurable - you can globally define share URL, title and email body at module import.
- Well typed - it's clear which parameters are relevant to every social share provider.
- Works well in SSR mode.
Usage
Install package
npm i ng-social-links
Add import to your module
; @
Inject the service:
; {}
Get the socail share links:
facebookShareLink = thissocialLinks;
With additional parameters:
twitterShareLink = thissocialLinks;
Configuration
The configuration interface looks like this:
interface Config url?: string; title?: string; description?: string;
By default document.location.href
is used for url
, title
and description
are empty.
You can define another defaults as follows:
NgSocialLinksModule
Or
NgSocialLinksModule
ng-social-links is headless, so you're free to use whatever you like in a template. e.g. text links, icons, buttons, you name it. For example:
Another option is to create a popup window:
const telegramLink = facebookShareLink = thissocialLinks; window;
Demo
Currently, demo is only available on localhost:
- Clone the GitHub repo.
- Install dependencies:
npm install
. - Run the demo website:
npm start
. - Open your browser at http://localhost:4200.
Supported providers
- 'fb' - Facebook
- 'tw' - Twitter
- 'in' - LinkedIn
- 'mail' - Mailto
- 'vk' - Vkontakte
- 'tg' - Telegram
- 'pocket' - Getpocket
- 'reddit' - Reddit
- 'ev' - Evernote
- 'pi' - Pinterest
- 'sk' - Skype
- 'wa' - Whatsapp
- 'ok' - connect.ok
- 'xi' - Xing
Contributig to ng-social-links
You are more than welcome to improve this library (for example, add missing social share providers) or create issues on the GitHub issue tracker.