diff --git a/.github/PULL_REQUEST_TEMP b/.github/PULL_REQUEST_TEMP new file mode 100644 index 00000000..8a2c2209 --- /dev/null +++ b/.github/PULL_REQUEST_TEMP @@ -0,0 +1,7 @@ +## Related Issue + +## WorkList + +### [ Title ] + +### [ Problem ] diff --git a/.github/workflows/ISSUE_TEMPLATE/bug_report.md b/.github/workflows/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 00000000..7f7cddaf --- /dev/null +++ b/.github/workflows/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,14 @@ +--- +name: Bug report +about: Create a report to help us improve +title: '' +labels: 'Error, :sos: help' +assignees: jin-Pro + +--- + +## What happened + +## How Solved it + +## I Think... diff --git a/.github/workflows/ISSUE_TEMPLATE/feature_request.md b/.github/workflows/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 00000000..da266334 --- /dev/null +++ b/.github/workflows/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,12 @@ +--- +name: Feature request +about: Suggest an idea for this project +title: '' +labels: FE, Feature +assignees: jin-Pro + +--- + +## Description + +## Todo diff --git a/.github/workflows/chromatic.yml b/.github/workflows/chromatic.yml new file mode 100644 index 00000000..551b3237 --- /dev/null +++ b/.github/workflows/chromatic.yml @@ -0,0 +1,27 @@ +# Workflow name +name: "Chromatic Deployment" + +# Event for the workflow +on: + push: + branches: [dev] + +env: + client-directory: ./client + +# List of jobs +jobs: + test: + # Operating System + runs-on: ubuntu-latest + # Job steps + steps: + - uses: actions/checkout@v1 + + - name: Client npm install + working-directory: ${{env.client-directory}} + run: npm install + + - name: Storybook Deploy + working-directory: ${{env.client-directory}} + run: npm run diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100755 index 00000000..1458cc1b --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1,4 @@ +#!/usr/bin/env sh +. "$(dirname -- "$0")/_/husky.sh" + +cd client && npm run lint-staged diff --git a/.husky/pre-push b/.husky/pre-push new file mode 100755 index 00000000..8a654ce4 --- /dev/null +++ b/.husky/pre-push @@ -0,0 +1,4 @@ +#!/usr/bin/env sh +. "$(dirname -- "$0")/_/husky.sh" + +cd client && npm run test diff --git a/README.md b/README.md index 20ebdda3..ee4c5d02 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,20 @@ +## π¨ νμμκ° + +| J039 | J080 | J154 | J220 | +| :------------------------------------------: | :---------------------------------------------: | :---------------------------------------------: | :-----------------------------------------------: | +| [κΉμμ§](https://github.com/jin-Pro) | [λ―Όνν](https://github.com/taehong0-0) | [μ΄μ€μ±](https://github.com/ddaynew365) | [ννμ](https://github.com/Noelsky-code) | +| | | | | + +## [κΈ°μ μ€ν](https://github.com/boostcampwm-2021/web10-CowDogTing/wiki/%EA%B8%B0%EC%88%A0-%EC%8A%A4%ED%83%9D) + +![image](https://user-images.githubusercontent.com/64246267/142752437-7bb13285-946d-47df-ac42-90afad950ed8.png) + # CowDogTing
-
-COWDOGTING -
- --- ### μ£Όμν μ @@ -27,20 +34,25 @@ COWDOGTING --- -## [κΈ°μ μ€ν](https://github.com/boostcampwm-2021/web10-CowDogTing/wiki/%EA%B8%B0%EC%88%A0-%EC%8A%A4%ED%83%9D) - -![image](https://user-images.githubusercontent.com/64246267/142752437-7bb13285-946d-47df-ac42-90afad950ed8.png) - ## Resources -### Backlog +- ### Backlog + - [v0.0.1 Backlog](https://docs.google.com/spreadsheets/d/167yJb78hPknp7S7JK_qtHvbFZXPQ6wmps1iL3sgt1es/edit#gid=1761511684) + - [v0.0.2 Backlog](https://docs.google.com/spreadsheets/d/1KEDtPdyq-6ktoalXyqvbzD71V4ZJRgGZdSqqrwF8L4g/edit#gid=0) + - [v0.0.3 Backlog](https://docs.google.com/spreadsheets/d/1iHp0oGUdseSQMF6j1ngycMOpkKxyRaUgIkAEP47pWUE/edit#gid=0) +- ### StoryBook URL + - [λ°°ν¬](https://www.chromatic.com/build?appId=62f3c06c73a375912ca8d9be&number=1) + - [repo](https://github.com/jin-Pro/CowDogTing_Storybook) +- ### API λ¬Έμ + - [API](https://github.com/boostcampwm-2021/web10-CowDogTing/wiki/API-%EB%AC%B8%EC%84%9C) +- ### Test λ¬Έμ -- [v0.0.1 Backlog](https://docs.google.com/spreadsheets/d/167yJb78hPknp7S7JK_qtHvbFZXPQ6wmps1iL3sgt1es/edit#gid=1761511684) -- [v0.0.2 Backlog](https://docs.google.com/spreadsheets/d/1KEDtPdyq-6ktoalXyqvbzD71V4ZJRgGZdSqqrwF8L4g/edit#gid=0) + - [Jest](https://github.com/boostcampwm-2021/web10-CowDogTing/wiki/Jest-%EB%AC%B8%EC%84%9C) -## π¨ νμμκ° +- ### Type λ¬Έμ -| J039 | J080 | J154 | J220 | -| :------------------------------------------: | :---------------------------------------------: | :---------------------------------------------: | :-----------------------------------------------: | -| [κΉμμ§](https://github.com/jin-Pro) | [λ―Όνν](https://github.com/taehong0-0) | [μ΄μ€μ±](https://github.com/ddaynew365) | [ννμ](https://github.com/Noelsky-code) | -| | | | | + - [Type](https://github.com/boostcampwm-2021/web10-CowDogTing/wiki/Type-%EB%AC%B8%EC%84%9C) + +- ### κ°μ μ¬ν + - [Infinity Scroll λΉκ΅ λΆμ](https://velog.io/@0_jin/%EB%AC%B4%ED%95%9C%EC%8A%A4%ED%81%AC%EB%A1%A4-%EC%84%B1%EB%8A%A5-%EA%B0%9C%EC%84%A0) + - [Code splitting μ μ©](https://velog.io/@0_jin/WebVitals-10-%EB%8B%A8%EC%B6%95%EC%8B%9C%ED%82%A4%EA%B8%B0) diff --git a/client/.eslintrc.json b/client/.eslintrc.json index 655620b3..e3c22eb3 100644 --- a/client/.eslintrc.json +++ b/client/.eslintrc.json @@ -22,6 +22,10 @@ }, "plugins": ["react", "@typescript-eslint"], "rules": { + "camelcase":1, + "no-undef" : 1, + "react/require-default-props" : 0, + "no-nested-ternary" : 0, "react/jsx-props-no-spreading" : 0, "react/jsx-no-useless-fragment" : 0, "no-shadow" : 0, @@ -30,21 +34,21 @@ "react/prop-types" : 0, "react/react-in-jsx-scope" : 0, "no-param-reassign" : 0, - "import/prefer-default-export": 0, - "react/function-component-definition" : 0, - "react/jsx-filename-extension" : 0, - "import/no-unresolved": 0, - "react/no-array-index-key" : 0, - "no-use-before-define" : 0, - "import/extensions" : 0, - "no-unused-vars" : 1, - "import/no-extraneous-dependencies" : 0, - "prettier/prettier": [ - "error", - { - "endOfLine": "auto" - } - ] + "import/prefer-default-export": 0, + "react/function-component-definition" : 0, + "react/jsx-filename-extension" : 0, + "import/no-unresolved": 0, + "react/no-array-index-key" : 0, + "no-use-before-define" : 0, + "import/extensions" : 0, + "no-unused-vars" : 1, + "import/no-extraneous-dependencies" : 0, + "prettier/prettier": [ + "error", + { + "endOfLine": "auto" + } + ] }, "settings": { "import/resolver": { diff --git a/client/.storybook/main.js b/client/.storybook/main.js new file mode 100644 index 00000000..6d0d46eb --- /dev/null +++ b/client/.storybook/main.js @@ -0,0 +1,27 @@ +const path = require("path"); +const toPath = (_path) => path.join(process.cwd(), _path); + +module.exports = { + stories: ["../src/Component/Atom/**/*.stories.tsx"], + addons: ["@storybook/addon-links", "@storybook/addon-essentials", "@storybook/addon-interactions", "@storybook/preset-create-react-app"], + framework: "@storybook/react", + core: { + builder: "@storybook/builder-webpack5", + }, + webpackFinal: async (config) => { + config.resolve.alias["@Atom"] = toPath("src/Component/Atom"); + config.resolve.alias["@Core"] = toPath("src/Component/Core"); + config.resolve.alias["@Hook"] = toPath("src/Hook"); + config.resolve.alias["@Page"] = toPath("src/Component/Page"); + config.resolve.alias["@Molecules"] = toPath("src/Component/Molecules"); + config.resolve.alias["@Organism"] = toPath("src/Component/Organism"); + config.resolve.alias["@Template"] = toPath("src/Component/Template"); + config.resolve.alias["@Hoc"] = toPath("src/Component/Hoc"); + config.resolve.alias["@Common"] = toPath("src/Util"); + config.resolve.alias["@Recoil"] = toPath("src/Recoil"); + config.resolve.alias["@Socket"] = toPath("src/Socket"); + config.resolve.alias["@emotion/styled"] = toPath("node_modules/@emotion/styled"); + config.resolve.alias["@emotion/react"] = toPath("node_modules/@emotion/react"); + return config; + }, +}; diff --git a/client/.storybook/preview.js b/client/.storybook/preview.js new file mode 100644 index 00000000..cd1e0603 --- /dev/null +++ b/client/.storybook/preview.js @@ -0,0 +1,68 @@ +export const parameters = { + actions: { argTypesRegex: "^on[A-Z].*" }, + controls: { + matchers: { + color: /(background|color)$/i, + date: /Date$/, + }, + }, +}; + +// function Test({ profileDatas, teamDatas, userDatas, children }) { +// const setProfileModal = useSetRecoilState(profileModalDatas); +// const setTeamState = useSetRecoilState(teamState); +// const setUserState = useSetRecoilState(userState); + +// setProfileModal(profileDatas); +// setTeamState(teamDatas); +// setUserState(userDatas); + +// return