-
{t('community.title')}
-
-
-
-
-
+
+ {t("community.title")}
+
+
+ search(e.target.value.trim().toLowerCase())} />
+
+
+ {apps.map(app => (
+
+
+
+
+
{app.name[lang]}
+
{app.desc[lang]}
+
{app.cat[lang]}
+
+
+
+
+
+ ))}
diff --git a/pages/join.jsx b/pages/join.jsx
new file mode 100644
index 0000000..4c5d2cb
--- /dev/null
+++ b/pages/join.jsx
@@ -0,0 +1,67 @@
+import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"
+import { useTranslation } from "@/utils/translation"
+import { Users, Book, MessageCircle, Code, ArrowLeftCircle, ArrowRightCircle } from 'lucide-react'
+import { Button } from "@/components/ui/button"
+import Link from "next/link"
+import { SiBluesky, SiDiscord, SiMastodon, SiTelegram, SiX } from "@icons-pack/react-simple-icons";
+
+const JoinCard = ({ icon: Icon, caption, link, text, url, arrow: Arrow }) => (
+
+
+
+
+
+ {caption}
+
+
+
+
+ {text}
+
+)
+
+export default function Join() {
+ const { t, lang } = useTranslation();
+
+ const arrow = lang == 'fa' ? ArrowLeftCircle : ArrowRightCircle
+
+ return (
+
+
+
{t('join.title')}
+
+
+
+
+
+
+
+
+ )
+}