frontend updates
This commit is contained in:
@@ -117,9 +117,20 @@ const recentCommits = allCommits.slice(0, 20);
|
||||
---
|
||||
|
||||
<Layout>
|
||||
<header class="text-center py-16 bg-gradient-to-r from-teal-600 to-green-600 text-white">
|
||||
<h1 class="text-5xl font-bold mb-4">Recent Commits</h1>
|
||||
<p class="text-xl max-w-xl mx-auto">Latest commits from public repositories on our Gitea instance.</p>
|
||||
<header class="text-center py-20 bg-gradient-to-r from-teal-600 to-green-600 text-white">
|
||||
<div class="max-w-4xl mx-auto px-4">
|
||||
<h1 class="text-5xl md:text-6xl font-extrabold mb-6">Codebase</h1>
|
||||
<p class="text-xl md:text-2xl text-teal-50 mb-10 leading-relaxed">
|
||||
Explore our collection of open-source projects, study our source code, and contribute to our independent game development tools.
|
||||
</p>
|
||||
<a
|
||||
href="https://git.teletype.hu"
|
||||
target="_blank"
|
||||
class="inline-flex items-center gap-3 bg-white text-teal-700 px-8 py-4 rounded-xl hover:bg-teal-50 transition-all font-bold shadow-xl hover:scale-105 active:scale-95"
|
||||
>
|
||||
Open Gitea
|
||||
</a>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<main class="max-w-6xl mx-auto py-12 px-4">
|
||||
@@ -130,6 +141,25 @@ const recentCommits = allCommits.slice(0, 20);
|
||||
</div>
|
||||
)}
|
||||
|
||||
{!error && publicRepos.length > 0 && (
|
||||
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6 mb-16">
|
||||
{publicRepos.map((repo) => (
|
||||
<div class="bg-white shadow-lg rounded-lg p-4">
|
||||
<h3 class="text-xl font-semibold mb-2">
|
||||
<a href={repo.html_url} target="_blank" class="text-blue-600 hover:text-blue-800">
|
||||
{repo.owner.login}/{repo.name}
|
||||
</a>
|
||||
</h3>
|
||||
{repo.description && <p class="text-gray-700 text-sm">{repo.description}</p>}
|
||||
{repo.language && <p class="text-gray-500 text-xs mt-1">Language: {repo.language}</p>}
|
||||
<p class="text-gray-500 text-xs mt-1">Updated: {new Date(repo.updated_at).toLocaleDateString('en-US', {year: 'numeric', month: 'short', day: 'numeric'})}</p>
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
)}
|
||||
|
||||
<h2 class="text-3xl font-bold mb-8 text-center text-gray-800">Recent Commits</h2>
|
||||
|
||||
{!error && recentCommits.length === 0 && (
|
||||
<p class="text-center text-gray-600 text-lg">No recent commits found or accessible from public repositories.</p>
|
||||
)}
|
||||
@@ -159,25 +189,5 @@ const recentCommits = allCommits.slice(0, 20);
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
|
||||
{!error && publicRepos.length > 0 && (
|
||||
<section class="max-w-6xl mx-auto py-8 px-4">
|
||||
<h2 class="text-3xl font-bold mb-6 text-center">Public Repositories</h2>
|
||||
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
|
||||
{publicRepos.map((repo) => (
|
||||
<div class="bg-white shadow-lg rounded-lg p-4">
|
||||
<h3 class="text-xl font-semibold mb-2">
|
||||
<a href={repo.html_url} target="_blank" class="text-blue-600 hover:text-blue-800">
|
||||
{repo.owner.login}/{repo.name}
|
||||
</a>
|
||||
</h3>
|
||||
{repo.description && <p class="text-gray-700 text-sm">{repo.description}</p>}
|
||||
{repo.language && <p class="text-gray-500 text-xs mt-1">Language: {repo.language}</p>}
|
||||
<p class="text-gray-500 text-xs mt-1">Updated: {new Date(repo.updated_at).toLocaleDateString('en-US', {year: 'numeric', month: 'short', day: 'numeric'})}</p>
|
||||
</div>
|
||||
))}
|
||||
</div>
|
||||
</section>
|
||||
)}
|
||||
</main>
|
||||
</Layout>
|
||||
</Layout>
|
||||
|
||||
@@ -109,12 +109,16 @@ function timeAgo(dateStr: string): string {
|
||||
<h1 class="text-5xl md:text-6xl font-extrabold tracking-tight mb-6">
|
||||
Wiki <span class="text-transparent bg-clip-text bg-gradient-to-r from-indigo-400 to-purple-400">News</span>
|
||||
</h1>
|
||||
<p class="text-lg md:text-xl text-slate-300 max-w-2xl mx-auto leading-relaxed">
|
||||
The latest documentation, technical guides, and development logs from our
|
||||
<a href={WIKIJS_BASE_URL} target="_blank" class="text-indigo-400 hover:text-indigo-300 underline underline-offset-4 transition-colors font-medium">
|
||||
Knowledge Base
|
||||
</a>.
|
||||
<p class="text-lg md:text-xl text-slate-300 max-w-2xl mx-auto leading-relaxed mb-10">
|
||||
The latest documentation, technical guides, and development logs from our knowledge base.
|
||||
</p>
|
||||
<a
|
||||
href={WIKIJS_BASE_URL}
|
||||
target="_blank"
|
||||
class="inline-flex items-center gap-3 bg-white text-indigo-900 px-8 py-4 rounded-xl hover:bg-indigo-50 transition-all font-bold shadow-xl hover:scale-105 active:scale-95"
|
||||
>
|
||||
Knowledge Base
|
||||
</a>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
@@ -150,10 +154,7 @@ function timeAgo(dateStr: string): string {
|
||||
target="_blank"
|
||||
class="group flex flex-col bg-white rounded-2xl border border-gray-200 p-6 shadow-sm hover:shadow-xl hover:border-indigo-300 transition-all duration-300 ease-out hover:-translate-y-1"
|
||||
>
|
||||
<div class="flex items-center justify-between mb-4">
|
||||
<span class="text-sm font-mono text-indigo-500 bg-indigo-50 px-2 py-1 rounded">
|
||||
/{page.locale}
|
||||
</span>
|
||||
<div class="flex items-center justify-end mb-4">
|
||||
<div class="flex items-center gap-2 text-xs font-semibold uppercase tracking-wider text-gray-400">
|
||||
{isNew && (
|
||||
<span class="flex items-center gap-1 text-green-600 bg-green-50 px-2 py-0.5 rounded-full border border-green-100">
|
||||
|
||||
Reference in New Issue
Block a user