Skip to content

CLAUDE.md ​

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Project Overview ​

This is the website for Đà Nẵng Kendo Club (dnkc.club), built with VitePress. The site is in Vietnamese and serves as an informational portal for the kendo club.

Development Commands ​

bash
# Start development server (port 8081)
yarn docs:dev

# Build for production
yarn docs:build

# Preview production build
yarn docs:preview

Architecture ​

Content Structure ​

  • /gioithieu/ - About pages (kendo history, club info, equipment)
  • /quydinh/ - Rules and guidelines (enrollment, training schedule, exams)
  • /lienhe/ - Contact information and location
  • /thongbao/ - Announcements/news articles
  • /components/ - Reusable Vue components
  • /public/ - Static assets (images, favicon)

Build Process ​

Before dev/build, thongbao.mjs runs automatically to generate /thongbao/data.json from markdown files in the announcements folder. This script:

  • Reads all .md files in /thongbao/ (except index.md)
  • Extracts frontmatter and excerpt (separated by <!-- more -->)
  • Sorts by date and outputs JSON for the announcements listing

Theme Customization ​

The site uses a customized VitePress default theme located in .vitepress/theme/:

  • Custom CSS in custom.css
  • Overridden VitePress components in components/
  • Custom composables in composables/

Configuration ​

  • .vitepress/config.mts - VitePress config with navigation, sidebar, SEO meta tags, and Google Analytics
  • Frontmatter fields: title, description, image (for OG tags), date (for announcements)