diff --git a/src/app/page.tsx b/src/app/page.tsx
index cb7273d..5a1ff7b 100644
--- a/src/app/page.tsx
+++ b/src/app/page.tsx
@@ -1,11 +1,12 @@
'use client'
-import { AppShell, Container, rem } from '@mantine/core'
+import { AppShell, Container, Stack, rem } from '@mantine/core'
import Introduction from '../partials/Introduction'
import About from '../partials/About'
import Navbar from '../components/Navbar'
import Footer from '../components/Footer'
import SlideUpWhenVisible from '../hooks/slideUpWhenVisible'
+import Experiences from '../partials/Experiences'
export default function HomePage() {
return (
@@ -18,13 +19,16 @@ export default function HomePage() {
-
+
-
-
-
+
+
+
+
+
+
diff --git a/src/components/Footer.tsx b/src/components/Footer.tsx
index e1b1459..72eafbb 100644
--- a/src/components/Footer.tsx
+++ b/src/components/Footer.tsx
@@ -1,18 +1,40 @@
-import { Anchor, Container, Text } from '@mantine/core'
+import { Anchor, Badge, Box, SimpleGrid, Stack, Text } from '@mantine/core'
+import pkg from '../../package.json'
+
+const { version } = pkg
export default function Footer() {
return (
-
-
- Created with ❤️ by{' '}
-
- Refansa
-
-
-
+
+
+
+
+ Email:{' '}
+
+ m.refansa.am@gmail.com
+
+
+
+ Tel:{' '}
+ (+62) 812-8543-3284
+
+
+ {/* empty space */}
+
+
+ V. {version}
+
+ Created with ❤️ by{' '}
+
+ Refansa
+
+
+
+
)
}
diff --git a/src/components/NavLink.tsx b/src/components/NavLink.tsx
index ae6a971..9a203a5 100644
--- a/src/components/NavLink.tsx
+++ b/src/components/NavLink.tsx
@@ -1,16 +1,19 @@
import { Button } from '@mantine/core'
+import { MouseEventHandler } from 'react'
interface NavLinkProps {
content: string
href: string
+ onClick?: MouseEventHandler
}
-function NavLink({ content, href }: NavLinkProps) {
+function NavLink({ content, href, onClick }: NavLinkProps) {
return (
diff --git a/src/components/NavMobile.tsx b/src/components/NavMobile.tsx
new file mode 100644
index 0000000..dad1075
--- /dev/null
+++ b/src/components/NavMobile.tsx
@@ -0,0 +1,35 @@
+import { useDisclosure } from '@mantine/hooks'
+import { Box, Burger, Drawer, Stack } from '@mantine/core'
+import NavLink from './NavLink'
+
+export default function NavMobile() {
+ const [opened, { open, close }] = useDisclosure(false)
+
+ return (
+
+
+
+
+
+
+
+
+
+ )
+}
diff --git a/src/components/Navbar.tsx b/src/components/Navbar.tsx
index b1daa0d..b342762 100644
--- a/src/components/Navbar.tsx
+++ b/src/components/Navbar.tsx
@@ -3,6 +3,7 @@ import { Box, Group } from '@mantine/core'
import classes from './Navbar.module.css'
import NavIcon from './NavIcon'
import NavLink from './NavLink'
+import NavMobile from './NavMobile'
function Navbar() {
return (
@@ -20,6 +21,7 @@ function Navbar() {
href='https://github.com/Refansa?tab=repositories'
/>
+
)
}
diff --git a/src/partials/About.tsx b/src/partials/About.tsx
index 602f7e6..3d136c8 100644
--- a/src/partials/About.tsx
+++ b/src/partials/About.tsx
@@ -14,9 +14,7 @@ function About() {
return (
+ my='xl'>
diff --git a/src/partials/Experiences.tsx b/src/partials/Experiences.tsx
new file mode 100644
index 0000000..9714502
--- /dev/null
+++ b/src/partials/Experiences.tsx
@@ -0,0 +1,129 @@
+import { Box, Paper, SimpleGrid, Stack, Text, Title } from '@mantine/core'
+import {
+ IconBrandCss3,
+ IconBrandHtml5,
+ IconBrandJavascript,
+ IconBrandLaravel,
+ IconBrandMantine,
+ IconBrandMysql,
+ IconBrandNextjs,
+ IconBrandNodejs,
+ IconBrandPhp,
+ IconBrandPrisma,
+ IconBrandPython,
+ IconBrandReact,
+ IconBrandSass,
+ IconBrandSupabase,
+ IconBrandTailwind,
+ IconBrandVue,
+} from '@tabler/icons-react'
+
+interface ItemGridProps {
+ icon: React.ReactNode
+ text: string
+}
+
+const ItemGrid = ({ icon, text }: ItemGridProps) => {
+ return (
+
+
+ {icon}
+ {text}
+
+
+ )
+}
+
+export default function Experiences() {
+ return (
+
+
+ Experiences
+
+ I have worked and used these awesome technologies in my projects
+
+
+ }
+ text='HTML'
+ />
+ }
+ text='CSS'
+ />
+ }
+ text='Javascript'
+ />
+ }
+ text='PHP'
+ />
+ }
+ text='Python'
+ />
+ }
+ text='MySQL'
+ />
+ }
+ text='Laravel'
+ />
+ }
+ text='NodeJS'
+ />
+ }
+ text='React'
+ />
+ }
+ text='Vue'
+ />
+ }
+ text='Tailwind'
+ />
+ }
+ text='Sass'
+ />
+ }
+ text='Mantine'
+ />
+ }
+ text='NextJS'
+ />
+ }
+ text='Prisma'
+ />
+ }
+ text='Supabase'
+ />
+
+
+ And probably many more...
+
+
+
+ )
+}
diff --git a/src/partials/Introduction.tsx b/src/partials/Introduction.tsx
index a2065d9..7eb2742 100644
--- a/src/partials/Introduction.tsx
+++ b/src/partials/Introduction.tsx
@@ -7,7 +7,7 @@ function Introduction() {