diff --git a/app/(auth)/login/page.tsx b/app/(auth)/login/page.tsx
index afbc75f..c060920 100644
--- a/app/(auth)/login/page.tsx
+++ b/app/(auth)/login/page.tsx
@@ -1,7 +1,8 @@
'use client';
import { useState } from 'react';
-import { Github, User } from 'lucide-react';
+import { FaGithub } from 'react-icons/fa';
+import { MdPerson } from 'react-icons/md';
import { useRouter } from 'next/navigation';
import { signIn } from 'next-auth/react';
@@ -96,7 +97,7 @@ export default function LoginPage() {
className="w-full bg-primary hover:bg-primary-hover text-primary-foreground rounded-md"
size="lg"
>
-
+
{isLoading ? 'Signing in...' : 'Sign in / Register'}
@@ -121,7 +122,7 @@ export default function LoginPage() {
size="lg"
variant="outline"
>
-
+
Continue with GitHub
diff --git a/app/(dashboard)/projects/[id]/auth/page.tsx b/app/(dashboard)/projects/[id]/auth/page.tsx
index 7ab31ca..69e2053 100644
--- a/app/(dashboard)/projects/[id]/auth/page.tsx
+++ b/app/(dashboard)/projects/[id]/auth/page.tsx
@@ -5,8 +5,8 @@
'use client';
-import { ExternalLink, Key } from 'lucide-react';
-import { Github } from 'lucide-react';
+import { FaGithub } from 'react-icons/fa';
+import { MdOpenInNew, MdVpnKey } from 'react-icons/md';
import { useParams } from 'next/navigation';
import { EnvVarSection } from '@/components/config/env-var-section';
@@ -97,7 +97,7 @@ function AuthPageContent() {
@@ -139,7 +139,7 @@ function AuthPageContent() {
{/* NextAuth Configuration Section */}
-
+
NextAuth Configuration
diff --git a/app/(dashboard)/projects/[id]/github/page.tsx b/app/(dashboard)/projects/[id]/github/page.tsx
index 25b7de2..6fff018 100644
--- a/app/(dashboard)/projects/[id]/github/page.tsx
+++ b/app/(dashboard)/projects/[id]/github/page.tsx
@@ -1,7 +1,8 @@
'use client';
import { useState } from 'react';
-import { ExternalLink, Github, Loader2, RefreshCw } from 'lucide-react';
+import { FaGithub } from 'react-icons/fa';
+import { MdOpenInNew, MdRefresh } from 'react-icons/md';
import { useParams, useRouter } from 'next/navigation';
import { toast } from 'sonner';
@@ -84,7 +85,7 @@ export default function GithubPage() {
{/* Visual Header */}
-
+
@@ -111,7 +112,7 @@ export default function GithubPage() {
className="flex items-center gap-2 hover:underline text-primary hover:text-primary-hover font-mono text-sm break-all"
>
{project.githubRepo}
-
+
@@ -123,12 +124,12 @@ export default function GithubPage() {
>
{isCommitting ? (
<>
-
+
Pushing...
>
) : (
<>
-
+
Push Changes
>
)}
@@ -149,12 +150,12 @@ export default function GithubPage() {
>
{isInitializing ? (
<>
-
+
Creating Repository...
>
) : (
<>
-
+
Initialize & Push to GitHub
>
)}
diff --git a/app/(dashboard)/projects/[id]/payment/page.tsx b/app/(dashboard)/projects/[id]/payment/page.tsx
index 381dad9..94e91eb 100644
--- a/app/(dashboard)/projects/[id]/payment/page.tsx
+++ b/app/(dashboard)/projects/[id]/payment/page.tsx
@@ -5,7 +5,7 @@
'use client';
-import { ExternalLink } from 'lucide-react';
+import { MdOpenInNew } from 'react-icons/md';
import { useParams } from 'next/navigation';
import { EnvVarSection } from '@/components/config/env-var-section';
@@ -100,7 +100,7 @@ function PaymentPageContent() {
className="text-xs text-primary hover:text-primary/80 flex items-center gap-1.5 transition-colors"
>
Stripe Dashboard
-
+
@@ -142,7 +142,7 @@ function PaymentPageContent() {
className="text-xs text-primary hover:text-primary/80 flex items-center gap-1.5 transition-colors"
>
PayPal Developer
-
+
diff --git a/app/error.tsx b/app/error.tsx
index 0b77ad4..69a9318 100644
--- a/app/error.tsx
+++ b/app/error.tsx
@@ -1,7 +1,7 @@
'use client';
import { useEffect } from 'react';
-import { AlertCircle, Home,RefreshCw } from 'lucide-react';
+import { MdErrorOutline, MdHome, MdRefresh } from 'react-icons/md';
import Link from 'next/link';
import { Button } from '@/components/ui/button';
@@ -24,7 +24,7 @@ export default function Error({
{/* Error Header */}
Something went wrong
@@ -52,7 +52,7 @@ export default function Error({
onClick={reset}
className="w-full bg-blue-600 hover:bg-blue-700 text-white justify-start gap-3 rounded-md"
>
-
+
Try Again
@@ -61,7 +61,7 @@ export default function Error({
variant="outline"
className="w-full border-gray-700 text-gray-300 hover:bg-gray-900 hover:text-white justify-start gap-3 rounded-md"
>
-
+
Go to Home
diff --git a/app/not-found.tsx b/app/not-found.tsx
index 49ea5ce..28c0de1 100644
--- a/app/not-found.tsx
+++ b/app/not-found.tsx
@@ -1,4 +1,4 @@
-import { ArrowLeft,FileQuestion, Home } from 'lucide-react';
+import { MdArrowBack, MdHelpOutline, MdHome } from 'react-icons/md';
import Link from 'next/link';
import { Button } from '@/components/ui/button';
@@ -10,7 +10,7 @@ export default function NotFound() {
{/* Header */}
-
+
Page Not Found
@@ -36,7 +36,7 @@ export default function NotFound() {
size="lg"
className="w-full bg-blue-600 hover:bg-blue-700 text-white justify-start gap-3 rounded-md"
>
-
+
Go to Home
@@ -46,7 +46,7 @@ export default function NotFound() {
variant="outline"
className="w-full border-gray-700 text-gray-300 hover:bg-gray-900 hover:text-white justify-start gap-3 rounded-md"
>
-
+
Back to Projects
diff --git a/components/config/env-var-section.tsx b/components/config/env-var-section.tsx
index 024d537..6eee7e9 100644
--- a/components/config/env-var-section.tsx
+++ b/components/config/env-var-section.tsx
@@ -7,7 +7,15 @@
'use client';
import { useState } from 'react';
-import { Copy, Eye, EyeOff, Hash, Plus, Save, X } from 'lucide-react';
+import {
+ MdAdd,
+ MdClose,
+ MdContentCopy,
+ MdSave,
+ MdTag,
+ MdVisibility,
+ MdVisibilityOff,
+} from 'react-icons/md';
import { toast } from 'sonner';
import {
@@ -194,9 +202,9 @@ export function EnvVarSection({
onClick={() => handleCopyKey(variable.key)}
className="flex items-center gap-1.5 text-xs bg-[#2d2d30] border border-[#3e3e42] px-2 py-0.5 rounded text-[#3794ff] font-mono hover:bg-[#37373d] hover:border-[#3794ff]/50 transition-colors cursor-pointer group"
>
-
+
{variable.key}
-
+
@@ -247,9 +255,9 @@ export function EnvVarSection({
className="absolute right-2 top-1/2 -translate-y-1/2 text-[#858585] hover:text-[#cccccc]"
>
{showSecrets[index] ? (
-
+
) : (
-
+
)}
)}
@@ -277,7 +285,7 @@ export function EnvVarSection({
disabled={!canUpdate || saving}
className="text-[#858585] hover:text-[#f48771] opacity-0 group-hover:opacity-100 transition-opacity disabled:opacity-40 disabled:cursor-not-allowed"
>
-
+
)}
@@ -309,7 +317,7 @@ export function EnvVarSection({
size="sm"
className="text-[#cccccc] hover:text-white hover:bg-[#37373d] h-8"
>
-
+
Add Variable
)}
@@ -322,7 +330,7 @@ export function EnvVarSection({
disabled={!canUpdate || saving || !hasChanges}
className="bg-[#3794ff] hover:bg-[#4fc1ff] text-white h-8"
>
-
+
{saving ? 'Saving...' : 'Save Changes'}
diff --git a/components/dialog/create-project-dialog.tsx b/components/dialog/create-project-dialog.tsx
index e81a9ce..3a371a8 100644
--- a/components/dialog/create-project-dialog.tsx
+++ b/components/dialog/create-project-dialog.tsx
@@ -8,7 +8,7 @@
'use client';
import { useState } from 'react';
-import { Save } from 'lucide-react';
+import { MdSave } from 'react-icons/md';
import { useRouter } from 'next/navigation';
import { toast } from 'sonner';
@@ -137,7 +137,7 @@ export default function CreateProjectDialog({ open, onOpenChange }: CreateProjec
disabled={isCreating || !projectName.trim()}
className="bg-primary hover:bg-primary/90 text-primary-foreground disabled:opacity-50"
>
-
+
{isCreating ? 'Creating...' : 'Create Project'}
@@ -589,7 +590,7 @@ export default function SettingsDialog({
}
className="bg-primary hover:bg-primary/90 text-primary-foreground"
>
-
+
{isAnthropicLoading ? 'Saving...' : 'Save Configuration'}
@@ -659,7 +660,7 @@ export default function SettingsDialog({
disabled={isGithubLoading}
className="bg-primary hover:bg-primary/90 text-primary-foreground"
>
-
+
{isGithubLoading ? 'Connecting...' : 'Connect GitHub Account'}
diff --git a/components/features/projectList/EmptyProjectCard.tsx b/components/features/projectList/EmptyProjectCard.tsx
index fcc4bd0..222a0e9 100644
--- a/components/features/projectList/EmptyProjectCard.tsx
+++ b/components/features/projectList/EmptyProjectCard.tsx
@@ -1,7 +1,7 @@
'use client';
import { useState } from 'react';
-import { Plus } from 'lucide-react';
+import { MdAdd } from 'react-icons/md';
import CreateProjectDialog from '@/components/dialog/create-project-dialog';
import { Card } from '@/components/ui/card';
@@ -22,7 +22,7 @@ export default function EmptyProjectCard() {
onClick={() => setCreateModalOpen(true)}
>
Create new project
diff --git a/components/features/projectList/ProjectCard.tsx b/components/features/projectList/ProjectCard.tsx
index 9f1b69e..c38ceb0 100644
--- a/components/features/projectList/ProjectCard.tsx
+++ b/components/features/projectList/ProjectCard.tsx
@@ -6,7 +6,7 @@
import { memo } from 'react';
import type { Prisma } from '@prisma/client';
-import { Clock } from 'lucide-react';
+import { MdAccessTime } from 'react-icons/md';
import Link from 'next/link';
import { Badge } from '@/components/ui/badge';
@@ -70,7 +70,7 @@ const ProjectCard = memo(({ project }: ProjectCardProps) => {