From 549e59efecc65807abfce4539e9421a54fc7d8fc Mon Sep 17 00:00:00 2001 From: SjxSubham Date: Wed, 7 Jan 2026 09:34:27 +0530 Subject: [PATCH 1/7] small fix --- app/landing-page/hero.tsx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/landing-page/hero.tsx b/app/landing-page/hero.tsx index af95e76..87b4abd 100644 --- a/app/landing-page/hero.tsx +++ b/app/landing-page/hero.tsx @@ -123,15 +123,15 @@ const Hero = () => {
{/* Badge */} - - + {/**/} + {/* Open Source - + */} Date: Wed, 7 Jan 2026 21:19:08 +0530 Subject: [PATCH 2/7] icon removed --- app/landing-page/pricing-card.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/landing-page/pricing-card.tsx b/app/landing-page/pricing-card.tsx index 9eaf848..2659270 100644 --- a/app/landing-page/pricing-card.tsx +++ b/app/landing-page/pricing-card.tsx @@ -156,7 +156,7 @@ const PricingCard = ({
- + {/**/} Most Popular
From 81ea60d287ad2aef703fc231fce51b0782c235a0 Mon Sep 17 00:00:00 2001 From: SjxSubham Date: Mon, 29 Jun 2026 01:03:53 +0530 Subject: [PATCH 3/7] update page header component styling and layout structure --- components/page-headers.tsx | 510 ++++++++++++++++++------------------ 1 file changed, 255 insertions(+), 255 deletions(-) diff --git a/components/page-headers.tsx b/components/page-headers.tsx index 71bcc93..9d00819 100644 --- a/components/page-headers.tsx +++ b/components/page-headers.tsx @@ -1,255 +1,255 @@ -"use client"; -import { - SignInButton, - SignedIn, - SignedOut, - UserButton, - SignUpButton, -} from "@clerk/nextjs"; - -import Link from "next/link"; -import Image from "next/image"; -import { useState } from "react"; -import { Button } from "@/components/ui/button"; -import HeaderMenu from "./header-menu"; -import ThemeToggleButton from "@/components/ThemeToggleButton"; -import { motion } from "framer-motion"; -import { ArrowRight, Sparkles } from "lucide-react"; - -interface Notification { - id: number; - type: string | null; - title: string | null; - message: string | null; - isRead: boolean | null; - createdAt: Date | null; - project?: { - id: number; - name: string | null; - } | null; - feedback?: { - id: number; - userName: string | null; - rating: number | null; - } | null; -} - -interface PageHeaderProps { - notifications?: Notification[]; - unreadCount?: number; -} - -const PageHeader = ({ - notifications = [], - unreadCount = 0, -}: PageHeaderProps) => { - const [isLogoHovered, setIsLogoHovered] = useState(false); - - return ( -
- {/* Glassmorphism background */} -
- - {/* Animated gradient line at bottom */} - - -
-
- {/* Animated Logo */} - setIsLogoHovered(true)} - onMouseLeave={() => setIsLogoHovered(false)} - > - - {/* Logo glow effect */} - - - {/* Logo image */} - - FeedX Logo - - - - - {/* Right side buttons */} -
- - - - - - - - - - - - - - - -
- {/* Theme Toggle */} - - - - - {/* Header Menu (Notifications, etc.) */} - - - - - {/* User Button with glow effect */} - - - - -
-
-
-
-
- - {/* Floating particles (subtle) */} -
- {[...Array(3)].map((_, i) => ( - - ))} -
-
- ); -}; - -export default PageHeader; +"use client"; +import { + SignInButton, + SignedIn, + SignedOut, + UserButton, + SignUpButton, +} from "@clerk/nextjs"; + +import Link from "next/link"; +import Image from "next/image"; +import { useState } from "react"; +import { Button } from "@/components/ui/button"; +import HeaderMenu from "./header-menu"; +import ThemeToggleButton from "@/components/ThemeToggleButton"; +import { motion } from "framer-motion"; +import { ArrowRight, Sparkles } from "lucide-react"; + +interface Notification { + id: number; + type: string | null; + title: string | null; + message: string | null; + isRead: boolean | null; + createdAt: Date | null; + project?: { + id: number; + name: string | null; + } | null; + feedback?: { + id: number; + userName: string | null; + rating: number | null; + } | null; +} + +interface PageHeaderProps { + notifications?: Notification[]; + unreadCount?: number; +} + +const PageHeader = ({ + notifications = [], + unreadCount = 0, +}: PageHeaderProps) => { + const [isLogoHovered, setIsLogoHovered] = useState(false); + + return ( +
+ {/* Glassmorphism background */} +
+ + {/* Animated gradient line at bottom */} + + +
+
+ {/* Animated Logo */} + setIsLogoHovered(true)} + onMouseLeave={() => setIsLogoHovered(false)} + > + + {/* Logo glow effect */} + + + {/* Logo image */} + + FeedX Logo + + + + + {/* Right side buttons */} +
+ + + + + + + + + + + + + + + +
+ {/* Theme Toggle */} + + + + + {/* Header Menu (Notifications, etc.) */} + + + + + {/* User Button with glow effect */} + + + + +
+
+
+
+
+ + {/* Floating particles (subtle) */} +
+ {[...Array(3)].map((_, i) => ( + + ))} +
+
+ ); +}; + +export default PageHeader; From 7f089ecf24cc88608b26ddc23faf5bd4cbd02fa2 Mon Sep 17 00:00:00 2001 From: SjxSubham Date: Mon, 29 Jun 2026 01:11:20 +0530 Subject: [PATCH 4/7] fixed hardcoded fallbacks for non-local resources. --- db/index.ts | 5 ++++- drizzle.config.ts | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/db/index.ts b/db/index.ts index 3f43038..b149c4d 100644 --- a/db/index.ts +++ b/db/index.ts @@ -2,7 +2,10 @@ import { drizzle } from 'drizzle-orm/postgres-js'; import postgres from 'postgres'; import * as schema from './schema'; -const connectionString = process.env.DATABASE_URL || 'postgres://localhost:5432/drizzle'; +if (!process.env.DATABASE_URL) { + throw new Error("DATABASE_URL environment variable is not defined"); +} +const connectionString = process.env.DATABASE_URL; const client = postgres(connectionString); export const db = drizzle(client, { schema }); \ No newline at end of file diff --git a/drizzle.config.ts b/drizzle.config.ts index 77729a6..4f72c64 100644 --- a/drizzle.config.ts +++ b/drizzle.config.ts @@ -14,7 +14,7 @@ export default defineConfig({ }, dbCredentials: { - url: process.env.DATABASE_URL || 'postgres://localhost:5432/drizzle' // 5432 optioanl + url: process.env.DATABASE_URL!, } }); \ No newline at end of file From 32002ea2b8ce2e2080ba02ef2cdf71f011393b8c Mon Sep 17 00:00:00 2001 From: SjxSubham Date: Mon, 29 Jun 2026 01:20:08 +0530 Subject: [PATCH 5/7] Create ast-scan.yml to perform security checks if i pushed some credential , hardcoded strings accidently --- .github/workflows/ast-scan.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 .github/workflows/ast-scan.yml diff --git a/.github/workflows/ast-scan.yml b/.github/workflows/ast-scan.yml new file mode 100644 index 0000000..50bd56f --- /dev/null +++ b/.github/workflows/ast-scan.yml @@ -0,0 +1,17 @@ +name: AST Structural Scan + +on: + push: + branches: [ main ] + pull_request: + branches: [ main ] + +jobs: + ast_grep_scan: + runs-on: ubuntu-latest + steps: + - name: Checkout Code + uses: actions/checkout@v4 + + - name: Run ast-grep Scan + uses: ast-grep/action@v1 From 7beff4901d15bbaaef9ca94c937a9d09154c5e25 Mon Sep 17 00:00:00 2001 From: SjxSubham Date: Mon, 29 Jun 2026 01:33:10 +0530 Subject: [PATCH 6/7] chore: upgrade Node.js engine requirement to v24 and update corresponding type definitions --- .nvmrc | 1 + package-lock.json | 21 +++++++++++++-------- package.json | 5 ++++- 3 files changed, 18 insertions(+), 9 deletions(-) create mode 100644 .nvmrc diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 0000000..a45fd52 --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +24 diff --git a/package-lock.json b/package-lock.json index 1c01143..7361cfa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -38,7 +38,7 @@ "tailwindcss-animate": "^1.0.7" }, "devDependencies": { - "@types/node": "^20", + "@types/node": "^24", "@types/pg": "^8.11.10", "@types/react": "^18", "@types/react-dom": "^18", @@ -49,6 +49,9 @@ "tailwindcss": "^3.4.1", "tsx": "^4.19.2", "typescript": "^5" + }, + "engines": { + "node": ">=24" } }, "node_modules/@alloc/quick-lru": { @@ -2701,11 +2704,12 @@ "dev": true }, "node_modules/@types/node": { - "version": "20.14.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.14.tgz", - "integrity": "sha512-d64f00982fS9YoOgJkAMolK7MN8Iq3TDdVjchbYHdEmjth/DHowx82GnoA+tVUAN+7vxfYUgAzi+JXbKNd2SDQ==", + "version": "24.13.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.13.2.tgz", + "integrity": "sha512-fRa09kZTgu8o71KFcDjUFuc7F+dEbZYZmkI0mg5YBTRs0yMKjYHsq/c0urDKeDb+D5qVgXOdFcuu+DZPKOITwA==", + "license": "MIT", "dependencies": { - "undici-types": "~5.26.4" + "undici-types": "~7.18.0" } }, "node_modules/@types/pg": { @@ -8086,9 +8090,10 @@ } }, "node_modules/undici-types": { - "version": "5.26.5", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", - "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==" + "version": "7.18.2", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.18.2.tgz", + "integrity": "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==", + "license": "MIT" }, "node_modules/uri-js": { "version": "4.4.1", diff --git a/package.json b/package.json index f2fedfc..89d223e 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,9 @@ "db:migrate": "drizzle-kit migrate", "db:studio": "drizzle-kit studio" }, + "engines": { + "node": ">=24" + }, "dependencies": { "@clerk/nextjs": "^5.2.13", "@heroicons/react": "^2.2.0", @@ -43,7 +46,7 @@ "tailwindcss-animate": "^1.0.7" }, "devDependencies": { - "@types/node": "^20", + "@types/node": "^24", "@types/pg": "^8.11.10", "@types/react": "^18", "@types/react-dom": "^18", From 520934e3abd7171dec379ceb894358bda0da622a Mon Sep 17 00:00:00 2001 From: SjxSubham Date: Mon, 29 Jun 2026 01:36:00 +0530 Subject: [PATCH 7/7] Delete .github/workflows/ast-scan.yml --- .github/workflows/ast-scan.yml | 17 ----------------- 1 file changed, 17 deletions(-) delete mode 100644 .github/workflows/ast-scan.yml diff --git a/.github/workflows/ast-scan.yml b/.github/workflows/ast-scan.yml deleted file mode 100644 index 50bd56f..0000000 --- a/.github/workflows/ast-scan.yml +++ /dev/null @@ -1,17 +0,0 @@ -name: AST Structural Scan - -on: - push: - branches: [ main ] - pull_request: - branches: [ main ] - -jobs: - ast_grep_scan: - runs-on: ubuntu-latest - steps: - - name: Checkout Code - uses: actions/checkout@v4 - - - name: Run ast-grep Scan - uses: ast-grep/action@v1