From 43762d050e62bb651f584fc7625a8a10ac0ff74b Mon Sep 17 00:00:00 2001 From: Nikita Egorov Date: Sun, 6 Sep 2026 22:12:09 +0500 Subject: [PATCH] refactor: migrate project structure --- app/page.tsx | 69 --------------------- public/file.svg | 1 - public/globe.svg | 1 - public/next.svg | 1 - public/vercel.svg | 1 - public/window.svg | 1 - {app => src/app}/favicon.ico | Bin {app => src/app}/globals.css | 0 {app => src/app}/layout.tsx | 10 +-- src/app/page.tsx | 7 +++ src/shared/config/navigation/navigation.ts | 12 ++++ src/shared/config/navigation/types.ts | 4 ++ src/views/home/index.ts | 1 + src/views/home/ui/HomePage.tsx | 15 +++++ src/widgets/header/index.ts | 1 + src/widgets/header/ui/Header.tsx | 27 ++++++++ tsconfig.json | 2 +- 17 files changed, 74 insertions(+), 79 deletions(-) delete mode 100644 app/page.tsx delete mode 100644 public/file.svg delete mode 100644 public/globe.svg delete mode 100644 public/next.svg delete mode 100644 public/vercel.svg delete mode 100644 public/window.svg rename {app => src/app}/favicon.ico (100%) rename {app => src/app}/globals.css (100%) rename {app => src/app}/layout.tsx (78%) create mode 100644 src/app/page.tsx create mode 100644 src/shared/config/navigation/navigation.ts create mode 100644 src/shared/config/navigation/types.ts create mode 100644 src/views/home/index.ts create mode 100644 src/views/home/ui/HomePage.tsx create mode 100644 src/widgets/header/index.ts create mode 100644 src/widgets/header/ui/Header.tsx diff --git a/app/page.tsx b/app/page.tsx deleted file mode 100644 index c887311..0000000 --- a/app/page.tsx +++ /dev/null @@ -1,69 +0,0 @@ -import Image from "next/image"; - -export default function Home() { - return ( -
-
- Next.js logo -
-

- To get started, edit the{" "} - - page.tsx - {" "} - file. -

-

- Looking for a starting point or more instructions? Head over to{" "} - - Templates - {" "} - or the{" "} - - Learning - {" "} - center. -

-
-
- - Vercel logomark - Deploy Now - - - Documentation - -
-
-
- ); -} diff --git a/public/file.svg b/public/file.svg deleted file mode 100644 index 004145c..0000000 --- a/public/file.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/public/globe.svg b/public/globe.svg deleted file mode 100644 index 567f17b..0000000 --- a/public/globe.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/public/next.svg b/public/next.svg deleted file mode 100644 index 5174b28..0000000 --- a/public/next.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/public/vercel.svg b/public/vercel.svg deleted file mode 100644 index 7705396..0000000 --- a/public/vercel.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/public/window.svg b/public/window.svg deleted file mode 100644 index b2b2a44..0000000 --- a/public/window.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/favicon.ico b/src/app/favicon.ico similarity index 100% rename from app/favicon.ico rename to src/app/favicon.ico diff --git a/app/globals.css b/src/app/globals.css similarity index 100% rename from app/globals.css rename to src/app/globals.css diff --git a/app/layout.tsx b/src/app/layout.tsx similarity index 78% rename from app/layout.tsx rename to src/app/layout.tsx index 9852c15..e73a2e6 100644 --- a/app/layout.tsx +++ b/src/app/layout.tsx @@ -13,11 +13,11 @@ const geistMono = Geist_Mono({ }); export const metadata: Metadata = { - title: "Create Next App", - description: "Generated by create next app", + title: "Personal Site", + description: "Personal website", }; -export default function RootLayout({ children }: LayoutProps<"/">) { +const RootLayout = ({ children }: LayoutProps<"/">) => { return ( ) { {children} ); -} +}; + +export default RootLayout; \ No newline at end of file diff --git a/src/app/page.tsx b/src/app/page.tsx new file mode 100644 index 0000000..2b2285f --- /dev/null +++ b/src/app/page.tsx @@ -0,0 +1,7 @@ +import { HomePage } from "@/views/home"; + +const Page = () => { + return ; +}; + +export default Page; \ No newline at end of file diff --git a/src/shared/config/navigation/navigation.ts b/src/shared/config/navigation/navigation.ts new file mode 100644 index 0000000..1b86db9 --- /dev/null +++ b/src/shared/config/navigation/navigation.ts @@ -0,0 +1,12 @@ +import type { NavigationItem } from "./types"; + +export const navigation: NavigationItem[] = [ + { + label: "About me", + href: "#about", + }, + { + label: "Projects", + href: "#projects", + }, +]; \ No newline at end of file diff --git a/src/shared/config/navigation/types.ts b/src/shared/config/navigation/types.ts new file mode 100644 index 0000000..3a52df1 --- /dev/null +++ b/src/shared/config/navigation/types.ts @@ -0,0 +1,4 @@ +export type NavigationItem = { + label: string; + href: string; +}; \ No newline at end of file diff --git a/src/views/home/index.ts b/src/views/home/index.ts new file mode 100644 index 0000000..7e69d6f --- /dev/null +++ b/src/views/home/index.ts @@ -0,0 +1 @@ +export { default as HomePage } from "./ui/HomePage"; \ No newline at end of file diff --git a/src/views/home/ui/HomePage.tsx b/src/views/home/ui/HomePage.tsx new file mode 100644 index 0000000..9d42497 --- /dev/null +++ b/src/views/home/ui/HomePage.tsx @@ -0,0 +1,15 @@ +import { Header } from "@/widgets/header"; + +const HomePage = () => { + return ( + <> +
+ +
+

Personal Site

+
+ + ); +}; + +export default HomePage; \ No newline at end of file diff --git a/src/widgets/header/index.ts b/src/widgets/header/index.ts new file mode 100644 index 0000000..18d0bb5 --- /dev/null +++ b/src/widgets/header/index.ts @@ -0,0 +1 @@ +export { default as Header } from "./ui/Header"; \ No newline at end of file diff --git a/src/widgets/header/ui/Header.tsx b/src/widgets/header/ui/Header.tsx new file mode 100644 index 0000000..476df63 --- /dev/null +++ b/src/widgets/header/ui/Header.tsx @@ -0,0 +1,27 @@ +import { navigation } from "@/shared/config/navigation/navigation"; + +const Header = () => { + return ( +
+ +
+ ); +}; + +export default Header; \ No newline at end of file diff --git a/tsconfig.json b/tsconfig.json index 3a13f90..cf9c65d 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -19,7 +19,7 @@ } ], "paths": { - "@/*": ["./*"] + "@/*": ["./src/*"] } }, "include": [