The Source.

이 블로그를 구성하는 실제 소스 코드(Raw Code)의 로직을 탐색합니다.

src / pages ReadOnly

* 파일을 클릭하면 우측 에디터에
실제 로직(Frontmatter)이 로드됩니다.

ASTRO index.astro
---
// src/pages/index.astro
import BaseLayout from '../layouts/BaseLayout.astro';
import { getCollection } from 'astro:content';
import Hero from '../components/home/Hero.astro';
import CourseCarousel from '../components/home/CourseCarousel.astro';
import LatestBrewing from '../components/home/LatestBrewing.astro';
import SystemLogs from '../components/home/SystemLogs.astro';

// 데이터 가져오기 및 가공
const allPosts = await getCollection('blog');
const sortedPosts = allPosts.sort((a, b) => b.data.pubDate.valueOf() - a.data.pubDate.valueOf());
const latestPosts = sortedPosts.slice(0, 3);

const allUpdates = await getCollection('updates');
const recentUpdates = allUpdates
  .sort((a, b) => {
    const dateDiff = b.data.date.valueOf() - a.data.date.valueOf();
    if (dateDiff !== 0) return dateDiff;
    return b.data.version.localeCompare(a.data.version, undefined, { numeric: true });
  })
  .slice(0, 5);
---
main* Logic Only
UTF-8 Astro Core