15 Commits

Author SHA1 Message Date
4b493581a9 Update src/app/page.tsx 2026-03-07 12:12:57 +00:00
8272551ef8 Update theme colors 2026-03-07 12:12:17 +00:00
3afbc7686d Update theme colors 2026-03-07 11:57:24 +00:00
2a9375ecd3 Update theme colors 2026-03-07 11:57:11 +00:00
4bb11103d0 Update theme colors 2026-03-07 11:56:43 +00:00
4c9a84356d Update theme colors 2026-03-07 11:56:16 +00:00
8d0460327b Update src/app/page.tsx 2026-03-07 11:47:56 +00:00
4c2efa370d Update src/app/page.tsx 2026-03-07 11:44:47 +00:00
a3f088a8b3 Update src/app/layout.tsx 2026-03-07 11:44:47 +00:00
9ecd7ba27f Merge version_2 into main
Merge version_2 into main
2026-03-07 11:40:32 +00:00
77d1e5aeec Update src/app/page.tsx 2026-03-07 11:40:28 +00:00
c572c39d1a Update src/app/layout.tsx 2026-03-07 11:40:27 +00:00
4961629b89 Merge version_1 into main
Merge version_1 into main
2026-03-07 11:37:52 +00:00
0a2455c730 Merge version_1 into main
Merge version_1 into main
2026-03-07 11:36:35 +00:00
a117f539fc Merge version_1 into main
Merge version_1 into main
2026-03-07 11:34:56 +00:00
3 changed files with 31 additions and 62 deletions

View File

