diff --git a/README.md b/README.md
index 56e0b55b..a6dfcc25 100644
--- a/README.md
+++ b/README.md
@@ -7,7 +7,7 @@
Discover open-source projects, connect with experienced maintainers, and collaborate with a community of passionate contributors. Join over 200+ registered users who are already making a difference
## Demo
-
+
Check out the web app 🌏 : https://projectmate.net/
diff --git a/components/Common/MouseTracker.tsx b/components/Common/MouseTracker.tsx
new file mode 100644
index 00000000..338c9fc7
--- /dev/null
+++ b/components/Common/MouseTracker.tsx
@@ -0,0 +1,38 @@
+import { useEffect, useState } from 'react';
+
+export const MouseTracker = () => {
+ const [position, setPosition] = useState({ x: 0, y: 0 });
+
+ useEffect(() => {
+ const updateMousePosition = (e: MouseEvent) => {
+ setPosition({ x: e.clientX, y: e.clientY });
+ };
+
+ window.addEventListener('mousemove', updateMousePosition);
+
+ return () => {
+ window.removeEventListener('mousemove', updateMousePosition);
+ };
+ }, []);
+
+ return (
+
+ );
+};
diff --git a/components/Layouts/SharedLayout/SharedLayout.tsx b/components/Layouts/SharedLayout/SharedLayout.tsx
index 55724a41..d18eac8a 100644
--- a/components/Layouts/SharedLayout/SharedLayout.tsx
+++ b/components/Layouts/SharedLayout/SharedLayout.tsx
@@ -6,7 +6,7 @@ import { BottomBar } from '../BottomBar';
import { TopNavbar } from '../TopNavbar';
import { favicons } from '@/data';
import BackToTopButton from '@/components/Common/BackToTop';
-import RightBar from '../RightBar';
+// import RightBar from '../RightBar';
export const SharedLayout: FC = ({
title = '',
@@ -67,9 +67,7 @@ export const SharedLayout: FC = ({
{children}
{rightSidebar && (
-
-
-
+ {/* */}
)}
{bottomBar && (
diff --git a/components/views/LandingPage/VideoDemo/index.tsx b/components/views/LandingPage/VideoDemo/index.tsx
index e8c656c8..b8db3d7b 100644
--- a/components/views/LandingPage/VideoDemo/index.tsx
+++ b/components/views/LandingPage/VideoDemo/index.tsx
@@ -1,45 +1,76 @@
import { motion } from 'framer-motion';
import { useInView } from 'react-intersection-observer';
-import React from 'react';
+import React, { useEffect } from 'react';
const videoVariants = {
hidden: { opacity: 0, y: 50 },
visible: { opacity: 1, y: 0, transition: { duration: 1 } },
};
+const overlayVariants = {
+ hidden: { opacity: 0 },
+ visible: { opacity: 1, transition: { duration: 0.5 } },
+};
+
export const VideoDemo = () => {
const [ref, inView] = useInView({
- triggerOnce: true,
+ triggerOnce: false,
+ threshold: 0.5,
});
+ useEffect(() => {
+ // Add/remove a class to the body when video is in view
+ if (inView) {
+ document.body.classList.add('video-in-view');
+ } else {
+ document.body.classList.remove('video-in-view');
+ }
+
+ return () => {
+ document.body.classList.remove('video-in-view');
+ };
+ }, [inView]);
+
return (
-
+ <>
+ {/* Overlay that dims the rest of the page */}
-
-
-
+ className="pointer-events-none fixed inset-0 bg-black/50 transition-opacity duration-500"
+ style={{ opacity: inView ? 1 : 0 }}
+ />
+
+
+ >
);
};
diff --git a/package-lock.json b/package-lock.json
index 421bddca..25120e5b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -8142,6 +8142,66 @@
"funding": {
"url": "https://github.com/sponsors/colinhacks"
}
+ },
+ "node_modules/@next/swc-android-arm-eabi": {
+ "version": "13.2.1",
+ "resolved": "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-13.2.1.tgz",
+ "integrity": "sha512-Yua7mUpEd1wzIT6Jjl3dpRizIfGp9NR4F2xeRuQv+ae+SDI1Em2WyM9m46UL+oeW5GpMiEHoaBagr47RScZFmQ==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@next/swc-android-arm64": {
+ "version": "13.2.1",
+ "resolved": "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-13.2.1.tgz",
+ "integrity": "sha512-Bifcr2f6VwInOdq1uH/9lp8fH7Nf7XGkIx4XceVd32LPJqG2c6FZU8ZRBvTdhxzXVpt5TPtuXhOP4Ij9UPqsVw==",
+ "cpu": [
+ "arm64"
+ ],
+ "optional": true,
+ "os": [
+ "android"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@next/swc-freebsd-x64": {
+ "version": "13.2.1",
+ "resolved": "https://registry.npmjs.org/@next/swc-freebsd-x64/-/swc-freebsd-x64-13.2.1.tgz",
+ "integrity": "sha512-N/a4JarAq+E+g+9K2ywJUmDIgU2xs2nA+BBldH0oq4zYJMRiUhL0iaN9G4e72VmGOJ61L/3W6VN8RIUOwTLoqQ==",
+ "cpu": [
+ "x64"
+ ],
+ "optional": true,
+ "os": [
+ "freebsd"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/@next/swc-linux-arm-gnueabihf": {
+ "version": "13.2.1",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-13.2.1.tgz",
+ "integrity": "sha512-WaFoerF/eRbhbE57TaIGJXbQAERADZ/RZ45u6qox9beb5xnWsyYgzX+WuN7Tkhyvga0/aMuVYFzS9CEay7D+bw==",
+ "cpu": [
+ "arm"
+ ],
+ "optional": true,
+ "os": [
+ "linux"
+ ],
+ "engines": {
+ "node": ">= 10"
+ }
}
}
}
diff --git a/pages/_app.tsx b/pages/_app.tsx
index 3261acb1..a9bdc938 100644
--- a/pages/_app.tsx
+++ b/pages/_app.tsx
@@ -12,6 +12,7 @@ import { AppDataContext } from '@/context/Common/CommonContext';
import { Loader } from 'lucide-react';
import { useState } from 'react';
import { ProgressBar } from '@/components/Common/ProgressBar';
+import { MouseTracker } from '@/components/Common/MouseTracker';
export default function MyApp({ Component, pageProps }: AppProps) {
const userDetailsUrl = `/api/user/details`;
@@ -37,6 +38,7 @@ export default function MyApp({ Component, pageProps }: AppProps) {
+
{!isDetailsLoading ? (
<>
diff --git a/pages/_document.tsx b/pages/_document.tsx
index 960e4831..d2881b31 100644
--- a/pages/_document.tsx
+++ b/pages/_document.tsx
@@ -44,8 +44,9 @@ export default class MyDocument extends Document {