{ "$schema": "https://ui.shadcn.com/schema/registry-item.json", "name": "blog-block-shadcnui", "type": "registry:block", "title": "Blog Block", "description": "Animated blog posts grid with staggered cards, date/time indicators, and hover effects", "registryDependencies": [ "button" ], "dependencies": [ "framer-motion", "react" ], "files": [ { "path": "@uitripled/react-shadcn/src/components/sections/blog-block.tsx", "content": "\"use client\";\n\nimport { Badge } from \"@/components/ui/badge\";\nimport { Button } from \"@/components/ui/button\";\nimport { Card } from \"@/components/ui/card\";\nimport { motion } from \"framer-motion\";\nimport { ArrowRight, Calendar, Clock } from \"lucide-react\";\n\nconst blogPosts = [\n {\n title: \"Building Scalable React Applications\",\n excerpt:\n \"Learn the best practices and patterns for creating React applications that can grow with your business needs.\",\n date: \"2024-01-15\",\n readTime: \"8 min read\",\n category: \"React\",\n image:\n \"https://images.unsplash.com/photo-1633356122544-f134324a6cee?w=800&q=80\",\n },\n {\n title: \"Microservices Architecture Explained\",\n excerpt:\n \"A comprehensive guide to understanding and implementing microservices in modern applications.\",\n date: \"2024-01-10\",\n readTime: \"12 min read\",\n category: \"Architecture\",\n image:\n \"https://images.unsplash.com/photo-1558494949-ef010cbdcc31?w=800&q=80\",\n },\n {\n title: \"TypeScript Tips for Better Code\",\n excerpt:\n \"Advanced TypeScript techniques that will improve your code quality and developer experience.\",\n date: \"2024-01-05\",\n readTime: \"6 min read\",\n category: \"TypeScript\",\n image:\n \"https://images.unsplash.com/photo-1516116216624-53e697fedbea?w=800&q=80\",\n },\n];\n\nconst container = {\n hidden: { opacity: 0 },\n show: {\n opacity: 1,\n transition: { staggerChildren: 0.15 },\n },\n};\n\nconst item = {\n hidden: { opacity: 0, y: 30 },\n show: { opacity: 1, y: 0, transition: { duration: 0.5 } },\n};\n\nexport function BlogBlock() {\n return (\n
\n
\n \n

\n Latest Blog Posts\n

\n

\n Insights, tutorials, and thoughts on web development and technology\n

\n \n\n \n {blogPosts.map((post, index) => (\n \n \n
\n \n
\n \n {post.category}\n \n
\n
\n\n
\n
\n \n \n {new Date(post.date).toLocaleDateString(\"en-US\", {\n month: \"short\",\n day: \"numeric\",\n year: \"numeric\",\n })}\n \n \n \n {post.readTime}\n \n
\n\n

\n {post.title}\n

\n\n

\n {post.excerpt}\n

\n\n \n Read More\n \n \n
\n
\n
\n ))}\n \n\n \n \n \n
\n
\n );\n}\n", "type": "registry:block", "target": "components/uitripled/blog-block-shadcnui.tsx" } ] }