Files
soroushasadi/Pages/Shared/_AdminLayout.cshtml
T
soroush.asadi 1b3a8b493e
deploy / deploy (push) Failing after 1m21s
Rewrite: Next.js → ASP.NET Core 10 Razor Pages
Full rewrite of the portfolio site from Next.js 14 to .NET 10:

- ASP.NET Core 10 Razor Pages, no Node.js dependency
- EF Core 10 + SQLite (same schema as before — data survives upgrade)
- Cookie authentication (same single-password model)
- Resend contact form via HttpClient
- Bilingual FA/EN via locale cookie + BasePageModel
- All UI ported to Razor Pages with Tailwind CDN + custom CSS
- Vanilla JS: particles, typewriter, cursor, animations, portfolio modal
- Dockerfile: SDK 10.0-alpine → aspnet 10.0-alpine (no npm/Node needed)
- CI/CD: dropped NPM_TOKEN, ADMIN_SESSION_SECRET — pure dotnet publish

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-01 07:46:56 +03:30

57 lines
2.3 KiB
Plaintext

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>@ViewData["Title"] — Admin</title>
<style>
@@font-face { font-family:'Syne'; src:url('/fonts/Syne-Variable.woff2') format('woff2'); font-weight:100 900; font-display:swap; }
@@font-face { font-family:'SpaceMono'; src:url('/fonts/SpaceMono-Regular.woff2') format('woff2'); font-display:swap; }
</style>
<script src="https://cdn.tailwindcss.com"></script>
<script>
tailwind.config = {
theme: { extend: {
colors: { base:{DEFAULT:'#020510',800:'#050a1a'}, electric:'#38bdf8', violet:'#818cf8', magenta:'#e879f9', emerald:'#34d399' },
fontFamily: { sans:['Syne','system-ui','sans-serif'], mono:['SpaceMono','monospace'] }
}}
}
</script>
<link rel="stylesheet" href="/css/site.css" />
</head>
<body class="min-h-screen bg-base text-slate-200 antialiased">
<div class="flex min-h-screen">
<!-- Sidebar -->
<aside class="hidden w-56 shrink-0 flex-col border-r border-white/5 bg-base-800 md:flex">
<div class="flex h-14 items-center gap-2 border-b border-white/5 px-4">
<img src="/logo-mark.svg" alt="" width="22" height="22" />
<span class="font-display text-sm font-semibold text-white">CMS</span>
</div>
<nav class="flex flex-1 flex-col gap-1 p-3 text-sm">
<a href="/Admin" class="admin-nav-link">Dashboard</a>
<a href="/Admin/Sections" class="admin-nav-link">Sections</a>
<a href="/Admin/Posts" class="admin-nav-link">Blog posts</a>
<div class="mt-auto pt-4">
<form method="post" action="/Admin/Logout">
<button class="admin-nav-link w-full text-start text-red-400 hover:text-red-300">Sign out</button>
</form>
</div>
</nav>
</aside>
<!-- Main -->
<div class="flex flex-1 flex-col">
<header class="flex h-14 items-center justify-between border-b border-white/5 bg-base-800 px-6 md:hidden">
<span class="font-display text-sm font-semibold text-white">CMS</span>
<form method="post" action="/Admin/Logout">
<button class="text-xs text-red-400">Sign out</button>
</form>
</header>
<main class="flex-1 overflow-auto p-6">
@RenderBody()
</main>
</div>
</div>
</body>
</html>