Skip to content

Repository files navigation

gophercon.jp

The official website for GopherCon Japan.

Stack

bun (pinned by mise) · Astro + TypeScript · Intlayer · Storybook

Getting started

mise install              # install pinned runtimes
eval "$(mise activate)"   # enable mise shims (add to your shell rc to persist)
bun install
bun run dev               # http://localhost:4321 (en at /, ja at /ja)

The commands below assume the mise shims are active. Without shims, prefix them with mise exec -- (e.g. mise exec -- bun run dev).

Commands

Command Description
bun run dev Astro dev server (localhost:4321)
bun run build Build the static site to ./dist/
bun run preview Preview the production build locally
bun run preview:cf Build then preview through Wrangler (Workers)
bun run check Type-check (astro check, tsc --noEmit) + static analysis (knip: unused files/exports/deps)
bun run storybook Component preview (localhost:6006)
bun run deploy Build then deploy to Cloudflare Workers

Project structure

src/
├── components/
│   ├── Hero.astro        # Hero section
│   ├── 2027/             # 2027 site sections
│   └── common/i18n/      # LocaleSwitcher / LocaleRedirector
├── layouts/
│   └── Layout.astro      # Base layout (SEO, hreflang, header)
├── pages/                # [...locale]/ routes (en at /, ja at /ja)
└── utils/

i18n (Intlayer)

  • Routing: intlayer.config.tsrouting.mode: "prefix-no-default" (en at /, ja at /ja).
  • Dictionaries are embedded in components as locale-keyed objects, resolved with getDictionary. requiredLocales: [en, ja] makes TypeScript complain about missing translations.
  • LocaleRedirector detects the browser locale (unsupported → defaultLocale) and redirects; LocaleSwitcher renders the language links and persists the choice.

Deployment

Cloudflare Workers (Static Assets) with a pull-based build — wrangler.jsonc points assets.directory at ./dist. To preview on the Workers runtime:

bun run preview:cf

About

Official website for GopherCon Japan

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Contributors

Languages