- Add explicit frontmatter: 'yaml' to match existing posts
- Remove publishDate field that doesn't exist in current posts
- Keep body as markdoc (supports markdown content)
Co-Authored-By: Claude <noreply@anthropic.com>
The Netlify adapter automatically handles all routing when using
output: 'server'. Manual redirect rules were interfering with
proper API endpoint handling.
Co-Authored-By: Claude <noreply@anthropic.com>
Add redirect to route all requests to the Netlify SSR server function.
This enables KeyStatic API routes and GitHub OAuth to work properly.
Co-Authored-By: Claude <noreply@anthropic.com>
Disabling Image compression in astro-compress to fix build error:
"pngload: libspng read error"
The error was caused by a corrupted PNG file that Sharp couldn't process.
Images will still be served normally, just not recompressed during build.
Co-Authored-By: Claude <noreply@anthropic.com>
Changes:
- Added Netlify adapter for server-side rendering
- Changed output mode from static to server
- Updated KeyStatic storage from local to GitHub
- Removed SKIP_KEYSTATIC from Netlify build
- KeyStatic Admin UI will be available at /keystatic
Features:
- Server-side rendering with Netlify Functions
- GitHub integration for content management
- Production-ready KeyStatic Admin UI
Co-Authored-By: Claude <noreply@anthropic.com>
Features added:
- KeyStatic Core and Astro integration installed
- Markdoc integration for content rendering
- keystatic.config.ts with blog post schema
- Local storage mode for content management
- Conditional loading via SKIP_KEYSTATIC env var
- Netlify build command updated to skip KeyStatic in production
KeyStatic Admin UI available at:
- Local: http://localhost:4321/keystatic
- Production: Disabled for security
Co-Authored-By: Claude <noreply@anthropic.com>
Features added:
- React integration with @astrojs/react
- React components: DMRDashboard, MemberSearch
- API endpoints: /api/repeaters.json, /api/dmr-contacts.json, /api/feed/[category].xml
- i18n support for TR/EN locales with LanguageSwitcher component
- Partytown enabled for third-party script optimization
- Admin panel logo fixed (moved to public/images/)
Co-Authored-By: Claude <noreply@anthropic.com>
Performance:
- Enable image optimization (Image: true, SVG: true)
- 429MB saved with WebP conversion
SEO:
- Add JSON-LD structured data (Organization & FAQ schemas)
- Add keywords and author metadata
- Update robots.txt with sitemap reference
- Add alt text to OpenGraph images
CMS:
- Enable Google OAuth login for admin panel
- Add logo to admin login page
Fixes:
- Update Telegram link to @ym1ktc on homepage
Co-Authored-By: Claude <noreply@anthropic.com>
- Fix Decap CMS configuration with proper media folder paths
- Add Turkish translations for sharing interface elements
- Implement smart background handling for transparent logos
- Update image path conversion system for CMS compatibility
- Add comprehensive image optimization with Astro assets
- Update all blog post image paths for consistency
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Create dedicated /auth page to handle confirmation, recovery, and invite tokens
- Add proper redirects in _redirects and netlify.toml for token handling
- Update main layout to automatically redirect authentication tokens to auth page
- Add Turkish authentication interface with loading states and error handling
- Provide fallback redirect mechanisms for different token types
- Update documentation with current setup status and fixes
This resolves the issue where confirmation emails linked to hash URLs that didn't work.
Now users will be properly guided through the authentication process.
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>