diff --git a/docs/src/containers/SocialButton/index.js b/docs/src/containers/SocialButton/index.js
index 7cbe0b2de..572c2210f 100644
--- a/docs/src/containers/SocialButton/index.js
+++ b/docs/src/containers/SocialButton/index.js
@@ -2,9 +2,11 @@ import React from "react";
import { FaGithub, FaDiscord } from "react-icons/fa";
import { RiStarSFill } from "react-icons/ri";
import { useAppStars } from "@site/src/hooks/useAppStars";
+import { useDiscordWidget } from "@site/src/hooks/useDiscordWidget";
export default function SocialButton() {
const { stargazers } = useAppStars();
+ const { data } = useDiscordWidget();
return (
@@ -36,7 +38,7 @@ export default function SocialButton() {
Discord
-
{stargazers.count} online
+
{data.presence_count} online
diff --git a/docs/src/hooks/useDiscordWidget.js b/docs/src/hooks/useDiscordWidget.js
new file mode 100644
index 000000000..b85303f8b
--- /dev/null
+++ b/docs/src/hooks/useDiscordWidget.js
@@ -0,0 +1,28 @@
+import React, { useEffect, useState } from "react";
+
+import axios from "axios";
+import { isAxiosError } from "axios";
+
+export const useDiscordWidget = () => {
+ const [data, setData] = useState({});
+
+ useEffect(() => {
+ const updateData = async () => {
+ try {
+ const { data } = await axios.get(
+ "https://discord.com/api/guilds/1107178041848909847/widget.json"
+ );
+ setData({
+ ...data,
+ });
+ } catch (error) {
+ if (isAxiosError(error)) {
+ console.error("Failed to get stargazers:", error);
+ }
+ }
+ };
+ updateData();
+ }, []);
+
+ return { data };
+};