@@ -1,57 +1,28 @@
import type { Metadata } from "next";
import { Halant } from "next/font/google";
import { Inter } from "next/font/google";
import { Nunito } from "next/font/google";
import { Geist, Geist_Mono } from "next/font/google";
import "./globals.css";
import { ServiceWrapper } from "@/components/ServiceWrapper";
import Tag from "@/tag/Tag";
const halant = Halant({
variable: "--font-halant", subsets: ["latin"],
weight: ["300", "400", "500", "600", "700"],
const geist = Geist({
variable: "--font-geist-sans", subsets: ["latin"],
});
const inter = Inter({
variable: "--font-inter", subsets: ["latin"],
});
const nunito = Nunito({
variable: "--font-nunito", subsets: ["latin"],
const geistMono = Geist_Mono({
variable: "--font-geist-mono", subsets: ["latin"],
});
export const metadata: Metadata = {
title: "Hasanboy - Frontend Developer & Mentor | Portfolio", description: "Frontend developer va mentor. React, JavaScript ga expert. Custom web development, mentoring services va 50+ completed projects.", keywords: "frontend developer, React developer, JavaScript expert, web development, mentoring, Chust", metadataBase: new URL("https://hasanboy-portfolio.com"),
alternates: {
canonical: "https://hasanboy-portfolio.com"},
openGraph: {
title: "Hasanboy - Frontend Developer & Mentor", description: "Professional frontend development and mentoring services. Expert in React, JavaScript, and modern web technologies.", url: "https://hasanboy-portfolio.com", siteName: "Hasanboy Portfolio", type: "website", images: [
{
url: "http://img.b2bpic.net/free-photo/middle-eastern-manager-examines-infographics-oversee-business-operations_482257-128607.jpg", alt: "frontend developer workspace portfolio"},
],
},
twitter: {
card: "summary_large_image", title: "Hasanboy - Frontend Developer & Mentor", description: "Explore professional frontend development and mentoring services.", images: ["http://img.b2bpic.net/free-photo/middle-eastern-manager-examines-infographics-oversee-business-operations_482257-128607.jpg"],
},
robots: {
index: true,
follow: true,
},
};
title: "Create Next App", description: "Generated by create next app"};
export default function RootLayout({
children,
}: Readonly<{
}: {
children: React.ReactNode;
}>) {
}) {
return (
<html lang="en" suppressHydrationWarning>
<ServiceWrapper>
<body
className={`${halant.variable} ${inter.variable} ${nunito.variable} antialiased`}
>
<Tag />
{children}
<html lang="en">
<body className={`${geist.variable} ${geistMono.variable} antialiased`}>
{children}
<script
dangerouslySetInnerHTML={{
__html: `
@@ -1419,7 +1390,6 @@ export default function RootLayout({
}}
/>
</body>
</ServiceWrapper>
</html>
);
}

View File

@@ -9,7 +9,7 @@ import ProductCardThree from '@/components/sections/product/ProductCardThree';
import BlogCardTwo from '@/components/sections/blog/BlogCardTwo';
import ContactCTA from '@/components/sections/contact/ContactCTA';
import FooterCard from '@/components/sections/footer/FooterCard';
import { Code, Users, Award, Globe, Sparkles, Briefcase, Mail, BookOpen, ShoppingCart, BarChart3, Settings, Database, Lock, Palette, Smartphone, Zap, Layers, Github, Linkedin, MessageSquare } from 'lucide-react';
import { Code, Users, Award, Globe, Sparkles, Briefcase, Mail, BookOpen, ShoppingCart, BarChart3, Settings, Database, Lock, Palette, Smartphone, Zap, Layers, Github, Linkedin, MessageSquare, ArrowRight } from 'lucide-react';
export default function LandingPage() {
return (
@@ -34,7 +34,7 @@ export default function LandingPage() {
{ name: "Blog", id: "blog" },
{ name: "Boglanish", id: "contact" }
]}
brandName="Hasanboy"
brandName="Bobur "
bottomLeftText="Chust, Fergana"
bottomRightText="hasanboyleo97@gmail.com"
/>
@@ -42,7 +42,7 @@ export default function LandingPage() {
<div id="hero" data-section="hero">
<HeroSplitDoubleCarousel
title="Men Nurmuhammadov Hasanboy"
title="Men Xomidjonov Boburjon"
description="Front-end developer va mentor. React, JavaScript, va modern web technologies bilan ishlaymadam. Chust shahrida o'z kompaniyamni boshqaraman va dars bera daman."
tag="Portfolio"
tagIcon={Code}
@@ -75,8 +75,8 @@ export default function LandingPage() {
metrics={[
{ icon: Code, label: "Tugallangan Loyihalar", value: "50+" },
{ icon: Users, label: "O'quvchilar va Hamkorlar", value: "100+" },
{ icon: Award, label: "Tajriba Yillari", value: "5+" },
{ icon: Globe, label: "React Projects", value: "30+" }
{ icon: Award, label: "Tajriba Yillari", value: "3+" },
{ icon: Globe, label: "React Projects", value: "10+" }
]}
metricsAnimation="slide-up"
useInvertedBackground={true}
@@ -144,7 +144,7 @@ export default function LandingPage() {
<div id="services" data-section="services">
<FeatureBento
title="Mening Hizmatlar"
title="Mening Hizmatlarim"
description="Faqat web-sayt yaratish emas, balki to'liq digital solution. Custom development, mentoring, va long-term support bilan sizning business-ingizni o'stiramiz."
tag="Xizmatlar"
tagIcon={Briefcase}
@@ -178,7 +178,7 @@ export default function LandingPage() {
<div id="blog" data-section="blog">
<BlogCardTwo
title="Mening Blog"
title="Mening Blogim"
description="Frontend development, JavaScript tips, React tutorials va web development best practices haqida maqolalar."
tag="Blog"
tagIcon={BookOpen}
@@ -189,15 +189,15 @@ export default function LandingPage() {
blogs={[
{
id: "1", category: ["React", "JavaScript"],
title: "React Hooks: Beginners Guide", excerpt: "React hooks bilan ishlashning asoslari, useState, useEffect va custom hooks qanday qilib foydalanish haqida.", imageSrc: "http://img.b2bpic.net/free-vector/flat-design-content-management-system-concept_23-2148818636.jpg?_wi=2", imageAlt: "React hooks tutorial", authorName: "Hasanboy", authorAvatar: "http://img.b2bpic.net/free-photo/talking-work_1098-13062.jpg", date: "15 Jan 2025"
title: "React Hooks: Beginners Guide", excerpt: "React hooks bilan ishlashning asoslari, useState, useEffect va custom hooks qanday qilib foydalanish haqida.", imageSrc: "http://img.b2bpic.net/free-vector/flat-design-content-management-system-concept_23-2148818636.jpg?_wi=2", imageAlt: "React hooks tutorial", authorName: "Hasanboy", authorAvatar: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AcDue4Q5MkJj7Me70vwpIaxPPK/uploaded-1772885414684-oe8w2d92.png", date: "15 Jan 2025"
},
{
id: "2", category: ["JavaScript", "Performance"],
title: "JavaScript Performance Tips", excerpt: "Web-saytlar tezligini oshirish uchun muhim JavaScript optimization texnikalarinig haqida amaliy maslahatlar.", imageSrc: "http://img.b2bpic.net/free-vector/gradient-ui-ux-landing-page_23-2149056162.jpg", imageAlt: "Performance optimization", authorName: "Hasanboy", authorAvatar: "http://img.b2bpic.net/free-photo/talking-work_1098-13062.jpg", date: "10 Jan 2025"
title: "JavaScript Performance Tips", excerpt: "Web-saytlar tezligini oshirish uchun muhim JavaScript optimization texnikalarinig haqida amaliy maslahatlar.", imageSrc: "http://img.b2bpic.net/free-vector/gradient-ui-ux-landing-page_23-2149056162.jpg", imageAlt: "Performance optimization", authorName: "Hasanboy", authorAvatar: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AcDue4Q5MkJj7Me70vwpIaxPPK/uploaded-1772885414684-oe8w2d92.png", date: "10 Jan 2025"
},
{
id: "3", category: ["CSS", "Design"],
title: "Responsive Design Best Practices", excerpt: "Modern responsive web design principles, mobile-first approach va CSS Grid/Flexbox mastery.", imageSrc: "http://img.b2bpic.net/free-vector/shopping-online-landing-page-illustrated_23-2148518997.jpg", imageAlt: "Responsive design tips", authorName: "Hasanboy", authorAvatar: "http://img.b2bpic.net/free-photo/talking-work_1098-13062.jpg", date: "05 Jan 2025"
title: "Responsive Design Best Practices", excerpt: "Modern responsive web design principles, mobile-first approach va CSS Grid/Flexbox mastery.", imageSrc: "http://img.b2bpic.net/free-vector/shopping-online-landing-page-illustrated_23-2148518997.jpg", imageAlt: "Responsive design tips", authorName: "Hasanboy", authorAvatar: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3AcDue4Q5MkJj7Me70vwpIaxPPK/uploaded-1772885414684-oe8w2d92.png", date: "05 Jan 2025"
}
]}
carouselMode="buttons"
@@ -209,11 +209,10 @@ export default function LandingPage() {
tag="Bog'lanish"
tagIcon={Mail}
tagAnimation="slide-up"
title="Murojaat Qiling va Loyihani Boshlaylik"
description="Sizning web-sayt yoki application loyihasi haqida gaplashishga tayyor. Qisqa vaqt ichida siz bilan bog'lanamiz va tafsil bilan majburiyatlarni muhokama qilamiz."
title="Loyihangizni Boshlaylik"
description="Qisqa vaqt ichida siz bilan bog'lanamiz va tafsil bilan majburiyatlarni muhokama qilamiz."
buttons={[
{ text: "Email: hasanboyleo97@gmail.com", href: "mailto:hasanboyleo97@gmail.com" },
{ text: "Telefon: +998 88 371 52 71", href: "tel:+998883715271" }
{ text: "Loyihani Boshlash", href: "mailto:hasanboyleo97@gmail.com" }
]}
buttonAnimation="slide-up"
background={{ variant: "plain" }}
@@ -223,8 +222,8 @@ export default function LandingPage() {
<div id="footer" data-section="footer">
<FooterCard
logoText="Hasanboy"
copyrightText="© 2025 Hasanboy. Barcha huquqlar himoyalangan."
logoText="Bobur "
copyrightText="© 2025 Hasanboy. Barcha huquqlar himoyalangan. Email: hasanboyleo97@gmail.com | Telefon: +998 88 371 52 71"
socialLinks={[
{ icon: Github, href: "https://github.com", ariaLabel: "GitHub" },
{ icon: Linkedin, href: "https://linkedin.com", ariaLabel: "LinkedIn" },

View File

@@ -12,13 +12,13 @@
--background: #ffffff;
--card: #f9f9f9;
--foreground: #120a00e6;
--primary-cta: #ff8c42;
--foreground: #000612e6;
--primary-cta: #15479c;
--primary-cta-text: #ffffff;
--secondary-cta: #f9f9f9;
--secondary-cta-text: #120a00e6;
--secondary-cta-text: #000612e6;
--accent: #e2e2e2;
--background-accent: #c4c4c4;
--background-accent: #63d3e2;
/* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);