Implement portfolio admin management

This commit is contained in:
MOH
2026-03-07 16:06:20 +01:00
parent f983ce2203
commit ea64373853
35 changed files with 5126 additions and 178 deletions
-91
View File
@@ -2,14 +2,6 @@ import type { AppLocale } from "@/lib/locale";
type LocalizedText = Record<AppLocale, string>;
export type PortfolioItem = {
slug: string;
title: LocalizedText;
summary: LocalizedText;
category: LocalizedText;
year: string;
};
export type ProductItem = {
slug: string;
name: LocalizedText;
@@ -18,85 +10,6 @@ export type ProductItem = {
price: LocalizedText;
};
export const portfolioItems: PortfolioItem[] = [
{
slug: "brand-redesign",
title: {
de: "Brand Redesign",
en: "Brand Redesign",
ar: "إعادة تصميم الهوية",
},
summary: {
de: "Modernes Redesign fuer eine digitale Marke mit klarer Struktur.",
en: "Modern redesign for a digital brand with a clear system.",
ar: "إعادة تصميم حديثة لعلامة رقمية مع بنية واضحة.",
},
category: {
de: "Branding",
en: "Branding",
ar: "الهوية",
},
year: "2025",
},
{
slug: "commerce-relaunch",
title: {
de: "Commerce Relaunch",
en: "Commerce Relaunch",
ar: "إعادة إطلاق المتجر",
},
summary: {
de: "Relaunch eines Shops mit Fokus auf Performance und Conversion.",
en: "Store relaunch focused on performance and conversion.",
ar: "إعادة إطلاق متجر مع تركيز على الأداء والتحويل.",
},
category: {
de: "E-Commerce",
en: "E-Commerce",
ar: "التجارة الإلكترونية",
},
year: "2024",
},
{
slug: "saas-dashboard",
title: {
de: "SaaS Dashboard",
en: "SaaS Dashboard",
ar: "لوحة تحكم SaaS",
},
summary: {
de: "Admin Dashboard fuer Teams mit klaren KPIs und Reports.",
en: "Admin dashboard for teams with clear KPIs and reports.",
ar: "لوحة تحكم إدارية للفرق مع مؤشرات وتقارير واضحة.",
},
category: {
de: "Web App",
en: "Web App",
ar: "تطبيق ويب",
},
year: "2024",
},
{
slug: "campaign-site",
title: {
de: "Campaign Site",
en: "Campaign Site",
ar: "موقع حملة",
},
summary: {
de: "Landing Seite fuer Produktkampagnen mit schneller Iteration.",
en: "Landing experience for product campaigns and quick iteration.",
ar: "صفحة هبوط لحملات المنتجات مع تنفيذ سريع.",
},
category: {
de: "Marketing",
en: "Marketing",
ar: "التسويق",
},
year: "2023",
},
];
export const productItems: ProductItem[] = [
{
slug: "starter-kit",
@@ -173,10 +86,6 @@ export function pickText(text: LocalizedText, locale: AppLocale): string {
return text[locale];
}
export function getPortfolioItem(slug: string) {
return portfolioItems.find((item) => item.slug === slug);
}
export function getProductItem(slug: string) {
return productItems.find((item) => item.slug === slug);
}