diff --git a/DEVELOPMENT.md b/DEVELOPMENT.md new file mode 100644 index 0000000..5395210 --- /dev/null +++ b/DEVELOPMENT.md @@ -0,0 +1,240 @@ +# Development Guide + +Reference documentation for working on the Xahau website codebase. See [README.md](README.md) for quick-start instructions. + +--- + +## Editorial Component System + +Marketing pages (About, Features, Connect, Contest, Home, Roadmap) use a custom editorial component system — **not** Markdown/MDX. Each page is a self-contained `.astro` component inside `src/components/`. + +### Component map + +| URL | Component(s) | +| :-- | :----------- | +| `/` | `IndexLayout.astro` → `XahauHome.astro` | +| `/about` | `XahauAbout.astro` / `XahauAboutEs.astro` / `XahauAboutJa.astro` | +| `/features` | `XahauFeatures.astro` / `XahauFeaturesEs.astro` / `XahauFeaturesJa.astro` | +| `/connect` | `XahauConnect.astro` | +| `/contest` | `XahauContest.astro` / `XahauContestEs.astro` / `XahauContestJa.astro` | +| `/roadmap` | `XahauRoadmap.astro` | +| `/ecosystem` | `XahauEcosystem.astro` | +| `/fraud-report` | `FraudReportPage.astro` | + +Each component lives in `src/components/` and is imported by a thin page wrapper in `src/pages/` (and `src/pages/es/`, `src/pages/ja/`). + +### Design tokens + +All editorial components share the same CSS custom properties, defined at the top of each component's ` diff --git a/src/components/FraudReportPage.astro b/src/components/FraudReportPage.astro index 607eff8..bcd2c00 100644 --- a/src/components/FraudReportPage.astro +++ b/src/components/FraudReportPage.astro @@ -1,11 +1,12 @@ --- - import '../styles/main.css' - import type { FraudReportTranslations } from '../i18n/fraudReportTranslations' - import PageLayout from '../layouts/PageLayout.astro' - import PageSection from './PageSection.astro' +import '../styles/main.css' +import type { FraudReportTranslations } from '../i18n/fraudReportTranslations' +import PageLayout from '../layouts/PageLayout.astro' +import PageSection from './PageSection.astro' - const { t } = Astro.props as { t: FraudReportTranslations } +const { t } = Astro.props as { t: FraudReportTranslations } --- +

{t.intro.body}

@@ -17,14 +18,12 @@ {t.intro.bullets.map((bullet) =>
  • {bullet}
  • )} - { - t.intro.steps.map((step) => ( + {t.intro.steps.map((step) => ( <>

    {step.title}

    {step.body}

    - )) - } + ))}

    {t.intro.expectationTitle}