|
9 | 9 |
|
10 | 10 | [](https://codespaces.new/ut-code/website) |
11 | 11 |
|
12 | | -### 手動 |
| 12 | +### ローカル |
13 | 13 |
|
14 | 14 | - (必須) Bun >= v1.1.39 |
15 | 15 | - 任意のエディタ https://docs.astro.build/en/editor-setup/ |
16 | 16 |
|
17 | | -```shell |
| 17 | +```sh |
18 | 18 | bun install --frozen-lockfile |
19 | 19 | ``` |
20 | 20 |
|
21 | 21 | ## 開発 |
22 | 22 |
|
23 | | -```shell |
| 23 | +```sh |
24 | 24 | bun dev |
25 | 25 | ``` |
26 | 26 |
|
27 | 27 | <http://localhost:4321/> で開発用サーバーが起動します。 |
28 | 28 |
|
29 | 29 | ## ビルド |
30 | 30 |
|
31 | | -```shell |
| 31 | +```sh |
32 | 32 | bun run build |
33 | 33 | ``` |
34 | 34 |
|
35 | 35 | ## ディレクトリ構造 |
36 | 36 |
|
37 | | -- `contents`: 記事のデータです。`/templates` ディレクトリ内のファイルで HTML への変換ルールが定義されます。 |
38 | | - - `articles`: 記事です。`/articles/サブディレクトリ名` に出力されます。 |
39 | | - - `members`: メンバーの情報です。現状メンバー専用ページは用意していませんが、記事ページから表示できます。 |
40 | | - - `projects`: プロジェクトの情報です。`/projects/サブディレクトリ名` に出力されます。 |
41 | | -- `src` |
42 | | - - `components`: 共通コンポーネント |
43 | | - - `images`: 記事ではなくデザインに用いる画像です。import しない限り出力されません。 |
44 | | - - `pages`: Gatsby の機能によりファイル名がパスに変換されます。 |
45 | | - - `styles`: CSS ファイルです。 |
46 | | - - `templates`: `contents` ディレクトリ内の Markdown ファイルを HTML に変換するルールを定義します。対応関係は `gatsby-node.ts` で定義されています。 |
47 | | - - `gatsby-types.d.ts`: GraphQL クエリの型情報が入ります。自動生成されます。 |
48 | | - - `images.d.ts`: TypeScript ファイルから画像ファイルを import できるようにするための型定義ファイルです。 |
49 | | -- `gatsby-{browser,config,node}.ts`: Gatsby の設定ファイルです。 |
50 | | -- `apollo.config.js`: Apollo Language Server が動作するために必要なファイルです。削除してもウェブサイトの動作には影響を与えません。 |
51 | | -- `{postcss,tailwind}.config.js`: Tailwind 用の設定です。 |
52 | | - |
53 | | -## プルリクエストを出す前に |
54 | | - |
55 | | -```shell |
56 | | -npm run lint && npm run type-check |
57 | | -``` |
| 37 | +- `contents/`: 記事のデータです。Astro の Content Collection を使って `src/pages` から読み込みます。 |
| 38 | +- `src/` |
| 39 | + - `images/`: 記事ではなくデザインに用いる画像です。 |
| 40 | + - `pages/`: Astro の機能によりファイル名がパスに変換されます。 |
| 41 | + - `islands/`: Astro で読み込む Island の集合です。 |
| 42 | + - `content.config.ts`: Astro の Content Collection の設定を書きます。 |
| 43 | + - `global.css`: Tailwind の設定ファイルです。 |
| 44 | +- `astro.config.ts`: Astro の設定ファイルです。Vite の設定もここに書きます。 |
| 45 | +- `biome.jsonc`: Biome の設定ファイルです。Biome のフォーマット部分は Astro に対応していないので、Lint だけ使っています。対応したら両方 Biome にしましょう。 |
| 46 | +- `.prettier{rc,ignore}`: Prettier の設定ファイルです。 Prettier には、 astro と svelte と tailwind のプラグインが入っています。 |
| 47 | +- `svelte.config.js`: 最もフィジカルで、最もプリミティブで、そして最もフェティッシュなフレームワークでいかせていただきます。 |
0 commit comments