Conversation
…sitions Extend Link atom with optional prepend/append slots, external prop, class prop, and section accent color inheritance. Add BackLink (arrow prepend) and ExternalLink (icon append) compositions. Update DS docs accordingly.
Global a svg path opacity (0.8 → 1) was stacking with Link component's own opacity transition (0.6 → 1), causing icon and text to animate out of sync.
Each component already handles its own SVG opacity. The global rule was stacking and causing compound opacity issues.
DotRow displays children in a flex row with · separators between them. Supports --dot-color CSS variable for parent customization. Refactored CardTitle to use DotRow instead of .dotted pseudo-elements. Applied DotRow to kinoo.dev links in Realisations. Also: shrink Link external icon to 12px, remove cursor:pointer from Card.
The inner spotlight (::after) now triggers on [data-spotlight]:hover like the border glow, so it's visible when the cursor is between cards.
Add ArticleCard, Prose components with DS docs, BlogPostLayout, content collection config, and ArticlesSection for the design system. Article content and page routes are gitignored — not ready for production yet. NavBar and MobileSidebar updated with Articles link. Also: dotted separator for kinoo.dev links in Realisations, Eurotunnel date fix, revert DotRow experiment, lefthook setup.
There was a problem hiding this comment.
Pull request overview
This PR implements the foundational infrastructure for a blog feature on the portfolio site. It adds MDX content support, RSS feed capability, new blog-specific components (BlogPostLayout, Prose, ArticleCard), and refactors the Link component into a more flexible composition pattern with BackLink and ExternalLink variants.
Changes:
- Added MDX and RSS dependencies with Astro content collections configuration for articles
- Created blog post layout with proper metadata and structured data (BlogPosting schema)
- Implemented article display components (Prose typography wrapper, ArticleCard) with design system documentation
- Refactored Link component to support slots for icon composition, enabling BackLink and ExternalLink variants
Reviewed changes
Copilot reviewed 30 out of 32 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| package.json / bun.lock | Added @astrojs/mdx and @astrojs/rss packages for blog functionality |
| astro.config.mjs | Configured MDX integration and sitemap filtering for draft articles |
| src/content.config.ts | Defined articles collection schema with frontmatter validation |
| src/layouts/Layout.astro | Added RSS link and made OG metadata customizable (ogType, ogImage, jsonLd) |
| src/layouts/BlogPostLayout.astro | New layout for blog posts with article metadata and structured data |
| src/components/articles/* | New Prose typography and ArticleCard components with design system docs |
| src/components/shared/atoms/Link.astro | Refactored to support slot composition for icons and external link detection |
| src/components/shared/atoms/BackLink.astro | New component composing Link with back arrow |
| src/components/shared/atoms/ExternalLink.astro | New component composing Link with external icon |
| src/components/shared/atoms/Button.module.css | Added gradient backgrounds to button variants |
| src/components/shared/molecules/Spotlight.astro | Fixed hover selector to use parent data-spotlight attribute |
| src/components/shared/molecules/Card/* | Removed cursor styles (improved accessibility) and added hover transforms to links |
| src/components/sections/Realisations.astro | Changed link layout from flex to inline with dotted separator |
| src/components/sections/Formations.astro | Fixed date format from "2015/2016" to "2015" |
| src/components/header/Header.astro | Fixed backdrop-filter by extracting pseudo-element with pointer-events |
| src/components/design-system/* | Added ArticlesSection and updated Link documentation |
| src/styles/global.css | Removed unused CSS rules for .cv class and svg path opacity |
| .husky/_/* | Added git hooks (contains hardcoded absolute path issue) |
| .gitignore | Updated to ignore draft content, articles, and RSS feed implementation |
| src/pages/articles/*.md | Removed draft article files |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.