Files
portfolio/.kiro/specs/blog-ssg-optimization/tasks.md
T

79 lines
2.3 KiB
Markdown

# Implementation Plan
- [x] 1. Install and configure sitemap module
- Install `nuxt-simple-sitemap` package
- Add module to `nuxt.config.ts`
- Configure basic sitemap settings with site URL
- _Requirements: 3.1, 3.2, 3.3_
- [x] 2. Create dynamic route generator for blog posts
- Create `server/plugins/prerender.ts` file
- Implement Nitro hook to discover all blog posts
- Add all non-draft blog post routes to prerender context
- Handle both English and Persian locales
- _Requirements: 2.1, 2.2, 2.3, 2.4_
- [ ] 3. Configure Nitro prerender settings
- Update `nitro.prerender` configuration in `nuxt.config.ts`
- Enable `crawlLinks` for automatic link discovery
- Add seed routes for blog index pages (`/blog`, `/fa/blog`)
- Configure prerender to exclude draft posts
- _Requirements: 1.3, 1.4, 4.1_
- [ ] 4. Implement sitemap dynamic routes
- Configure sitemap module to fetch blog posts dynamically
- Map blog posts to sitemap entries with proper metadata
- Include `lastmod`, `changefreq`, and `priority` for each entry
- Ensure draft posts are excluded from sitemap
- _Requirements: 3.1, 3.2, 3.3, 3.4, 3.5_
- [ ] 5. Update build configuration
- Verify `nuxt generate` command in `package.json`
- Add environment variable for site URL if needed
- Document build process in README or comments
- _Requirements: 4.4, 6.1, 6.3_
- [x] 6. Test SSG build process
- Run `pnpm generate` command
- Verify all blog post HTML files are generated in `.output/public`
- Check both English and Persian blog routes
- Verify sitemap.xml is generated
- _Requirements: 1.1, 1.2, 4.3, 4.4_
- [ ]* 7. Validate generated output
- Check meta tags in generated HTML files
- Verify structured data (JSON-LD) is present
- Test internal links functionality
- Validate sitemap XML syntax
- _Requirements: 5.1, 5.2, 5.3, 5.4_
- [ ]* 8. Performance testing
- Measure page load times before and after SSG
- Run Lighthouse audit on generated pages
- Document performance improvements
- _Requirements: 1.1, 1.2_
- [x] 9. Update deployment documentation
- Document the `pnpm generate` command for deployment
- Specify output directory (`.output/public`)
- List compatible static hosting platforms
- Add environment variables needed for production
- _Requirements: 6.1, 6.2, 6.4_