Giter VIP home page Giter VIP logo

corp-site's Introduction

開発環境

Dependencies

name description
TypeScript -
Next.js ApRouter 使用
TailwindCSS -
ESLint 静的解析
Prettier コード整形
Husky Git フックの設定
clsx 動的なクラスの使い分けなど
Storybook UI コンポーネントのテスト・管理

npm scripts

name action command
dev 開発モード実行 next dev
build ビルド next build
start 本番モードの起動 next start
lint コードチェック next lint —dir src/app
lint:fix コード精鋭 next lint —fix —dir src/app
format フォーマット実行 prettier --write
markuplint HTML(JSX)の構文チェック markuplint "./*/.tsx"",

Ts・Lint・Format・Commit ルール

tsconfig

properties description true/false
"allowJs" js/jsx ファイルをコンパイルする false
"forceConsistentCasingInFileNames" ファイルの大文字小文字の区別 true
"noImplicitReturns" 戻り値が void 以外の関数において、すべての条件分岐で戻り値を返すよう強制する true
"noUncheckedIndexedAccess" インデックス型のプロパティや配列要素を参照したとき undefined のチェックを必須に true

ESLint

TailwindCSS の Linter:プロパティの自動整形 import/order:import 文の自動整形 unused-imports:不要な import 文の削除 react/jsx-sort-props:propsの自動ソート

Prettier

  • 行の最大幅は 120 文字
  • JSX 式は新しい行に
  • インデントは 2 スペース
  • 配列などの末尾のカンマは削除
  • 文末のセミコロンは削除
  • クォーテーションはシングルクォーテーションを使用

commit メッセージ制約

<gitmoji><Prefix>:<内容><#issue番号>

gitmoji と prefix の種類

絵文字 prefix 内容
feat 新機能の実装
⚡️ perf パフォーマンスの改善
🔥 fire 機能・ファイルの削除
🐛 fix バグの修正
🩹 typo ちょっとした修正(小さなミス・誤字など)
📝 docs コードと関係ない部分(Readme・コメントなど)
💄 style スタイル関係のファイル(CSS・UI のみの変更など)
♻️ refactor コードのリファクタリング
🎨 art コードのフォーマットを整える(自動整形されたのも含む)
🔧 config 設定ファイルの追加・更新(linter など)
test テストファイル関連(追加・更新など)
🚚 move ファイルやディレクトリの移動
🎉 start プロジェクトの開始
🚀 deploy デプロイする

ブランチルール

Git flowを参考に、以下のルールで行う
流れとしては

  1. issueを立てる
  2. issueに紐づくfeatureブランチを作成する
  3. PRを作成する
  4. developブランチにmergeする

main

本番環境のブランチ

develop

featureブランチの変更を反映しmergeして動作の確認を行う。

develop/{version}

例:最初のバージョンのリリース

develop/1.0

feature

developブランチから派生させる
全ての開発はこのブランチで行う。
基本的に新機能の場合はfeature/{#issue番号}

(カテゴリ)
name description
environment 環境構築・設定周りの作業
refactoring コードのリファクタリングを行う
improvement 実装済みの機能改善を行う

新機能開発の場合

feature/#<issue番号>

例:issue:全体のレイアウト構成の作成 #2

feature/#2

カテゴリを含む場合

feature/<category>/#<issue番号>

例:issue:環境構築 #1

feature/environment/#1

release

(TBD)
developからmergeする
mainブランチにmergeする前に確認する作業を行う

hotfix

(TBD)
mainブランチから派生する
リリース後に起きた緊急のバグ対応を行う

corp-site's People

Contributors

fukuemon avatar

Watchers

 avatar

corp-site's Issues

🔧 environment: storybookの導入とplopによるコンポーネント自動生成

概要

Storybookのセットアップを行い、plopを用いてコンポーネントの自動生成を行う

タスク

  • plopの導入
  • storybookのセットアップ
  • 自動生成scriptの作成

追加したモジュール

  • plop:コンポーネント自動生成
  • storybook:UIテスト
  • Jest:テスティングライブラリ

備考

Jestを導入する可能性あり

✨ feature: レスポンシブ対応

概要

スマホでも見れるように、モバイル端末の対応を行う。
新機能と並行だが、優先度は機能開発

完了の定義

レスポンシブ対応

タスク

  • [ ]
  • [ ]

追加するモジュール

備考

No response

✨ feature: 取引先メーカーセクションの作成

概要

取引先相手の企業を紹介するSectionを作る
tabで五十音順に並び替えることができるようにする

完了の定義

SuppliersSectionの作成

タスク

  • AlphabeticalOrderTabの作成
  • 企業のデータ作成

追加するモジュール

備考

No response

✨ feature: ナビゲーションバーとヘッダーの作成

概要

ナビゲーションとヘッダーの作成を行う

Figmaデザイン

image

完了の定義

Figmaデザインの通りに実装する
#20

タスク

  • ナビゲーションバーの作成
  • ヘッダーの作成

追加するモジュール

備考

グラデーションと背景上の画像を配置する方法

✨ feature: カラーパレット・データ・レイアウトの構築

概要

ホームページ全体のレイアウトを作成し、
カラーパレットを作成する
また、ホームページ内のデータを定数として定義する

完了の定義

レイアウトとカラーパレット・データの準備。
#15

タスク

  • データの用意
  • font・colorを設定する
  • ページ全体のレイアウトを決める
  • コンポーネントの構成を考える

追加したモジュール

  • shadcn/ui:コンポーネントライブラリ

備考

No response

✨ feature: ServiceContentsセクションの作成

概要

営業内容のセクションを作成する
ServiceContentコンポーネントを作成し、アイコンと業務内容を含ませる

完了の定義

営業内容のセクションを作成する
#22

タスク

  • ServiceContentコンポーネントの作成
  • ServiceContentListコンポーネントの作成

追加するモジュール

  • lucide icon

備考

https://lucide.dev/icons/

🔧 environment: Cloudflareへのデプロイ

概要

デプロイ先をCloudfrareとする
デプロイ方法などを記録する

タスク

  • nextConfigの設定
  • cloudflareの設定

追加するモジュール

備考

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.