Skip to content

chore: Initialize Astro + Starlight + Tailwind + i18n project scaffold #3

@100gle

Description

@100gle

Parent Issue

Part of #2

Objective

Set up the entire project foundation so subsequent sub-issues can build on a working scaffold.

Tasks

  • Run npm create astro@latest -- --template starlight to initialize the project (in website/ dir)
  • Install and configure Tailwind CSS (@astrojs/tailwind)
  • Configure Starlight i18n in astro.config.mjs:
    • defaultLocale: 'en'
    • locales: { en: { label: 'English' }, 'zh-cn': { label: '简体中文' } }
  • Set up base URL and site metadata (site: 'https://bub.build')
  • Create src/styles/global.css with Tailwind directives and basic design tokens
  • Create placeholder src/content/docs/en/index.mdx and src/content/docs/zh-cn/index.mdx
  • Configure sidebar structure in astro.config.mjs (empty groups for: Getting Started, Concepts, Guides, Extending, Reference, Blog)
  • Add scripts in package.json: dev, build, preview
  • Verify npm run build passes with no errors
  • Add .gitignore for node_modules/, dist/, .astro/

Acceptance Criteria

  • npm run dev starts successfully
  • Both / and /zh-cn/ routes render
  • Tailwind classes work in .astro components
  • Starlight sidebar shows placeholder structure
  • npm run build produces valid static output

Tech Notes

  • Astro 5.x + Starlight latest
  • Tailwind CSS 4.x via @astrojs/tailwind
  • Node.js 20+
  • Project location: website/ in repo root

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions