Add Nini Naderi Persian RTL homepage.

Build the kids clothing store landing page with sample content, placeholders, and the purple-cyan-red light theme.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Alireza Hassani
2026-08-13 14:04:45 +03:30
co-authored by Cursor
parent 4b3d9dede8
commit 78ef438f9d
21 changed files with 1559 additions and 86 deletions
+41
View File
@@ -0,0 +1,41 @@
import type { Tone } from "@/data/content";
const tones: Record<Tone, string> = {
purple: "bg-purple-200 from-purple-300 via-purple-200 to-purple-100 text-purple-800",
cyan: "bg-cyan-100 from-cyan-300 via-cyan-200 to-cyan-100 text-cyan-800",
rose: "bg-rose-100 from-rose-300 via-rose-200 to-rose-100 text-rose-700",
};
type Props = {
width: number;
height: number;
tone?: Tone;
className?: string;
rounded?: string;
fill?: boolean;
showSize?: boolean;
};
export function Placeholder({
width,
height,
tone = "purple",
className = "",
rounded = "rounded-2xl",
fill = false,
showSize = true,
}: Props) {
return (
<div
className={`placeholder-grid relative flex flex-col items-center justify-center overflow-hidden bg-linear-to-br ${tones[tone]} ${rounded} ${className}`}
style={fill ? undefined : { aspectRatio: `${width} / ${height}` }}
aria-hidden
>
{showSize ? (
<span className="font-display text-lg font-semibold tracking-wide sm:text-xl">
{width} × {height}
</span>
) : null}
</div>
);
}