Files
darkwave/app/page.tsx
AderKonstantin 67e05438a7 feat(blog): Add tags to blog posts and display them
Adds a new `tags` field to the `BlogPost` interface and updates the blog post data to include relevant tags.
The `BlogArea` component is updated to display the tags for each blog post.

This change allows users to better understand the topics covered in each blog post and
improves the overall user experience.
2025-03-26 13:48:55 +03:00

153 lines
5.3 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import searchPic from '../public/search.svg';
import mastodonPic from '../public/mastodon.svg';
import githubPic from '../public/github.svg';
import instagramPic from '../public/instagram.svg';
import steamPic from '../public/steam.svg';
import gamePic from '../public/gamepad.svg';
import projectPic from '../public/project.svg';
import Image from "next/image";
import Link from "next/link";
import AnimatedLink from '../components/animatedLink';
import BlogArea from "../components/blogpost";
import HeaderToolbar from "../components/header/toolbar";
// Mock data for blog posts
const blogposts = [
{
label: 'Retro Futurism: A Journey Through Time',
body: 'Explore the fascinating world of retro futurism and its impact on modern science and culture.',
publish: '2023-10-01',
get_absolute_url: '/blog/retro-futurism',
tags: ["science", "retro", "science-friction"]
},
{
label: 'The Science Behind Video Games',
body: 'Discover how video games are pushing the boundaries of technology and human interaction.',
publish: '2023-09-25',
get_absolute_url: '/blog/science-video-games',
tags: ["science", "math", "games"]
},
{
label: 'How to install Docker & Docker Compose',
body: 'Guide to install Docker & Docker Compose on your machine.',
publish: '2023-09-25',
get_absolute_url: '/blog/docker-installation',
tags: ["docker", "docker-compose", "linux"]
},
{
label: 'Rocket Science',
body: 'Discover how rocket are work.',
publish: '2023-09-25',
get_absolute_url: '/blog/rocket-science',
tags: ["rocket", "space", "engineering"]
},
];
export default function Home() {
return (
<div className="text-xl 2xl:mx-64 xl:mx-32 md:mx-6">
<header className="flex flex-col">
<div className="flex flex-row mt-12 mb-22">
<ul className="w-full flex flex-row justify-between items-baseline list-none">
<li className="text-4xl">
<AnimatedLink href="https://blog.aderk.tech/en">
aderk.tech
</AnimatedLink>
</li>
<li className="text-6xl flex items-center justify-center filter brightness-0 invert">
<Link href="#">
<Image
src={searchPic}
alt="search"
width={32}
height={32}
/>
</Link>
</li>
</ul>
</div>
<div className="text-2xl mb-20">
<p className="leading-10">
Hello. I am is a programmer, hacker, and gamer. Love comics, coding, read books. There I am posting articles about science and another staff, thats im like.
</p>
</div>
<HeaderToolbar />
</header>
<main>
<BlogArea blogposts={blogposts} />
</main>
<footer className="border-t border-white pt-4 flex lg:flex-row max-md:flex-col justify-around text-2xl">
<ul className="list-none m-4">
<li className="text-2xl mb-3"><h3>Socials</h3></li>
<li className="inline text-xl pr-2 mr-2">
<Link href="https://www.instagram.com/aderkitty/">
<Image
src={instagramPic}
alt="lang"
width={32}
height={32}
className="inline filter brightness-0 invert"
/>
</Link>
</li>
<li className="inline text-xl pr-2 mr-2">
<Link href="https://mastodon.social/@aderkonstantin">
<Image
src={mastodonPic}
alt="lang"
width={32}
height={32}
className="inline filter brightness-0 invert"
/>
</Link>
</li>
<li className="inline text-xl pr-2 mr-2">
<Link href="https://github.com/AderKonstantin">
<Image
src={githubPic}
alt="lang"
width={32}
height={32}
className="inline filter brightness-0 invert"
/>
</Link>
</li>
<li className="inline text-xl pr-2 mr-2">
<Link href="https://steamcommunity.com/yourprofile">
<Image
src={steamPic}
alt="lang"
width={32}
height={32}
className="inline filter brightness-0 invert"
/>
</Link>
</li>
</ul>
<ul className="list-none m-4">
<li className="text-2xl mb-3"><h3 className='inline'>Games</h3><Image src={gamePic} alt="lang" width={24} height={24} className="ml-2 inline filter brightness-0 invert"/></li>
<li className="text-xl">
<AnimatedLink href="#">Robot Fire</AnimatedLink>
</li>
</ul>
<ul className="list-none m-4">
<li className="text-2xl mb-3"><h3 className='inline'>Other Projects</h3><Image src={projectPic} alt="lang" width={24} height={24} className="ml-2 inline filter brightness-0 invert"/></li>
<li className="text-xl">
<AnimatedLink href="#">cloudberrygames</AnimatedLink>
</li>
<li className="text-xl">
<AnimatedLink href="#">northfamily</AnimatedLink>
</li>
</ul>
</footer>
</div>
);
}