diff --git a/app/[carType]/layout.tsx b/app/[lang]/[carType]/layout.tsx
similarity index 100%
rename from app/[carType]/layout.tsx
rename to app/[lang]/[carType]/layout.tsx
diff --git a/app/[carType]/page.tsx b/app/[lang]/[carType]/page.tsx
similarity index 100%
rename from app/[carType]/page.tsx
rename to app/[lang]/[carType]/page.tsx
diff --git a/app/[lang]/layout.tsx b/app/[lang]/layout.tsx
new file mode 100644
index 0000000..9a69b7e
--- /dev/null
+++ b/app/[lang]/layout.tsx
@@ -0,0 +1,30 @@
+// app/[lang]/layout.tsx
+import { dir } from "i18next";
+import Header from "@/components/nav_foot/header";
+import Navbar from "@/components/nav_foot/navbar";
+import Footer from "@/components/nav_foot/footer";
+import Contact from "@/components/pageParts/contact";
+import UpScrollIcon from "@/components/upScroll";
+
+export default function LangLayout({
+ children,
+ params,
+}: Readonly<{
+ children: React.ReactNode;
+ params: { lang: "uz" | "ru" };
+}>) {
+ return (
+
+
+
+
+ {children}
+
+
+
+
+
+ );
+}
diff --git a/app/[lang]/page.tsx b/app/[lang]/page.tsx
new file mode 100644
index 0000000..49248a8
--- /dev/null
+++ b/app/[lang]/page.tsx
@@ -0,0 +1,23 @@
+import Products from "@/components/pageParts/products";
+import Texnika from "@/components/pageParts/texnika";
+import Offer from "@/components/pageParts/offer";
+import Faq from "@/components/pageParts/faq";
+import Partners from "@/components/pageParts/partners";
+import Map from "@/components/pageParts/map";
+import CustomSlider from "@/components/pageParts/newsSlider";
+
+export default function Home() {
+ return (
+
+ );
+}
diff --git a/app/globals.css b/app/globals.css
index 1de7869..c312b2e 100644
--- a/app/globals.css
+++ b/app/globals.css
@@ -52,21 +52,6 @@ body {
clip-path: polygon(100% 0, 55% 100%, 88% 100%);
}
-#contactClip{
- position: relative;
-}
-
-#contactClip::before{
-content:'';
-position: absolute;
-top:-40px;
-left: -50px;
-z-index: 1000;
-padding: 50px;
-background-color: #d38307;
-clip-path: polygon(100% 0, 55% 100%, 88% 100%);
-}
-
/* footer ekxkavator icon animation */
@keyframes icon_animatsion_tool {
from{
diff --git a/app/layout.tsx b/app/layout.tsx
index 351f2b7..0c716aa 100644
--- a/app/layout.tsx
+++ b/app/layout.tsx
@@ -1,12 +1,7 @@
+// app/layout.tsx
import type { Metadata } from "next";
import { Geist, Geist_Mono } from "next/font/google";
-import { dir } from "i18next";
import "./globals.css";
-import UpScrollIcon from "@/components/upScroll";
-import Contact from "@/components/pageParts/contact";
-import Footer from "@/components/nav_foot/footer";
-import Navbar from "@/components/nav_foot/navbar";
-import Header from "@/components/nav_foot/header";
const geistSans = Geist({
variable: "--font-geist-sans",
@@ -19,28 +14,17 @@ const geistMono = Geist_Mono({
});
export const metadata: Metadata = {
- title: "Create Next App",
- description: "Generated by create next app",
+ title: "My App",
+ description: "Multilingual Next.js 15 App",
};
export default function RootLayout({
children,
- params,
-}: Readonly<{
- children: React.ReactNode;
- params: { lang: string };
-}>) {
+}: Readonly<{ children: React.ReactNode }>) {
return (
-
-
-
-
+
+
{children}
-
-
-
);
diff --git a/app/page.tsx b/app/page.tsx
index 49248a8..ebe8cfe 100644
--- a/app/page.tsx
+++ b/app/page.tsx
@@ -1,23 +1,6 @@
-import Products from "@/components/pageParts/products";
-import Texnika from "@/components/pageParts/texnika";
-import Offer from "@/components/pageParts/offer";
-import Faq from "@/components/pageParts/faq";
-import Partners from "@/components/pageParts/partners";
-import Map from "@/components/pageParts/map";
-import CustomSlider from "@/components/pageParts/newsSlider";
+// app/page.tsx
+import { redirect } from "next/navigation";
export default function Home() {
- return (
-
- );
+ redirect("/uz");
}
diff --git a/next.config.ts b/next.config.ts
index 0ebf6ac..0b9b31c 100644
--- a/next.config.ts
+++ b/next.config.ts
@@ -1,8 +1,6 @@
-import type { NextConfig } from "next";
-const {i18n} = require("./next-i18next.config");
-
-const nextConfig: NextConfig = {
- i18n,
+// next.config.ts
+const nextConfig = {
+ reactStrictMode: true,
};
export default nextConfig;