stumason.dev
TypeScript
Pull Request Opened
PR #22 opened: Enhance Article CMS with write capabilities and modern UX
Summary
- Instant draft creation - WordPress/Ghost pattern where clicking "New Article" creates a draft immediately and redirects to edit page (no separate create form)
- Article ↔ Activities relationship - Many-to-many linking of articles to feed items (activities) with auto-suggest based on date proximity
- Full status system - Draft → Scheduled → Published with publish panel and scheduling support
- Cover image upload - Drag & drop or click to upload, properly saved to database
- Inline image upload - Upload images directly in the markdown editor
- SEO panel - Auto-fill from content, Google preview, character counts for title/description
- API write endpoints - Full CRUD for articles via API with Sanctum auth
- MCP write tools - Create, update, publish, link activities, suggest activities
- Enhanced articles index - Status filters, word counts, relative time for authenticated users
- Markdown details/summary - Proper rendering of collapsible sections in digests
Technical Changes
- New pivot table
article_feed_itemfor many-to-many relationship - 5 new MCP tools for article management
- 6 new API endpoints with FormRequest validation
- CSRF token meta tag added to app.blade.php
- rehype-raw added for HTML passthrough in markdown
- Fixed cover image save using
router.patchinstead ofuseForm.patch
Test plan
- Create new article via "New Article" button - should create draft and redirect to edit
- Upload cover image via drag & drop - should display and persist after save
- Link activities to article - should save and display in sidebar
- Auto-fill SEO fields - should populate from content
- Publish/schedule/unpublish article - status should update correctly
- View article in new tab via "View" button
- Test markdown details/summary rendering in digest articles
🤖 Generated with Claude Code
+4021
additions
-425
deletions
49
files changed