react-use-lanyard
react-use-lanyard copied to clipboard
π Use Lanyard API easily in your React app!
React Use Lanyard
Use Lanyard API easily in your React app!
Get support Β»
Report Bug
Β·
Request Feature
Β·
What Is Lanyard
π¦ Installation
- Using yarn:
yarn add react-use-lanyard
- Using npm:
npm i react-use-lanyard
π€ Usage
Using without websocket:
import { useLanyard } from "react-use-lanyard";
function App() {
const lanyard = useLanyard({
userId: "952574663916154960",
});
return (
<pre>{!lanyard.isValidating && JSON.stringify(lanyard, null, 4)}</pre>
);
}
export default App;
Using with websocket:
import { useLanyard } from "react-use-lanyard";
function App() {
const { loading, status /*, websocket */ } = useLanyard({
userId: "952574663916154960",
socket: true,
});
return <pre>{!loading && JSON.stringify(status, null, 4)}</pre>;
}
export default App;
π KV Support
You can create/delete KV pairs using this package.
import { set, del } from "react-use-lanyard";
// Set KV pair
await set({
apiKey: "your_api_key", // get it using .apikey command on lanyard bot
userId: "your_user_id",
key: "test_key",
value: "test value",
// apiUrl: "lanyard.338.rocks", // if you are using self-hosted api, not required by default
});
// Delete KV pair
await del({
apiKey: "your_api_key",
userId: "your_user_id",
key: "test_key",
// apiUrl: "lanyard.338.rocks", // if you are using self-hosted api, not required by default
});
π€ Using Self-Hosted API
You can use this package to connect to your own self-hosted Lanyard API. To do this, you need to pass the apiUrl
option to the useLanyard
hook. See Lanyard self-hosting guide for more information.
Using without websocket:
import { useLanyard } from "react-use-lanyard";
function App() {
const lanyard = useLanyard({
userId: "952574663916154960",
apiUrl: "lanyard.338.rocks",
});
return (
<pre>{!lanyard.isValidating && JSON.stringify(lanyard, null, 4)}</pre>
);
}
export default App;
Using with websocket:
import { useLanyard } from "react-use-lanyard";
function App() {
const { loading, status /*, websocket */ } = useLanyard({
userId: "952574663916154960",
socket: true,
apiUrl: "lanyard.338.rocks",
});
return <pre>{!loading && JSON.stringify(status, null, 4)}</pre>;
}
export default App;
π License
Copyright Β© 2021 BarΔ±Ε DEMΔ°RCΔ°.
Distributed under the GPL-3.0 License. See LICENSE
for more information.
𧦠Contributing
Feel free to use GitHub's features.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/my-feature
) - Run prettier and eslint (
npm run format && npm run lint
) - Commit your Changes (
git commit -m 'my awesome feature my-feature'
) - Push to the Branch (
git push origin feature/my-feature
) - Open a Pull Request
π₯ Show your support
Give a βοΈ if this project helped you!
π Contact
- Mail: [email protected]
- Discord: https://discord.gg/BjEJFwh
- Instagram: https://www.instagram.com/ben_baris.d/
β¨ Special Thanks
- Phineas - Creator of Lanyard API
- Eggsy - Creator of vue-lanyard