diff --git a/src/app/(application)/member/[id]/page.tsx b/src/app/(application)/member/[id]/page.tsx
new file mode 100644
index 0000000..c05ea29
--- /dev/null
+++ b/src/app/(application)/member/[id]/page.tsx
@@ -0,0 +1,10 @@
+import { ViewDetailMember } from "@/module/user/member";
+
+function Page({ params }: { params: { id: string } }) {
+ return (
+
+ )
+}
+
+export default Page;
+
diff --git a/src/app/(application)/member/create/page.tsx b/src/app/(application)/member/create/page.tsx
new file mode 100644
index 0000000..1afa674
--- /dev/null
+++ b/src/app/(application)/member/create/page.tsx
@@ -0,0 +1,9 @@
+import { ViewCreateMember } from "@/module/user/member";
+
+function Page() {
+ return (
+
+ );
+}
+
+export default Page;
\ No newline at end of file
diff --git a/src/app/(application)/member/page.tsx b/src/app/(application)/member/page.tsx
new file mode 100644
index 0000000..8b49914
--- /dev/null
+++ b/src/app/(application)/member/page.tsx
@@ -0,0 +1,9 @@
+import { ViewListMember } from "@/module/user/member";
+
+function Page() {
+ return (
+
+ )
+}
+
+export default Page;
\ No newline at end of file
diff --git a/src/module/home/view/view_detail_feature.tsx b/src/module/home/view/view_detail_feature.tsx
index e8848be..71e4880 100644
--- a/src/module/home/view/view_detail_feature.tsx
+++ b/src/module/home/view/view_detail_feature.tsx
@@ -56,7 +56,7 @@ export default function ViewDetailFeature() {
Proyek
-
+ router.push('/announcement')}>
Pengumuman
-
+ router.push('/member')}>
+ }
+ placeholder="Pencarian"
+ />
+ {dataMember.map((v, i) => {
+ return (
+ {
+ router.push(`/member/${v.id}`)
+ }}>
+
+
+
+
+
+
+
+ {v.name}
+
+
+
+ )
+ })}
+
+ );
+}
diff --git a/src/module/user/member/component/ui/drawer_list_member.tsx b/src/module/user/member/component/ui/drawer_list_member.tsx
new file mode 100644
index 0000000..97948f9
--- /dev/null
+++ b/src/module/user/member/component/ui/drawer_list_member.tsx
@@ -0,0 +1,48 @@
+import { isDrawer, LayoutDrawer, WARNA } from '@/module/_global';
+import { useHookstate } from '@hookstate/core';
+import { Box, Button, Center, Flex, Group, SimpleGrid, Stack, Text, TextInput } from '@mantine/core';
+import { useRouter } from 'next/navigation';
+import React, { useState } from 'react';
+import { IoAddCircle } from "react-icons/io5";
+import { RiFilter2Line } from 'react-icons/ri';
+
+export default function DrawerListMember() {
+ const openDrawer = useHookstate(isDrawer)
+ const router = useRouter()
+
+ function onCLose() {
+ openDrawer.set(false)
+ }
+ return (
+
+
+
+ {
+ router.push('/member/create')
+ onCLose()
+ }}
+ >
+
+
+
+
+ Tambah Anggota
+
+
+
+
+
+
+
+
+ Filter
+
+
+
+
+
+ );
+}
diff --git a/src/module/user/member/component/ui/navbar_create_member.tsx b/src/module/user/member/component/ui/navbar_create_member.tsx
new file mode 100644
index 0000000..cfff722
--- /dev/null
+++ b/src/module/user/member/component/ui/navbar_create_member.tsx
@@ -0,0 +1,23 @@
+'use client'
+import { LayoutIconBack, LayoutNavbarHome } from '@/module/_global';
+import { Box, Grid, Text } from '@mantine/core';
+import React from 'react';
+
+export default function NavbarCreateMember() {
+ return (
+
+
+
+
+
+
+
+ Tambah Anggota
+
+
+
+
+
+ );
+}
+
diff --git a/src/module/user/member/component/ui/navbar_list_member.tsx b/src/module/user/member/component/ui/navbar_list_member.tsx
new file mode 100644
index 0000000..a4955a9
--- /dev/null
+++ b/src/module/user/member/component/ui/navbar_list_member.tsx
@@ -0,0 +1,34 @@
+'use client'
+import { isDrawer, LayoutDrawer, LayoutIconBack, LayoutNavbarHome, WARNA } from "@/module/_global";
+import { useHookstate } from "@hookstate/core";
+import { ActionIcon, Box, Grid, Group, Text } from "@mantine/core";
+import { HiMenu } from "react-icons/hi";
+import DrawerListMember from "./drawer_list_member";
+
+export default function NavbarListMember() {
+ const openDrawer = useHookstate(isDrawer)
+ return (
+ <>
+
+
+
+
+
+
+ ANGGOTA
+
+
+
+ openDrawer.set(true)} variant="light" bg={WARNA.bgIcon} size="lg" radius="lg" aria-label="Settings">
+
+
+
+
+
+
+ openDrawer.set(false)}>
+
+
+ >
+ )
+}
\ No newline at end of file
diff --git a/src/module/user/member/index.ts b/src/module/user/member/index.ts
index e69de29..64962ea 100644
--- a/src/module/user/member/index.ts
+++ b/src/module/user/member/index.ts
@@ -0,0 +1,7 @@
+import ViewCreateMember from "./view/view_create_member";
+import ViewDetailMember from "./view/view_detail_member";
+import ViewListMember from "./view/view_list_member";
+
+export { ViewListMember }
+export { ViewCreateMember }
+export { ViewDetailMember }
\ No newline at end of file
diff --git a/src/module/user/member/view/view_create_member.tsx b/src/module/user/member/view/view_create_member.tsx
new file mode 100644
index 0000000..efa9ccc
--- /dev/null
+++ b/src/module/user/member/view/view_create_member.tsx
@@ -0,0 +1,77 @@
+import { Box, Button, Stack, TextInput } from "@mantine/core";
+import NavbarCreateMember from "../component/ui/navbar_create_member";
+import { WARNA } from "@/module/_global";
+import { HiUser } from "react-icons/hi2";
+
+export default function ViewCreateMember() {
+ return (
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ )
+}
\ No newline at end of file
diff --git a/src/module/user/member/view/view_detail_member.tsx b/src/module/user/member/view/view_detail_member.tsx
new file mode 100644
index 0000000..a282569
--- /dev/null
+++ b/src/module/user/member/view/view_detail_member.tsx
@@ -0,0 +1,55 @@
+import { LayoutNavbarHome, LayoutIconBack, WARNA } from "@/module/_global";
+import { ActionIcon, Box, Group, Stack, Text } from "@mantine/core";
+import { BsInfo } from "react-icons/bs";
+import { FaSquarePhone } from "react-icons/fa6";
+import { HiUser } from "react-icons/hi2";
+import { MdEmail } from "react-icons/md";
+import { RiIdCardFill } from "react-icons/ri";
+
+export default function ViewDetailMember({ data }: { data: string }) {
+ return (
+
+
+
+
+
+
+
+
+
+
+ Fibra Marcell
+ Kepala Urusan Pengembangan
+
+
+
+
+
+
+ NIK
+
+ 513177782899
+
+
+
+
+ NoTelepon
+
+ +62038939293
+
+
+
+
+ Email
+
+ marcel@gmail.com
+
+
+
+
+ )
+}
\ No newline at end of file
diff --git a/src/module/user/member/view/view_list_member.tsx b/src/module/user/member/view/view_list_member.tsx
new file mode 100644
index 0000000..4b1bb6b
--- /dev/null
+++ b/src/module/user/member/view/view_list_member.tsx
@@ -0,0 +1,12 @@
+import { Box } from "@mantine/core";
+import NavbarListMember from "../component/ui/navbar_list_member";
+import ListMember from "../component/list_member";
+
+export default function ViewListMember() {
+ return (
+
+
+
+
+ )
+}
\ No newline at end of file