Skip to content

Commit 60bfff5

Browse files
Merge pull request #84 from Suraj-kumar00/feature
Feature project enhancement
2 parents 4b6bfe7 + b0f529c commit 60bfff5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

72 files changed

+6136
-4035
lines changed

.env.example

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=/generate
1111
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=/
1212

1313
#Openrouter api key
14-
OPENROUTER_API_KEY="your openrouter api key"
14+
GEMINI_API_KEY=""
1515

1616
# Stripe api key
1717
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY="your stripe publishable key"
@@ -22,5 +22,9 @@ EMAIL_USER=
2222
EMAIL_PASS=
2323

2424

25-
DATABASE_URL="postgresql://postgres.ieomcyudnkxnbbzkvynt:[your-password]@aws-0-ap-south-1.pooler.supabase.com:5432/postgres"
25+
DATABASE_URL="postgresql://postgres:your-password@db.ieomcyudnkxnbbzkvynt.supabase.co:5432/postgres"
2626

27+
# Razorpay Configuration
28+
RAZORPAY_KEY_ID="your_razorpay_key_id"
29+
RAZORPAY_KEY_SECRET="your_razorpay_key_secret"
30+
NEXT_PUBLIC_RAZORPAY_KEY_ID="your_razorpay_key_id"

next.config.js

Lines changed: 48 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,56 @@
11
/** @type {import('next').NextConfig} */
22
const nextConfig = {
33
transpilePackages: ['react-toastify'],
4-
webpack: (config) => {
4+
// ✅ FIXED: Updated for Next.js 15 stable
5+
serverExternalPackages: ['@prisma/client'], // Moved from experimental
6+
turbopack: {
7+
// ✅ FIXED: Moved from experimental.turbo
8+
rules: {
9+
'*.svg': {
10+
loaders: ['@svgr/webpack'],
11+
as: '*.js',
12+
},
13+
},
14+
},
15+
experimental: {
16+
// ✅ FIXED: Only keep valid experimental features
17+
optimizePackageImports: ['lucide-react', '@radix-ui/react-icons'],
18+
},
19+
images: {
20+
remotePatterns: [
21+
{
22+
protocol: 'https',
23+
hostname: 'images.unsplash.com',
24+
},
25+
],
26+
formats: ['image/webp', 'image/avif'],
27+
},
28+
webpack: (config, { dev, isServer }) => {
29+
// Optimize bundle size in production
30+
if (!dev && !isServer) {
31+
config.optimization.splitChunks = {
32+
chunks: 'all',
33+
cacheGroups: {
34+
vendor: {
35+
test: /[\\/]node_modules[\\/]/,
36+
name: 'vendors',
37+
chunks: 'all',
38+
},
39+
common: {
40+
name: 'common',
41+
minChunks: 2,
42+
chunks: 'all',
43+
},
44+
},
45+
};
46+
}
47+
548
config.resolve.alias = {
649
...config.resolve.alias,
7-
}
8-
return config
50+
};
51+
52+
return config;
953
},
1054
}
1155

12-
module.exports = nextConfig
56+
module.exports = nextConfig;

next.config.mjs

Lines changed: 0 additions & 4 deletions
This file was deleted.

package.json

Lines changed: 27 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,49 +3,50 @@
33
"version": "0.1.0",
44
"private": true,
55
"scripts": {
6-
"dev": "next dev",
6+
"dev": "next dev --turbopack",
77
"build": "next build",
88
"start": "next start",
9-
"lint": "next lint"
9+
"lint": "next lint",
10+
"db:generate": "prisma generate",
11+
"db:push": "prisma db push",
12+
"db:migrate": "prisma migrate dev"
1013
},
1114
"dependencies": {
12-
"@clerk/clerk-react": "^5.24.1",
13-
"@clerk/nextjs": "^5.7.5",
15+
"@clerk/clerk-react": "^5.36.0",
16+
"@clerk/nextjs": "^6.26.0",
1417
"@clerk/themes": "^2.2.20",
1518
"@hookform/resolvers": "^3.10.0",
16-
"@kinde-oss/kinde-auth-nextjs": "^2.5.3",
1719
"@prisma/client": "^5.22.0",
18-
"@radix-ui/react-dialog": "^1.1.6",
19-
"@radix-ui/react-dropdown-menu": "^2.1.6",
20+
"@radix-ui/react-dialog": "^1.1.14",
21+
"@radix-ui/react-dropdown-menu": "^2.1.15",
2022
"@radix-ui/react-label": "^2.1.2",
23+
"@radix-ui/react-progress": "^1.1.7",
2124
"@radix-ui/react-slot": "^1.1.2",
2225
"@radix-ui/react-toast": "^1.2.6",
2326
"@radix-ui/react-tooltip": "^1.1.8",
24-
"@shadcn/ui": "^0.0.4",
2527
"@stripe/stripe-js": "^4.10.0",
2628
"@supabase/supabase-js": "^2.49.1",
2729
"@tailwindcss/typography": "^0.5.16",
2830
"@types/nodemailer": "^6.4.17",
29-
"@types/react-toastify": "^4.1.0",
31+
"@typescript-eslint/parser": "^8.38.0",
3032
"axios": "^1.8.2",
3133
"button": "^1.1.1",
3234
"class-variance-authority": "^0.7.1",
3335
"clsx": "^2.1.1",
3436
"dotenv": "^16.4.7",
3537
"dropdown-menu": "^0.1.1",
36-
"framer-motion": "^11.18.2",
38+
"framer-motion": "^12.23.9",
3739
"label": "^0.2.2",
3840
"lucide-react": "^0.428.0",
39-
"next": "14.2.5",
40-
"next-themes": "^0.3.0",
41+
"next": "15.4.4",
42+
"next-themes": "^0.4.6",
4143
"nodemailer": "^6.10.0",
42-
"openai": "^4.86.2",
43-
"react": "^18.3.1",
44-
"react-dom": "^18.3.1",
44+
"razorpay": "^2.9.6",
45+
"react": "^19.0.0",
46+
"react-dom": "^19.0.0",
4547
"react-hook-form": "^7.54.2",
4648
"react-toastify": "^11.0.5",
4749
"stripe": "^16.12.0",
48-
"svix": "^1.61.3",
4950
"tailwind-merge": "^2.6.0",
5051
"tailwindcss-animate": "^1.0.7",
5152
"toast": "link:@components/ui/toast",
@@ -54,13 +55,19 @@
5455
},
5556
"devDependencies": {
5657
"@types/node": "^20.17.24",
57-
"@types/react": "^18.3.18",
58-
"@types/react-dom": "^18.3.5",
59-
"eslint": "^8.57.1",
60-
"eslint-config-next": "14.2.5",
58+
"@types/react": "^19.0.0",
59+
"@types/react-dom": "^19.0.0",
60+
"eslint": "^9.31.0",
61+
"eslint-config-next": "15.4.4",
6162
"postcss": "^8.5.3",
6263
"prisma": "^5.22.0",
6364
"tailwindcss": "^3.4.17",
6465
"typescript": "^5.8.2"
66+
},
67+
"pnpm": {
68+
"overrides": {
69+
"@types/react": "19.1.8",
70+
"@types/react-dom": "19.1.6"
71+
}
6572
}
6673
}

0 commit comments

Comments
 (0)