chore: create initial project snapshot

Capture the portfolio source, design references, and production assets with repository-specific ignore rules.
This commit is contained in:
2026-09-04 18:23:26 +03:30
commit 75c9a62b37
131 changed files with 4171 additions and 0 deletions

30
src/app/layout.tsx Normal file
View File

@@ -0,0 +1,30 @@
import type { Metadata } from 'next';
import { ThemeProvider } from '@/context/ThemeContext';
import '@/styles/globals.css';
export const metadata: Metadata = {
title: "Amirhossein Khalili | Dedicated Product Engineer",
description:
"Personal portfolio of Amirhossein Khalili, Product Engineer & Software Developer based in Iran.",
keywords: [
'Amirhossein Khalili',
'Product Engineer',
'Software Engineer',
'Full Stack Developer',
'Portfolio',
],
};
export default function RootLayout({
children,
}: {
children: React.ReactNode;
}) {
return (
<html lang="en" data-theme="light">
<body>
<ThemeProvider>{children}</ThemeProvider>
</body>
</html>
);
}

35
src/app/page.tsx Normal file
View File

@@ -0,0 +1,35 @@
import React from 'react';
import { ScenicHeroJourney } from '@/components/ScenicHeroJourney';
import { ProjectsSection } from '@/components/ProjectsSection';
import { ExperienceSection } from '@/components/ExperienceSection';
import { SkillsSection } from '@/components/SkillsSection';
import { EducationSection } from '@/components/EducationSection';
import { MilestonesSection } from '@/components/MilestonesSection';
import { FooterSection } from '@/components/FooterSection';
export default function Home() {
return (
<main className="desktop-canvas">
{/* 1. Hero & About Me River Journey (Seamless Scenic Background) */}
<ScenicHeroJourney />
{/* 2. Projects Carousel Section */}
<ProjectsSection />
{/* 3. Work Experience Timeline Section */}
<ExperienceSection />
{/* 4. Skills & Tools Matrix Section */}
<SkillsSection />
{/* 5. Education Foundation Section */}
<EducationSection />
{/* 6. Milestones & Awards Section */}
<MilestonesSection />
{/* 7. Footer CTA & Social Section */}
<FooterSection />
</main>
);
}