feat: zeropost-web — публичный AI-блог на zeropost.ru

- Next.js 16, Tailwind с @tailwindcss/typography
- Главная: hero, featured-статья, сетка карточек, облако тегов
- /blog/[slug]: статья со SSG + revalidate 60s, prose typography
- /tag/[name]: фильтр по тегам
- /about: про проект
- /api/cron/generate: endpoint для авто-генерации (защищён x-cron-token)
- SEO: dynamic metadata, OG, sitemap-ready
- Лента грузится с zeropost-engine /api/articles
This commit is contained in:
Alexey Pavlov
2026-05-31 08:50:35 +03:00
parent adea4b80de
commit 6dfe8b8afa
20 changed files with 2913 additions and 0 deletions
+17
View File
@@ -0,0 +1,17 @@
import Link from 'next/link';
export default function Footer() {
return (
<footer className="border-t border-border/60 mt-20">
<div className="container-wide py-10 flex flex-col sm:flex-row items-center justify-between gap-4 text-sm text-mute">
<div>
© {new Date().getFullYear()} ZeroPost генерируется ИИ, читается людьми
</div>
<div className="flex items-center gap-4">
<Link href="/about" className="hover:text-white transition-colors">О проекте</Link>
<a href="https://app.zeropost.ru" className="hover:text-white transition-colors">Сервис</a>
</div>
</div>
</footer>
);
}