--- import BaseLayout from '../layouts/BaseLayout.astro'; import Header from '../components/layout/Header.astro'; import Footer from '../components/layout/Footer.astro'; import Card from '../components/ui/Card.astro'; import Tag from '../components/ui/Tag.astro'; import { getCollection } from 'astro:content'; import { formatDate } from '../utils/dateFormat'; // Fetch featured projects and recent blog posts const projects = (await getCollection('projects')) .filter(p => !p.data.draft && p.data.featured) .slice(0, 3); const blogPosts = (await getCollection('blog')) .filter(p => !p.data.draft) .sort((a, b) => b.data.publishDate.getTime() - a.data.publishDate.getTime()) .slice(0, 3); ---
David Aragón

Hi, I'm David Aragón

Builder creating products that solve real problems. From goldsmith to photographer to developer. Now building in public.

Currently working on WarrantyHub - digital warranty management for home users.

Latest Posts

View all →
{blogPosts.length > 0 ? ( blogPosts.map((post) => (

{post.data.title}

{post.data.description}

{post.data.tags?.slice(0, 3).map((tag: string) => ( {tag} ))}
Read more →
)) ) : (

Posts coming soon. Subscribe to receive updates.

)}
{projects.length > 0 && (
{projects.map((project) => (
{project.data.status}

{project.data.title}

{project.data.description}

{project.data.tags?.slice(0, 4).map((tag: string) => ( {tag} ))}
))}
)}

Stay Updated

Get occasional updates about launches, learnings, and technical decisions. No spam, no BS - just real builder content.