+ {/* โโ Page title โโ */}
+
+
+ Blog
+
+
+ Updates, guides, and deep-dives on Flutter development.
+
+
+
+ {/* โโ Filter Bar โโ */}
+
+
+ {/* โโ Featured post โโ */}
+ {showFeatured && featured && (
+
+
+
+ )}
+
+ {/* โโ Grid โโ */}
+ {pagePosts.length > 0 ? (
+ <>
+
+ {hasActiveFilters ? 'Filtered posts' : (page === 1 ? 'All posts' : `Page ${page}`)}
+
+
+ {pagePosts.map((post) => (
+
+ ))}
+
+ >
+ ) : (
+ allPosts.length > 0 && (
+
+
No posts matched your filter criteria โ try clearing filters.
+
+ )
+ )}
+
+ {/* โโ Pagination โโ */}
+ {totalPages > 1 && (
+
+
+
+ {page > 1 && (
+
+
+
+ )}
+
+ {getPageNumbers().map((p, idx) => (
+
+ {p === 'ellipsis' ? (
+
+ ) : (
+
+ {p}
+
+ )}
+
+ ))}
+
+ {page < totalPages && (
+
+
+
+ )}
+
+
+
+ )}
+
+ {/* โโ Empty state โโ */}
+ {allPosts.length === 0 && (
+
+
No posts yet โ check back soon.
+
+ )}
+
+