dictionory Updated

This commit is contained in:
parsa aghaei 2024-10-21 10:44:38 +03:30
parent 6ad3a48adb
commit fc9fcf6a9a
11 changed files with 266 additions and 236 deletions

View File

@ -67,19 +67,19 @@ export default async function Home() {
{/* end */}
<div className="items flex w-full max-w-[90%] flex-col md:max-w-[70%] lg:w-[45%] xl:w-[50%]">
<p className="text-[20px] font-[400] text-black 2xl:text-[24px]">
{dict.homePage.top.greeting}
{dict.website.homePage.top.greeting}
</p>
<p className="text-[30px] font-[600] capitalize text-[#FD6F00] 2xl:text-[32px]">
{dict.homePage.top.name}
{dict.website.homePage.top.name}
</p>
<p className="whitespace-nowrap text-start text-[30px] font-[700] text-black sm:text-[50px] lg:text-[45px] xl:text-[60px] 2xl:text-[80px]">
{dict.homePage.top.profession}
{dict.website.homePage.top.profession}
</p>
<p className="mt-[-20px] text-end text-[50px] font-[700] text-black lg:mt-[-30px] lg:text-[50px] xl:text-[70px] 2xl:text-[100px]">
{dict.homePage.top.roll}
{dict.website.homePage.top.roll}
</p>
<p className="my-[40px] text-justify text-[21px] font-[400] text-black lg:pe-0">
{dict.homePage.top.descriptionAboutMe}
{dict.website.homePage.top.descriptionAboutMe}
</p>
{/* <button type="button" className="flex h-[52px] w-[188px] items-center whitespace-nowrap rounded-md bg-[#FD6F00] p-[18px] px-[52px] text-[21px] font-[400] text-[#fff]">
Hire Me

View File

@ -2,12 +2,14 @@ import React from "react";
interface ContactProps {
dict: {
homePage: {
contact: {
slogan: string;
description: string;
button: string;
placeholder: string;
website: {
homePage: {
contact: {
slogan: string;
description: string;
button: string;
placeholder: string;
};
};
};
};
@ -20,16 +22,16 @@ export default function Contact({ dict }: ContactProps) {
id="contact"
>
<h2 className="text-center text-[35px] font-[800] capitalize text-[#000]">
{dict.homePage.contact.slogan}
{dict.website.homePage.contact.slogan}
</h2>
<p className="text-center text-[18px] font-[600] text-[#000]">
{dict.homePage.contact.description}
{dict.website.homePage.contact.description}
</p>
<div className="my-5 flex w-full flex-wrap items-center justify-center gap-[25px]">
<input
type="text"
className="min-w-[340px] rounded-lg border border-[#AFAFAF] bg-[#F8F8F8] p-3 text-[16px] font-[400] text-[#797979]"
placeholder={dict.homePage.contact.placeholder}
placeholder={dict.website.homePage.contact.placeholder}
name="email"
id="email"
/>
@ -37,7 +39,7 @@ export default function Contact({ dict }: ContactProps) {
type="button"
className="whitespace-nowrap rounded-lg bg-[#FD6F00] px-5 py-3 text-[16px] font-[600] capitalize text-[#fff]"
>
{dict.homePage.contact.button}
{dict.website.homePage.contact.button}
</button>
</div>
</div>

View File

@ -20,43 +20,43 @@ export default async function Footer() {
className="whitespace-nowrap px-[14px] py-[10px] text-[18px] font-[500] hover:text-[#fd6f00]"
href="/#home"
>
{dict.footer.Home}
{dict.website.footer.Home}
</a>
<a
className="whitespace-nowrap px-[14px] py-[10px] text-[18px] font-[500] hover:text-[#fd6f00]"
href="/#about-me"
>
{dict.footer.AboutMe}
{dict.website.footer.AboutMe}
</a>
<a
className="whitespace-nowrap px-[14px] py-[10px] text-[18px] font-[500] hover:text-[#fd6f00]"
href="/#services"
>
{dict.footer.Services}
{dict.website.footer.Services}
</a>
<a
className="whitespace-nowrap px-[14px] py-[10px] text-[18px] font-[500] hover:text-[#fd6f00]"
href="/#projects"
>
{dict.footer.Projects}
{dict.website.footer.Projects}
</a>
<a
className="whitespace-nowrap px-[14px] py-[10px] text-[18px] font-[500] hover:text-[#fd6f00]"
href="/#testimonials"
>
{dict.footer.Testimonials}
{dict.website.footer.Testimonials}
</a>
<a
className="whitespace-nowrap px-[14px] py-[10px] text-[18px] font-[500] hover:text-[#fd6f00]"
href="/#contact"
>
{dict.footer.Contact}
{dict.website.footer.Contact}
</a>
<Link
className="whitespace-nowrap px-[14px] py-[10px] text-[18px] font-[500] hover:text-[#fd6f00]"
href="/blog"
>
{dict.footer.Blog}
{dict.website.footer.Blog}
</Link>
</ul>
{/* socials */}
@ -95,13 +95,13 @@ export default async function Footer() {
</div>
<div className="flex items-center justify-center gap-1 whitespace-nowrap bg-[#545454]">
<p className="py-2 text-[15px] font-[400] text-white">
{dict.footer.Year}
{dict.website.footer.Year}
</p>
<p className="py-2 text-[15px] font-[400] text-white">
{dict.footer.CopyRight}
{dict.website.footer.CopyRight}
</p>
<span className="mx-[5px] whitespace-nowrap text-[18px] font-[700] capitalize text-[#FD6F00]">
{dict.footer.Name}
{dict.website.footer.Name}
</span>
</div>
</div>

View File

@ -19,7 +19,7 @@ export default async function Header() {
<img src={"/images/logo.svg"} className="w-full" alt="logo" />
</div>
<p className="ms-2 font-[900] capitalize text-[#FD6F00] text-[px] sm:text-[23px] xl:ms-3 xl:text-[30px]">
{dict.header.Name}
{dict.website.header.Name}
</p>
</div>
<ul className="hidden items-center justify-center rounded p-2 lg:flex">
@ -27,43 +27,43 @@ export default async function Header() {
href="/#home"
className="mx-2 whitespace-nowrap rounded-lg px-1 py-[10px] text-[15px] font-[600] capitalize hover:text-[#FD6F00] xl:text-[20px]"
>
{dict.header.Home}
{dict.website.header.Home}
</a>
<a
href="/#about-me"
className="mx-2 whitespace-nowrap rounded-lg px-1 py-[10px] text-[15px] font-[600] capitalize hover:text-[#FD6F00] xl:text-[20px]"
>
{dict.header.AboutMe}
{dict.website.header.AboutMe}
</a>
<a
href="/#services"
className="mx-2 whitespace-nowrap rounded-lg px-1 py-[10px] text-[15px] font-[600] capitalize hover:text-[#FD6F00] xl:text-[20px]"
>
{dict.header.Services}
{dict.website.header.Services}
</a>
<a
href="/#projects"
className="mx-2 whitespace-nowrap rounded-lg px-1 py-[10px] text-[15px] font-[600] capitalize hover:text-[#FD6F00] xl:text-[20px]"
>
{dict.header.Projects}
{dict.website.header.Projects}
</a>
<a
href="/#testimonials"
className="mx-2 whitespace-nowrap rounded-lg px-1 py-[10px] text-[15px] font-[600] capitalize hover:text-[#FD6F00] xl:text-[20px]"
>
{dict.header.Testimonials}
{dict.website.header.Testimonials}
</a>
<a
href="/#contact"
className="mx-2 whitespace-nowrap rounded-lg px-1 py-[10px] text-[15px] font-[600] capitalize hover:text-[#FD6F00] xl:text-[20px]"
>
{dict.header.Contact}
{dict.website.header.Contact}
</a>
<Link
className="mx-2 whitespace-nowrap rounded-lg px-1 py-[10px] text-[15px] font-[600] capitalize hover:text-[#FD6F00] xl:text-[20px]"
href={"/blog"}
>
{dict.header.Blog}
{dict.website.header.Blog}
</Link>
<SelectLanguage
selectedLocale={cookies().get("selectedLocale")}
@ -72,7 +72,7 @@ export default async function Header() {
</ul>
<div className="flex gap-1">
<button className="flex items-center justify-center whitespace-nowrap rounded-lg bg-[#FD6F00] px-4 py-2 text-[15px] font-[600] text-[#fff] xl:text-[20px]">
{dict.header.Button}
{dict.website.header.Button}
</button>
<BurgerButton dict={dict} />
</div>

View File

@ -39,7 +39,7 @@ export default function MobileMenu({ clicked, setClicked, dict }: propsType) {
<img src={"/images/logo.svg"} className="w-full" alt="logo" />
</div>
<p className="ms-2 text-[20px] font-[900] capitalize text-[#FD6F00] sm:text-[23px] xl:ms-3 xl:text-[30px]">
{dict.header.Name}
{dict.website.header.Name}
</p>
</div>
<nav className="mt-5 flex w-full flex-col">
@ -48,7 +48,7 @@ export default function MobileMenu({ clicked, setClicked, dict }: propsType) {
className="block w-full whitespace-nowrap px-[14px] py-[10px] text-[21px] font-[400] hover:cursor-pointer hover:bg-slate-100"
onClick={() => setClicked(false)}
>
{dict.header.Home}
{dict.website.header.Home}
</a>
<a
href="/#about-me"
@ -57,7 +57,7 @@ export default function MobileMenu({ clicked, setClicked, dict }: propsType) {
setClicked(false);
}}
>
{dict.header.AboutMe}
{dict.website.header.AboutMe}
</a>
<a
href="/#services"
@ -66,7 +66,7 @@ export default function MobileMenu({ clicked, setClicked, dict }: propsType) {
setClicked(false);
}}
>
{dict.header.Services}
{dict.website.header.Services}
</a>
<a
href="/#projects"
@ -75,7 +75,7 @@ export default function MobileMenu({ clicked, setClicked, dict }: propsType) {
setClicked(false);
}}
>
{dict.header.Projects}
{dict.website.header.Projects}
</a>
<a
href="/#testimonials"
@ -84,7 +84,7 @@ export default function MobileMenu({ clicked, setClicked, dict }: propsType) {
setClicked(false);
}}
>
{dict.header.Testimonials}
{dict.website.header.Testimonials}
</a>
<a
href="/#contact"
@ -93,14 +93,14 @@ export default function MobileMenu({ clicked, setClicked, dict }: propsType) {
setClicked(false);
}}
>
{dict.header.Contact}
{dict.website.header.Contact}
</a>
<Link
href="/blog"
className="block w-full whitespace-nowrap px-[14px] py-[10px] text-[21px] font-[400] hover:cursor-pointer hover:bg-slate-100"
onClick={() => setClicked(false)}
>
{dict.header.Blog}
{dict.website.header.Blog}
</Link>
</nav>
{selectedLocale === "fa" ? (

View File

@ -7,10 +7,12 @@ import "react-loading-skeleton/dist/skeleton.css";
interface MyProjectsProps {
dict: {
homePage: {
projects: {
title: string;
description: string;
website: {
homePage: {
projects: {
title: string;
description: string;
};
};
};
};
@ -66,7 +68,10 @@ export default function Projects({ dict }: MyProjectsProps) {
}, {});
};
const groupedProjects = useMemo(() => groupProjectsByCategory(projects), [projects]);
const groupedProjects = useMemo(
() => groupProjectsByCategory(projects),
[projects],
);
// Filter projects by selected category
const filteredProjects: Project[] = useMemo(() => {
@ -88,47 +93,60 @@ export default function Projects({ dict }: MyProjectsProps) {
);
return (
<div className="flex w-full max-w-[90%] flex-wrap items-center justify-center pt-[50px]" id="projects">
<h2 className="my-10 mt-20 text-[55px] font-[800] capitalize text-black">{dict.homePage.projects.title}</h2>
<p className="text-center text-[21px] font-[400] text-black">{dict.homePage.projects.description}</p>
<div
className="flex w-full max-w-[90%] flex-wrap items-center justify-center pt-[50px]"
id="projects"
>
<h2 className="my-10 mt-20 text-[55px] font-[800] capitalize text-black">
{dict.website.homePage.projects.title}
</h2>
<p className="text-center text-[21px] font-[400] text-black">
{dict.website.homePage.projects.description}
</p>
<ul className="mb-10 mt-20 flex w-full flex-wrap items-center justify-center gap-2">
{categories.length > 0 ? (
categories.map((category, index) => (
<li
key={index}
onClick={() => setSelectedCategory(category.label)}
className={`select-none whitespace-nowrap rounded-md bg-[#F8F8F8] p-2 text-[14px] font-[600] capitalize hover:cursor-pointer hover:border-[#FD6F00] md:text-[18px] ${
selectedCategory === category.label ? "bg-[#FD6F00] text-[#FFFFFF]" : "text-[#000]"
}`}
>
{category.label}
</li>
))
) : (
renderSkeletons(4) // Adjust the count as needed
)}
{
categories.length > 0
? categories.map((category, index) => (
<li
key={index}
onClick={() => setSelectedCategory(category.label)}
className={`select-none whitespace-nowrap rounded-md bg-[#F8F8F8] p-2 text-[14px] font-[600] capitalize hover:cursor-pointer hover:border-[#FD6F00] md:text-[18px] ${
selectedCategory === category.label
? "bg-[#FD6F00] text-[#FFFFFF]"
: "text-[#000]"
}`}
>
{category.label}
</li>
))
: renderSkeletons(4) // Adjust the count as needed
}
</ul>
<div className="flex w-full flex-wrap items-start justify-center gap-8 lg:gap-20">
{filteredProjects.length > 0 ? (
filteredProjects.map((project, index) => (
<div key={index} className="project flex w-[45%] flex-wrap">
<div className="relative my-5 h-[200px] w-full overflow-hidden bg-[#FFEBDB] md:h-[250px] lg:h-[300px]">
{project.images.map((image, idx) => (
<img
key={idx}
src={image.src}
alt="UI/UX Vector"
className={`absolute ${idx === 0 ? "bottom-0 start-0" : "end-0 top-0"} z-${image.zIndex} project-image w-[85%] max-w-[350px]`}
/>
))}
</div>
<h5 className="w-full text-[15px] font-[600] text-[#FD6F00] lg:text-[20px]">{project.category}</h5>
<p className="text-[18px] font-[800] text-black hover:cursor-pointer lg:text-[22px]">{project.title}</p>
</div>
))
) : (
renderSkeletons(3) // Adjust the count as needed
)}
{
filteredProjects.length > 0
? filteredProjects.map((project, index) => (
<div key={index} className="project flex w-[45%] flex-wrap">
<div className="relative my-5 h-[200px] w-full overflow-hidden bg-[#FFEBDB] md:h-[250px] lg:h-[300px]">
{project.images.map((image, idx) => (
<img
key={idx}
src={image.src}
alt="UI/UX Vector"
className={`absolute ${idx === 0 ? "bottom-0 start-0" : "end-0 top-0"} z-${image.zIndex} project-image w-[85%] max-w-[350px]`}
/>
))}
</div>
<h5 className="w-full text-[15px] font-[600] text-[#FD6F00] lg:text-[20px]">
{project.category}
</h5>
<p className="text-[18px] font-[800] text-black hover:cursor-pointer lg:text-[22px]">
{project.title}
</p>
</div>
))
: renderSkeletons(3) // Adjust the count as needed
}
</div>
</div>
);

View File

@ -7,10 +7,12 @@ import "react-loading-skeleton/dist/skeleton.css";
interface ServicesProps {
dict: {
homePage: {
services: {
title: string;
description: string;
website: {
homePage: {
services: {
title: string;
description: string;
};
};
};
};
@ -83,10 +85,10 @@ export default function Services({ dict }: ServicesProps) {
id="services"
>
<h2 className="mb-10 text-[55px] font-[800] capitalize text-black">
{dict.homePage.services.title}
{dict.website.homePage.services.title}
</h2>
<p className="text-center text-[21px] font-[400] text-black">
{dict.homePage.services.description}
{dict.website.homePage.services.description}
</p>
<div className="service mt-20 flex w-full flex-wrap items-start justify-between gap-8">
{loading

View File

@ -5,10 +5,12 @@ import React, { useEffect, useRef, useState } from "react";
interface TestimonialsProps {
dict: {
homePage: {
testimonials: {
title: string;
description: string;
website: {
homePage: {
testimonials: {
title: string;
description: string;
};
};
};
};
@ -90,10 +92,10 @@ export default function Testimonials({ dict }: TestimonialsProps) {
id="testimonials"
>
<h2 className="text-[55px] font-[800] capitalize text-black">
{dict.homePage.testimonials.title}
{dict.website.homePage.testimonials.title}
</h2>
<p className="my-10 text-center text-[21px] font-[400] text-black">
{dict.homePage.testimonials.description}
{dict.website.homePage.testimonials.description}
</p>
<div
className="no-scrollbar relative flex min-h-[800px] w-full select-none flex-nowrap items-start gap-8 overflow-x-scroll py-4 sm:min-h-[590px] md:min-h-[560px] lg:min-h-[450px] xl:min-h-[370px] 2xl:min-h-[370px]" // Hide scrollbar using CSS

View File

@ -1,52 +1,54 @@
{
"homePage": {
"top": {
"greeting": "Hi I am",
"name": "parsa aghayi",
"profession": "Frontend & Backend",
"roll": "Developer",
"descriptionAboutMe": "My expertise lies in working with frameworks, focusing on optimizing performance and developing scalable web applications using modern technologies."
"website": {
"homePage": {
"top": {
"greeting": "Hi I am",
"name": "parsa aghayi",
"profession": "Frontend & Backend",
"roll": "Developer",
"descriptionAboutMe": "My expertise lies in working with frameworks, focusing on optimizing performance and developing scalable web applications using modern technologies."
},
"services": {
"title": "services",
"description": "In today's digital landscape, having a robust online presence is essential for businesses and individuals alike. Our services cater to a wide range of web development needs, ensuring that your project is functional, visually appealing, and user-friendly."
},
"projects": {
"title": "my projects",
"description": "Explore a selection of my web development projects that showcase my ability to deliver high-quality solutions and create engaging digital experiences. See how I can help bring your vision to life!"
},
"testimonials": {
"title": "testimonials",
"description": "The Testimonials section features feedback from clients and collaborators, highlighting the quality of my services and commitment to client satisfaction. These authentic reviews reflect my professionalism and the positive impact of my work, giving potential clients confidence in choosing me for their web development needs."
},
"contact": {
"slogan": "Lets Design Together",
"description": "The Contact Me section offers a simple way to reach out for inquiries, project proposals, or collaboration opportunities. Fill out the contact form or use the provided information, and I'll respond promptly to discuss your ideas and how I can help.",
"button": "contact me",
"placeholder": "Enter your Email address here..."
}
},
"services": {
"title": "services",
"description": "In today's digital landscape, having a robust online presence is essential for businesses and individuals alike. Our services cater to a wide range of web development needs, ensuring that your project is functional, visually appealing, and user-friendly."
"header": {
"Name": "parsa aghayi",
"Home": "home",
"AboutMe": "about Me",
"Services": "services",
"Projects": "projects",
"Testimonials": "testimonials",
"Contact": "contact",
"Blog": "blog",
"Button": "Resume"
},
"projects": {
"title": "my projects",
"description": "Explore a selection of my web development projects that showcase my ability to deliver high-quality solutions and create engaging digital experiences. See how I can help bring your vision to life!"
},
"testimonials": {
"title": "testimonials",
"description": "The Testimonials section features feedback from clients and collaborators, highlighting the quality of my services and commitment to client satisfaction. These authentic reviews reflect my professionalism and the positive impact of my work, giving potential clients confidence in choosing me for their web development needs."
},
"contact": {
"slogan": "Lets Design Together",
"description": "The Contact Me section offers a simple way to reach out for inquiries, project proposals, or collaboration opportunities. Fill out the contact form or use the provided information, and I'll respond promptly to discuss your ideas and how I can help.",
"button": "contact me",
"placeholder": "Enter your Email address here..."
"footer": {
"Name": "parsa aghayi",
"Home": "home",
"AboutMe": "about Me",
"Services": "services",
"Projects": "projects",
"Testimonials": "testimonials",
"Contact": "contact",
"Blog": "blog",
"Year": "© 2024",
"CopyRight": "All Rights Reserved , Inc."
}
},
"header": {
"Name": "parsa aghayi",
"Home": "home",
"AboutMe": "about Me",
"Services": "services",
"Projects": "projects",
"Testimonials": "testimonials",
"Contact": "contact",
"Blog": "blog",
"Button": "Resume"
},
"footer": {
"Name": "parsa aghayi",
"Home": "home",
"AboutMe": "about Me",
"Services": "services",
"Projects": "projects",
"Testimonials": "testimonials",
"Contact": "contact",
"Blog": "blog",
"Year" : "© 2024",
"CopyRight" : "All Rights Reserved , Inc."
}
}

View File

@ -1,52 +1,54 @@
{
"homePage": {
"top": {
"greeting": "سلام، من",
"name": "پارسا آقایی هستم",
"profession": "توسعه‌دهنده",
"roll": "فرانت‌اند و بک‌اند",
"descriptionAboutMe": "تخصص من در کار با فریمورک‌ها است و بر بهینه‌سازی عملکرد و توسعه برنامه‌های وب مقیاس‌پذیر با استفاده از تکنولوژی‌های مدرن تمرکز دارم."
"website": {
"homePage": {
"top": {
"greeting": "سلام، من",
"name": "پارسا آقایی هستم",
"profession": "توسعه‌دهنده",
"roll": "فرانت‌اند و بک‌اند",
"descriptionAboutMe": "تخصص من در کار با فریمورک‌ها است و بر بهینه‌سازی عملکرد و توسعه برنامه‌های وب مقیاس‌پذیر با استفاده از تکنولوژی‌های مدرن تمرکز دارم."
},
"services": {
"title": "خدمات",
"description": "در دنیای دیجیتال امروز، داشتن یک حضور آنلاین قوی برای کسب‌وکارها و افراد ضروری است. خدمات ما به طیف وسیعی از نیازهای توسعه وب پاسخ می‌دهد و اطمینان می‌دهد که پروژه شما عملکردی، جذاب بصری و کاربرپسند است."
},
"projects": {
"title": "پروژه‌های من",
"description": "مجموعه‌ای از پروژه‌های توسعه وب من را کاوش کنید که توانایی من در ارائه راه‌حل‌های با کیفیت بالا و ایجاد تجربیات دیجیتال جذاب را به نمایش می‌گذارد. ببینید چگونه می‌توانم به تحقق چشم‌انداز شما کمک کنم!"
},
"testimonials": {
"title": "نظرات",
"description": "بخش نظرات شامل بازخوردهایی از مشتریان و همکاران است که کیفیت خدمات من و تعهد من به رضایت مشتری را برجسته می‌کند. این بررسی‌های معتبر حرفه‌ای بودن من و تأثیر مثبت کار من را منعکس می‌کند و به مشتریان بالقوه اعتماد به نفس می‌دهد که من را برای نیازهای توسعه وب خود انتخاب کنند."
},
"contact": {
"slogan": "بیاید با هم طراحی کنیم",
"description": "بخش تماس با من راهی ساده برای ارتباط با من در مورد سوالات، پیشنهادات پروژه یا فرصت‌های همکاری است. فرم تماس را پر کنید یا از اطلاعات ارائه شده استفاده کنید و من به سرعت پاسخ می‌دهم تا ایده‌های شما را بررسی کنیم و بگویم چگونه می‌توانم کمک کنم.",
"button": "با من تماس بگیرید",
"placeholder": "ایمیل خود را اینجا وارد کنید..."
}
},
"services": {
"title": "خدمات",
"description": "در دنیای دیجیتال امروز، داشتن یک حضور آنلاین قوی برای کسب‌وکارها و افراد ضروری است. خدمات ما به طیف وسیعی از نیازهای توسعه وب پاسخ می‌دهد و اطمینان می‌دهد که پروژه شما عملکردی، جذاب بصری و کاربرپسند است."
"header": {
"Name": "پارسا آقایی",
"Home": "خانه",
"AboutMe": "درباره‌من",
"Services": "خدمات",
"Projects": "پروژه‌ها",
"Testimonials": "دیدگاه‌ها",
"Contact": "تماس",
"Blog": "بلاگ",
"Button": "رزومه"
},
"projects": {
"title": "پروژه‌های من",
"description": "مجموعه‌ای از پروژه‌های توسعه وب من را کاوش کنید که توانایی من در ارائه راه‌حل‌های با کیفیت بالا و ایجاد تجربیات دیجیتال جذاب را به نمایش می‌گذارد. ببینید چگونه می‌توانم به تحقق چشم‌انداز شما کمک کنم!"
},
"testimonials": {
"title": "نظرات",
"description": "بخش نظرات شامل بازخوردهایی از مشتریان و همکاران است که کیفیت خدمات من و تعهد من به رضایت مشتری را برجسته می‌کند. این بررسی‌های معتبر حرفه‌ای بودن من و تأثیر مثبت کار من را منعکس می‌کند و به مشتریان بالقوه اعتماد به نفس می‌دهد که من را برای نیازهای توسعه وب خود انتخاب کنند."
},
"contact": {
"slogan": "بیاید با هم طراحی کنیم",
"description": "بخش تماس با من راهی ساده برای ارتباط با من در مورد سوالات، پیشنهادات پروژه یا فرصت‌های همکاری است. فرم تماس را پر کنید یا از اطلاعات ارائه شده استفاده کنید و من به سرعت پاسخ می‌دهم تا ایده‌های شما را بررسی کنیم و بگویم چگونه می‌توانم کمک کنم.",
"button": "با من تماس بگیرید",
"placeholder": "ایمیل خود را اینجا وارد کنید..."
"footer": {
"Name": "پارسا آقایی",
"Home": "خانه",
"AboutMe": "درباره‌من",
"Services": "خدمات",
"Projects": "پروژه‌ها",
"Testimonials": "دیدگاه‌ها",
"Contact": "تماس",
"Blog": "بلاگ",
"Year": "© ۲۰۲۴",
"CopyRight": "تمامی حقوق محفوظ برای"
}
},
"header": {
"Name": "پارسا آقایی",
"Home": "خانه",
"AboutMe": "درباره‌من",
"Services": "خدمات",
"Projects": "پروژه‌ها",
"Testimonials": "دیدگاه‌ها",
"Contact": "تماس",
"Blog": "بلاگ",
"Button": "رزومه"
},
"footer": {
"Name": "پارسا آقایی",
"Home": "خانه",
"AboutMe": "درباره‌من",
"Services": "خدمات",
"Projects": "پروژه‌ها",
"Testimonials": "دیدگاه‌ها",
"Contact": "تماس",
"Blog": "بلاگ",
"Year" : "© ۲۰۲۴",
"CopyRight" : "تمامی حقوق محفوظ برای"
}
}

View File

@ -119,55 +119,57 @@ export type FilteredPostsDataType = {
export type LocaleCookieType = { name: string; value: string };
export type Dictionary = {
homePage: {
top: {
greeting: string;
name: string;
profession: string;
roll: string;
descriptionAboutMe: string;
website: {
homePage: {
top: {
greeting: string;
name: string;
profession: string;
roll: string;
descriptionAboutMe: string;
};
services: {
title: string;
description: string;
};
projects: {
title: string;
description: string;
};
testimonials: {
title: string;
description: string;
};
contact: {
slogan: string;
description: string;
button: string;
placeholder: string;
};
};
services: {
title: string;
description: string;
header: {
Name: string;
Home: string;
AboutMe: string;
Services: string;
Projects: string;
Testimonials: string;
Contact: string;
Blog: string;
Button: string;
};
projects: {
title: string;
description: string;
footer: {
Name: string;
Home: string;
AboutMe: string;
Services: string;
Projects: string;
Testimonials: string;
Contact: string;
Blog: string;
Year: string;
CopyRight: string;
};
testimonials: {
title: string;
description: string;
};
contact: {
slogan: string;
description: string;
button: string;
placeholder: string;
};
};
header: {
Name: string;
Home: string;
AboutMe: string;
Services: string;
Projects: string;
Testimonials: string;
Contact: string;
Blog: string;
Button: string;
};
footer: {
Name: string;
Home: string;
AboutMe: string;
Services: string;
Projects: string;
Testimonials: string;
Contact: string;
Blog: string;
Year: string;
CopyRight: string;
};
};
@ -220,4 +222,4 @@ export type Testimonial = {
position: string;
image: string;
quote: string;
}
};