feat(projects): add profile actions and section spacing

This commit is contained in:
poyrazavsever
2026-07-16 12:39:59 +03:00
parent 462378f6c6
commit ec5aa647c1
3 changed files with 54 additions and 15 deletions
+40 -5
View File
@@ -1,7 +1,14 @@
import Image from "next/image"; import Image from "next/image";
import { Link } from "@/i18n/routing"; import { Link } from "@/i18n/routing";
import { Icon } from "@iconify/react"; import { Icon } from "@iconify/react";
import { Badge, Card, Typography } from "poyraz-ui/atoms"; import {
Badge,
Button,
ButtonIcon,
ButtonLabel,
Card,
Typography,
} from "poyraz-ui/atoms";
import { ImageCard } from "poyraz-ui/molecules"; import { ImageCard } from "poyraz-ui/molecules";
import { StaggerContainer, StaggerItem } from "@/components/motion-wrapper"; import { StaggerContainer, StaggerItem } from "@/components/motion-wrapper";
import { import {
@@ -69,7 +76,7 @@ function ProjectSection({
items: LocalizedProjectItem[]; items: LocalizedProjectItem[];
}) { }) {
return ( return (
<section className="space-y-2"> <section className="space-y-3">
<Typography variant="large" className="text-base"> <Typography variant="large" className="text-base">
{title} {title}
</Typography> </Typography>
@@ -109,7 +116,7 @@ export async function ProjectsContent() {
}; };
return ( return (
<section className="flex h-full flex-col gap-3 overflow-y-auto"> <section className="flex h-full flex-col gap-8 overflow-y-auto md:gap-10">
<Card className="rounded-sm border-border bg-background p-2"> <Card className="rounded-sm border-border bg-background p-2">
<div className="overflow-x-auto rounded-sm"> <div className="overflow-x-auto rounded-sm">
<Image <Image
@@ -128,10 +135,24 @@ export async function ProjectsContent() {
<ProjectSection title={t("sections.extensions")} items={localizeItems(EXTENSIONS)} /> <ProjectSection title={t("sections.extensions")} items={localizeItems(EXTENSIONS)} />
<ProjectSection title={t("sections.figmaTemplates")} items={localizeItems(FIGMA_TEMPLATES)} /> <ProjectSection title={t("sections.figmaTemplates")} items={localizeItems(FIGMA_TEMPLATES)} />
<section className="space-y-2"> <section className="space-y-3">
<div className="flex flex-wrap items-center justify-between gap-3">
<Typography variant="large" className="text-base"> <Typography variant="large" className="text-base">
{t("sections.npmPackages")} {t("sections.npmPackages")}
</Typography> </Typography>
<Button asChild variant="outline" size="xs" radius="sm">
<a
href="https://www.npmjs.com/~poyrazavsever"
target="_blank"
rel="noopener noreferrer"
>
<ButtonIcon>
<Icon icon="mdi:npm" width={16} height={16} />
</ButtonIcon>
<ButtonLabel>{t("viewNpmPackages")}</ButtonLabel>
</a>
</Button>
</div>
<div className="grid gap-2 md:grid-cols-2"> <div className="grid gap-2 md:grid-cols-2">
{npmPackages.length === 0 ? ( {npmPackages.length === 0 ? (
<Card className="rounded-sm border-border p-3 md:col-span-2"> <Card className="rounded-sm border-border p-3 md:col-span-2">
@@ -171,10 +192,24 @@ export async function ProjectsContent() {
</div> </div>
</section> </section>
<section className="space-y-2"> <section className="space-y-3">
<div className="flex flex-wrap items-center justify-between gap-3">
<Typography variant="large" className="text-base"> <Typography variant="large" className="text-base">
{t("sections.githubRepos")} {t("sections.githubRepos")}
</Typography> </Typography>
<Button asChild variant="outline" size="xs" radius="sm">
<a
href="https://github.com/poyrazavsever"
target="_blank"
rel="noopener noreferrer"
>
<ButtonIcon>
<Icon icon="mdi:github" width={16} height={16} />
</ButtonIcon>
<ButtonLabel>{t("visitGithub")}</ButtonLabel>
</a>
</Button>
</div>
<div className="grid gap-2 md:grid-cols-2"> <div className="grid gap-2 md:grid-cols-2">
{repos.length === 0 ? ( {repos.length === 0 ? (
<Card className="rounded-sm border-border p-3 md:col-span-2"> <Card className="rounded-sm border-border p-3 md:col-span-2">
+4 -2
View File
@@ -56,9 +56,11 @@
"webApps": "Web Applications", "webApps": "Web Applications",
"extensions": "Extensions", "extensions": "Extensions",
"figmaTemplates": "Figma Designs", "figmaTemplates": "Figma Designs",
"npmPackages": "npm Packages (@poyrazavsever)", "npmPackages": "npm Packages",
"githubRepos": "GitHub Repositories (@poyrazavsever)" "githubRepos": "GitHub Repositories"
}, },
"viewNpmPackages": "View my NPM packages",
"visitGithub": "Visit my GitHub profile",
"emptyNpm": "npm API response is currently empty.", "emptyNpm": "npm API response is currently empty.",
"emptyGithub": "GitHub API response is currently empty." "emptyGithub": "GitHub API response is currently empty."
}, },
+4 -2
View File
@@ -56,9 +56,11 @@
"webApps": "Web Uygulamaları", "webApps": "Web Uygulamaları",
"extensions": "Extension'lar", "extensions": "Extension'lar",
"figmaTemplates": "Figma Tasarımları", "figmaTemplates": "Figma Tasarımları",
"npmPackages": "npm Paketleri (@poyrazavsever)", "npmPackages": "npm Paketleri",
"githubRepos": "GitHub Repoları (@poyrazavsever)" "githubRepos": "GitHub Repoları"
}, },
"viewNpmPackages": "NPM paketlerimi gör",
"visitGithub": "GitHub hesabına git",
"emptyNpm": "npm API yanıtı şu anda boş.", "emptyNpm": "npm API yanıtı şu anda boş.",
"emptyGithub": "GitHub API yanıtı şu anda boş." "emptyGithub": "GitHub API yanıtı şu anda boş."
}, },