5 Commits

Author SHA1 Message Date
anthonyrawlins
5e0be60c30 Release v1.2.0: Newspaper-style layout with major UI refinements
This release transforms PING into a sophisticated newspaper-style digital
publication with enhanced readability and professional presentation.

Major Features:
- New FeaturedPostHero component with full-width newspaper design
- Completely redesigned homepage with responsive newspaper grid layout
- Enhanced PostCard component with refined typography and spacing
- Improved mobile-first responsive design (mobile → tablet → desktop → 2XL)
- Archive section with multi-column layout for deeper content discovery

Technical Improvements:
- Enhanced blog post validation and error handling in lib/blog.ts
- Better date handling and normalization for scheduled posts
- Improved Dockerfile with correct content volume mount paths
- Fixed port configuration (3025 throughout stack)
- Updated Tailwind config with refined typography and newspaper aesthetics
- Added getFeaturedPost() function for hero selection

UI/UX Enhancements:
- Professional newspaper-style borders and dividers
- Improved dark mode styling throughout
- Better content hierarchy and visual flow
- Enhanced author bylines and metadata presentation
- Refined color palette with newspaper sophistication

Documentation:
- Added DESIGN_BRIEF_NEWSPAPER_LAYOUT.md detailing design principles
- Added TESTING_RESULTS_25_POSTS.md with test scenarios

This release establishes PING as a premium publication platform for
AI orchestration and contextual intelligence thought leadership.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-19 00:23:51 +11:00
anthonyrawlins
796924499d Fix scheduled publishing date issue and deploy working blog v1.1.1
- Root cause: publishDate was set for future dates (Aug 28/29) when current time is Aug 27
- Fixed by updating publishDate to Aug 27 09:00 UTC (in the past)
- Scheduled post now appears correctly on blog homepage and RSS feed
- Blog v1.1.1 successfully deployed with working scheduled publishing

Issue resolved:
 "Why On-prem GPUs Still Matter for AI" now live at blog.chorus.services
 Post appears on homepage in Recent Posts section
 Post included in RSS feed with full content
 Direct post URL accessible: /posts/2025-08-29-on-prem-gpus
 Timezone handling working correctly with UTC publishDate

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-28 09:35:35 +10:00
anthonyrawlins
f2d4b8faf6 Deploy blog v1.1.0 with RSS feed and scheduled publishing to production
- Updated blog version to 1.1.0 in package.json
- Built and pushed chorus-blog:v1.1.0 Docker image
- Updated docker-compose.swarm.yml to use new versioned image
- Deployed to production via Docker service update
- RSS feed now live at https://blog.chorus.services/rss.xml
- Scheduled publishing system active for future posts

Production Status:
 Blog running on chorus-blog:v1.1.0
 RSS feed accessible and generating proper XML
 Scheduled posts will auto-publish when dates arrive
 No downtime during deployment

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-28 02:23:57 +10:00
anthonyrawlins
5e53840371 Implement automated scheduled publishing for blog
- Enhanced blog library to read from both posts/ and scheduled/ directories
- Added publishDate filtering with real-time checking (no cron jobs needed)
- Support for draft posts and recursive directory scanning
- Posts automatically appear when publishDate is reached
- Containerized solution that works without external scheduling
- Added publishDate field to blog types and updated existing scheduled post

Tested and verified:
 Past-dated posts appear automatically
 Future-dated posts remain hidden until publish time
 Draft posts are excluded regardless of date
 Maintains existing functionality for regular posts

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-28 02:09:38 +10:00
anthonyrawlins
6e13451dc4 Initial commit: CHORUS PING! blog
- Next.js 14 blog application with theme support
- Docker containerization with volume bindings
- Traefik integration with Let's Encrypt SSL
- MDX support for blog posts
- Theme toggle with localStorage persistence
- Scheduled posts directory structure
- Brand guidelines compliance with CHORUS colors

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-27 14:46:26 +10:00