Files
hoelee-blog/docs/project-state.md
T
hoelee f0fce15dee
Deploy / build (push) Successful in 11s
docs: update project-state, add post-guideline reference
- Refresh project-state.md with all completed work this session
- Add docs/post-guideline.md (title case, locale structure, frontmatter, publish flow)
- Reference it in README + hoelee-blog skill
2026-09-06 07:08:05 +08:00

3.8 KiB
Raw Blame History

Project State & Enhancement Backlog

Living list of what's done and what's next for blog.hoelee.com. Work through these one by one — don't batch unrelated changes. Check off items as they land.

Status key: ✅ done · 🔵 in progress · ⬜ not started


Done (foundation)

  • ✅ Astro 5 static + Markdown, Gitea Actions CI/CD → nginx → Cloudflare (deployed)
  • ✅ Design system: hoelee.com brand palette, Inter + JetBrains Mono, light/dark, sticky nav, code copy button
  • ✅ Brand "Mr Hoelee" (replaced "hoelee.dev")
  • ✅ Author card + Person/ProfilePage JSON-LD (E-E-A-T), article meta, reading time, related posts
  • ✅ Full SEO: canonical, Open Graph (+dims), twitter:card, favicon (all sizes), RSS + sitemap
  • ✅ Category pages (/categories/, /categories/[category]/)
  • ✅ Locale scheme: English flat in posts/, Chinese in posts/zh/ (lang derived from folder, no lang: frontmatter)
  • ✅ Language switcher in nav — links to the same post in the other language (auto-matches by zh/ prefix; falls back to section landing when no translation)
  • ✅ Locale-aware nav labels (EN: Posts/Categories/About/RSS; ZH: 文章/分类/关于/RSS)
  • ✅ Dark mode default (light is opt-in via toggle)
  • ✅ Case study post "How I Host This Blog" — docker-compose sample + real install gotchas (from commit history)
  • ✅ Chinese translation of the case study (posts/zh/how-i-host-this-blog.md)
  • ✅ hello-world intro post — "What I write about" skills map + corrected business framing
  • ✅ Business framing corrected everywhere: website design & development = primary; email hosting = secondary (not the focus)
  • ✅ Knowledge guides in docs/ (content, design, seo, ops, post-guideline) + README index + hoelee-blog skill
  • ✅ Both repos public (Gitea + GitHub) with title/description/homepage/topics + v1.0.0 release

Tier 1 — Content (80% of value; do this first)

  • ⬜ Write the 2 flagship case studies — highest ROI, these are the portfolio:
    • ⬜ "How I Built the DigiKedai Telegram AI Bot" (DSM Docker + Cloudflare tunnel webhook + LiteLLM)
    • ⬜ "Self-Hosting a Mem0 Memory Stack" (API + LiteLLM + pgvector)
  • ⬜ 2–3 gotcha posts from real debugging history (short, Google-friendly):
    • ⬜ "The Traefik forward-auth gotcha that cost me a day"
    • ⬜ "Site-to-site OpenVPN behind CGNAT"
    • ⬜ "Fixing the WordPress /cv 301→404 chain" (from own audit)
  • ⬜ "Hard job → post" habit — every solved problem becomes a notes entry the same week (template in docs/content-guide.md §4)

Tier 2 — Structural gaps

  • ⬜ Tag pages — tags currently render as labels only; add /tags/[tag]/ archive pages for fine-grained discovery + internal linking
  • ⬜ Categories page shows all 7 categories (not just those with posts) — signal intended coverage; show "0 posts / coming soon" for empty ones
  • ⬜ Search — AstroPaper-style fuzzy search (low priority until >20 posts)
  • ⬜ Dedicated /zh/posts/ and /zh/categories/ archive pages — currently zh nav links point to /zh/ landing; split into real archives when Chinese content grows

Tier 3 — Polish / later

  • ⬜ Google Search Console submission — submit sitemap-index.xml for faster indexing
  • ⬜ Newsletter / email capture — only after real traffic exists

Conventions (non-negotiable)

  • Push git.hoelee.com first, then GitHub
  • English-first; Chinese selective (2–3 flagship case studies); no Malay
  • No overclaiming, especially Web3
  • Name identity: "Lee Teong Hoe" / "Mr Hoelee" + same photo + same sameAs handles everywhere
  • Business framing: website design & development is primary; email hosting is secondary
  • See docs/post-guideline.md for post-writing rules (title case, locale structure, frontmatter, etc.)