1.5.2 • Published 7 months ago

use-lanyard v1.5.2

Weekly downloads
-
License
MIT
Repository
github
Last release
7 months ago

use-lanyard

React hook for lanyard, an easy way to track your Discord presence through REST or WebSocket.

Features

  • Easy to use
  • Zero dependencies
  • TypeScript support
  • WebSocket support
  • Deduplicates network requests
import {useLanyard} from 'use-lanyard';

const DISCORD_ID = '268798547439255572';

export function Lanyard() {
	const {data} = useLanyard(DISCORD_ID);

	return <>...</>;
}

Server-side rendering / initial data

You can also provide initial data to the hook, which will be used until the client is hydrated/able to fetch the latest data.

const {data} = useLanyard(DISCORD_ID, {
	initialData: myInitialDataFromTheServer,
});

// Also works with the WebSocket hook
const data = useLanyardWS(DISCORD_ID, {
	initialData: myInitialDataFromTheServer,
});

Socket

There is also a hook for using the WebSocket that Lanyard provides, here's an example:

import {useLanyardWS} from 'use-lanyard';

const DISCORD_ID = '268798547439255572';

export function Lanyard() {
	const data = useLanyardWS(DISCORD_ID);

	return <>...</>;
}

Advanced usage

If you need access to the underlying response types in TypeScript, you can import them as follows.

// See src/types.ts for all types
import type {Data, Activity, LanyardResponse} from 'use-lanyard';

You can also customize the API endpoint that is used, if you wanted to self-host Lanyard.

export function Lanyard() {
	const {data} = useLanyard(DISCORD_ID, {
		api: {
			hostname: 'my-lanyard.app',

			// Tell the hook to use https/wss or http/ws
			secure: true,
		},
	});

	return <>...</>;
}

Acknowledgements

1.5.2

7 months ago

1.5.1

7 months ago

1.5.0

7 months ago

1.4.4

11 months ago

1.4.3

12 months ago

1.4.2

1 year ago

1.4.1

1 year ago

1.4.0

1 year ago

1.3.8

1 year ago

1.3.7

2 years ago

1.3.6

2 years ago

1.3.5

2 years ago

1.3.4

2 years ago

1.3.3

2 years ago

1.3.2

2 years ago

1.3.1

2 years ago

1.3.0

2 years ago

1.2.0

2 years ago

1.1.0

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago

0.0.6

3 years ago

0.0.5

3 years ago

0.0.4

3 years ago

0.0.3

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago