์ํํ ๋ ์ฉ์ดํ๊ฒ
๐ฅ๏ธ ๊ณ์ ID : [email protected]
, ๐ PW : ์นผ๋ ๋ณ์๋ฆฌ
๐ ๊ฐ๋ฐ ๊ธฐ๊ฐ : 2023.06.01 ~ 2023.06.30
์๊ธํ ๋ ! ์ฉ์ดํ๊ฒ !
ย ์ ๊ตญ์ ์ผ๋ก ์ฌ๋์ด ์ง์์ ์ผ๋ก ๋ฐ์๋๋ ์ํฉ์์ ๊ตญ๋ฏผ๋ค์ ์์ง ์ฌ๋์ ๋ฌด๊ด์ฌํ๊ณ ์ฌ๋ ๊ด๋ จ ์ ๋ณด ์ ๊ณต ๋ํ ๋ฏธํกํด ์ด๋ฌํ ์ํฉ์ ๊ทน๋ณตํ๊ธฐ ์ํ ๋์ฑ
์์ ์ธ์๋ณด์์ต๋๋ค.
ย ์์ฉ์์ฉ์ ์ค๋งํธํฐ ๋ฐ ๋์งํธ ํ๋ซํผ์ ๊ธฐ๋ฅ์ ํ์ฉํ์ฌ ์ฌ์ฉ์๊ฐ ์ฌ์ ์กฐ์น๋ฅผ ์ทจํ ์ ์๊ฒํ๋ฉฐ, ์ ๊ณต๋๋ ์ ๋ณด์ ์
๊ฐํ ๊ฒฐ์ ์ ๋ด๋ฆฌ๊ณ ์ค์ํ ์ํฉ์์ ์์ ์ ๋ณด์ฅ๋ฐ์ ์ ์๋๋ก ํฉ๋๋ค.
์ ํฌ๋ 4๋ช
์ ํ๋ก ํธ์๋ ๊ฐ๋ฐ์๋ก ๊ตฌ์ฑ๋ '๋จ์ํ' ์
๋๋ค.
ํ์๋ค์ ์ด๋ฆ์์ ํ๋์ฉ ๊ฐ์ ธ์์ ํฉ์น ํ๋ช
์ผ๋ก, ํ์๋ค์ด ํธ๋ฌ๋ธ ์์ด ํจ๊ป ํค์ณ๋๊ฐ์๋ ์๋ฏธ์์ ์ง์ ํ๋ช
์
๋๋ค.
ํ์นํ |
๋จํํฌ |
์์์ง |
ํ์์ง |
|
|
|
|
Jaharim |
tweety-hh |
anyangjin |
g1azed |
ํ์ฅ & Tech Leader |
ํ์ & Document Operator |
ํ์ & Communication Manager |
ํ์ & Project Manager |
- ๊ฐ๋ฐ ํํธ
- ๊ฐ๋ฐ ํ๊ฒฝ ์ธํ
- ESLint ์ ์ฉ
- Prettier ์ ์ฉ
- styled-component
- GlobalStyle ์ ์ฉ
- theme ์ ์ฉ
- ๊ณตํต ์ปดํฌ๋ํธ ๊ตฌํ
- Carousel
- NavBar
- Slider
- NewsFrame
- HelpPage ๊ตฌํ
- DonationPage ๊ตฌํ
- DonationDetail
- DonationInform
- DonationsInput
- ContextAPI ์ ์ฉ
- Router ์ฒ๋ฆฌ
- Router์ Component ์ฐ๊ฒฐ
- ๋น๋ก๊ทธ์ธ ์ํ์์ url๋ก ํ์ด์ง ์ ๊ทผ ๋ถ๊ฐ ๋ฐ ์ ํจํ์ง ์์ url ์ฒ๋ฆฌ
- CSS ์ฒ๋ฆฌ
- ๋ชจ๋ฐ์ผ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์คํฌํ, ๋ชจ๋ฐ์ผ ๋์
- ํ์ ๊ฐ merge์ ๊นจ์ง๋ CSS ์์
- SplashPage, LoginPage, SignUpPage, MainPage, PreventPage, HelpPage, BottomNavBar, SectionHeader, TopBar
- API ์ฐ๊ฒฐ ๋ฐ ๊ธฐ๋ฅ ๊ตฌํ
- ์ด๋ฏธ์ง ์
๋ก๋ ๊ธฐ๋ฅ
- ๊ฐ์ธ ํ๋กํ ๋ถ๋ฌ์ค๊ธฐ ๊ธฐ๋ฅ ๋ฐ ๋งํฌ์
- ํ๋ก์ฐ / ์ธํ๋ก์ฐ ๊ธฐ๋ฅ ๋ฐ ๋งํฌ์
- ํ๋ก์ / ํ๋ก์ ๋ฆฌ์คํธ ๊ธฐ๋ฅ ๋ฐ ๋งํฌ์
- ์ ์ ๊ฒ์ ๊ธฐ๋ฅ ๋ฐ ๋งํฌ์
- ๊ฒ์๊ธ ์์ฑ ๊ธฐ๋ฅ ๋ฐ AddPost Page ๋งํฌ์
- ํ๋ก์ ๊ฒ์๊ธ / ๋์ ๊ฒ์๊ธ ๋ชฉ๋ก ๊ธฐ๋ฅ ๋ฐ ๋งํฌ์
- ๊ฒ์๊ธ ์์ธ ๊ธฐ๋ฅ ๋ฐ ๋งํฌ์
- ์ข์์ / ์ข์์ ์ทจ์ ๊ธฐ๋ฅ
- ๋๊ธ ๋ฆฌ์คํธ ๋ถ๋ฌ์ค๊ธฐ ๊ธฐ๋ฅ ๋ฐ ๋งํฌ์
- ๋๊ธ ์์ฑ ๊ธฐ๋ฅ ๋ฐ ๋งํฌ์
- ๋ก๊ทธ์์ ๊ธฐ๋ฅ
- PreventPage
- PreventPage
- EmergencySuppliesPage
- ActionTipsPage
- App Intro
- IntroScreenPage
- Login&SignUpStartPage
- Login&SignUpPage
- Login
- SignUpPage
- AccountSettingPage
- AccountNameForm
- ProfileSettingPage
- ProfileSettingEndPage
- ChatPage
- ChatIntroPage
- ChatRoomPage
- ErrorPage
- ETC
- MainPage
- PostPage
- CommonComponent
- BottomNavBar
- PostDetailModal
- PostNavBar
- SectionHeader
- TopBar
- App UIUX Design
- Service Planning
- Front-end :
- Back-end : ๋ฉ์์ด ์ฌ์์ฒ๋ผ ์ ๊ณต API ์ฌ์ฉ
- ๊ธฐ๋ณธ์ ์ผ๋ก 5๊ฐ์ง ๋ธ๋์น๋ฅผ ํ์ฉํ๋ Git-flow ์ ๋ต์ด๋, ํ๋ก์ ํธ ๊ท๋ชจ์ ๋ง์ถฐ์ 3๊ฐ์ง๋ก ์ถ์ํด ํ์ฉํ์ต๋๋ค.
main
: ๋ฐฐํฌํ๊ธฐ ์ํ ๋ธ๋์น
develop
: ๊ธฐ๋ฅ ๊ตฌํ, ๋ฒ๊ทธ ์์ ๊ณผ ๊ฐ์ ๊ธฐ๋ฅ ๋จ์๋ณ ๋ธ๋์น
feature
: ์ธ๋ถ ๊ธฐ๋ฅ์ ์ํ ๋ธ๋์น
- ๊ฐ ๋ธ๋์น์ ์ด๋ฆ์ feature/#์ด์๋ฒํธ-์ธ๋ถ๊ธฐ๋ฅ์ผ๋ก ์ด๋ฆ ์ง์ด ์ด๋ ํ ๊ธฐ๋ฅ์ ๋ธ๋์น์ธ์ง๋ฅผ ์ ์ ์๋๋ก ํ์ต๋๋ค.
- push ์๋ฃ ํ์๋ ํด๋น ๋ธ๋์น๋ฅผ ์ญ์ ํ์ฌ ๋ธ๋์น๋ฅผ ์๋ชป ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋ฅผ ๋ฐฉ์งํ์ต๋๋ค.
- Initial : ์์คํ
์ด๊ธฐ ์ค์
- Feat : ์๋ก์ด ๊ธฐ๋ฅ ์ถ๊ฐ
- Design: HTML, CSS ๋ฑ UI ๋์์ธ ๋ณ๊ฒฝ
- Perf: ์ฑ๋ฅ ๊ฐ์
- Refactor: ํ๋ก๋์
์ฝ๋ ๋ฆฌํฉํ ๋ง
- Fix: ๋ฒ๊ทธ(์ฝ๋ ์ค๋ฅ ์์ )
- Docs: ๋ฌธ์ ์์ฑ ๋ฐ ์์
- Remove: ํ์ผ๋ง ์ญ์
- Rename: ํ์ผ ๋ฐ ํด๋๋ช
์์
- Dir: ํ์ผ ๋ฐ ํด๋ ๊ตฌ์กฐ ๋ณ๊ฒฝ ์(์ถ๊ฐ, ์ญ์ )
- Style: ์ฝ๋ ํฌ๋งท ๋ณ๊ฒฝ, ์ธ๋ฏธ ์ฝ๋ก ๋๋ฝ, ์ฝ๋ ์์ ์ด ์๋ ๊ฒฝ์ฐ
- Merge: ํ์ผ ๋๋ ๋ธ๋์น ๋ณํฉํ ๊ฒฝ์ฐ
- Wip: ์๋ฃ๋์ง ์์ ์ค๊ฐ์ ์ปค๋ฐ์ด ํ์ํ ๊ฒฝ์ฐ
- Chore : ๋น๋ ์
๋ฌด ์์ , ํจํค์ง ๋งค๋์ ์์ , ๊ฐ๋ฐ ํ๊ฒฝ ์ธํ
- Assets : Image, Icon ๋ฑ Assets ํ์ผ ๋ณ๋ ์ฌํญ์ด ์์ ๊ฒฝ์ฐ
{
"plugins": ["react", "react-hooks", "prettier"],
"extends": [
"eslint:recommended",
"plugin:react/recommended",
"plugin:react-hooks/recommended",
"prettier"
],
"parserOptions": {
"ecmaVersion": 2021,
"sourceType": "module",
"ecmaFeatures": {
"jsx": true
}
},
"rules": {
// ๋ค์ฌ์ฐ๊ธฐ๋ฅผ 2 ์นธ์ผ๋ก ์ค์
"indent": ["error", 2],
// var ํค์๋๋ฅผ ๊ธ์ง
"no-var": "error",
// async ํจ์์์ ํญ์ await๋ฅผ ์ฌ์ฉ
"require-await": "error",
// ==์ != ์ฐ์ฐ์ ๋์ ===์ !== ์ฐ์ฐ์๋ฅผ ์ฌ์ฉ
"eqeqeq": "warn",
// React ์ปดํฌ๋ํธ์ prop ํ์
์ฒดํฌ๋ฅผ ๋ฌด์
"react/prop-types": 0,
// ์ฌ์ฉ๋์ง ์์ ๋ณ์์ ๋ํ ๊ฒฝ๊ณ ๋๊ธฐ
"no-unused-vars": "off",
// ์นด๋ฉ ์ผ์ด์ค ๋ช
๋ช
๊ท์น ๊ฐ์
"camelcase": "error",
// ๋ฌธ์ฅ ๋์ ์ธ๋ฏธ์ฝ๋ก ์ ์ฌ์ฉํ๋๋ก ์ค์
"semi": ["error", "always"],
// ์ถ๊ฐ์ ์ธ ์ธ๋ฏธ์ฝ๋ก ์ฌ์ฉ์ ๊ธ์ง
"no-extra-semi": "error"
}
}
{
// ๊ฐ์ฒด ๋ฆฌํฐ๋ด์ ์ค๊ดํธ ์ฃผ์์ ๊ณต๋ฐฑ ์ถ๊ฐ
"bracketSpacing": true,
// JSX ์์์ ์ฌ๋ ๊บพ์ ๊ดํธ(<)๋ฅผ ๊ฐ์ ์ค์ ์์น์ํฌ์ง ์ฌ๋ถ
"jsxBracketSameLine": false,
// JSX ์์ฑ ๊ฐ์ ์ฑ๊ธ ์ฟผํ
์ด์
(')์ ์ฌ์ฉ
"jsxSingleQuote": true,
// ๋ฌธ์์ด์ ์ฑ๊ธ ์ฟผํ
์ด์
(')์ ์ฌ์ฉ
"singleQuote": true,
// ํ
์คํธ ๊ธธ์ด์ง ๊ฒฝ์ฐ ์ค ๋ฐ๊ฟ ์ ์ง
"proseWrap": "preserve",
// ๋ฌธ์ฅ ๋์ ์ธ๋ฏธ์ฝ๋ก ์ถ๊ฐ
"semi": true,
// ํ ์ค์ ์ต๋ ๊ธธ์ด ์ค์ , ์ฝ๋๊ฐ ์ด ๊ธธ์ด๋ฅผ ์ด๊ณผํ๋ฉด ์ค ๋ฐ๊ฟ ๋ฐ์
"printWidth": 100,
// ์ค ๋ฐ๊ฟ ๋ฌธ์๋ก LF(Line Feed)๋ฅผ ์ฌ์ฉ
"endOfLine": "lf",
// ๋ค์ฌ์ฐ๊ธฐ์ ํญ์ ์ฌ์ฉํ ์ง ์ฌ๋ถ ์ค์
"useTabs": false,
// ํญ ๋ฌธ์ ํ๋์ ๋๋น ์ค์
"tabWidth": 2,
// ๊ฐ์ฒด๋ ๋ฐฐ์ด์ ๋ง์ง๋ง ์์ ๋ค์ ์ผํ๋ฅผ ์ถ๊ฐํ ์ง ์ฌ๋ถ ์ค์
"trailingComma": "all",
// ํ์ดํ ํจ์์ ๋งค๊ฐ๋ณ์๊ฐ ๋จ์ผ ๋งค๊ฐ๋ณ์์ธ ๊ฒฝ์ฐ ๊ดํธ๋ฅผ ์ฌ์ฉํ ์ง ์ฌ๋ถ ์ค์
"arrowParens": "always"
}
๋ฉ์ธํ์ด์ง |
ํ์๊ธ |
|
|
๋ง์ด ํ์ด์ง |
ํ๋ก์/ํ๋ก์ ๋ฆฌ์คํธ |
|
|
Prevent |
EmergencySupplies |
ActionTips |
|
|
|
๊ฒ์๊ธ ์
๋ก๋ |
๊ฒ์๊ธ ์ข์์์ ๋๊ธ |
๊ฒ์๊ธ ํผ๋ |
|
|
|
ํ๋ก์/ํ๋ก์ |
|
์ฒซํ์ด์ง |
ํ์๊ธ ๊ธฐ๋ถ |
|
|
API๋ฅผ ์ฌ์ฉํ๋ฉด์ ๋ฐฑ์๋์์ ๋ฐ์ดํฐ ํต์ ๊ณผ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ฅผ ๊ฒฝํํ ์ ์์์ต๋๋ค. API๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ๊ณ ์๋ต์ ๋ฐ์์ค๋ ๊ณผ์ ์์ ๋น๋๊ธฐ ์ฒ๋ฆฌ์ ์๋ฌ ํธ๋ค๋ง ๋ฑ์ ๋ค๋ฃจ๋ฉฐ, ์ค์ ์๋น์ค ๊ฐ๋ฐ์ ํ์์ ์ธ ์์๋ค์ ๋ฐฐ์ธ ์ ์์์ต๋๋ค. ์ด๋ฅผ ํตํด ํ๋ก ํธ์๋์ ๋ฐฑ์๋ ๊ฐ์ ํ์
๋ฐฉ์๊ณผ ๋ฐ์ดํฐ ํ๋ฆ์ ์ดํดํ๋ ๋ฐ ํฐ ๋์์ด ๋์์ต๋๋ค.
๋, ์ปค๋ฐ ์ปจ๋ฒค์
๊ณผ ์ฝ๋ ์ปจ๋ฒค์
์ ์ค์ํ๋ฉฐ ํ๋ก์ ํธ๋ฅผ ์งํํ์๋๋ฐ ์ผ๊ด๋ ์ปค๋ฐ ๋ฉ์์ง ํ์๊ณผ ์ฝ๋ ์คํ์ผ์ ์ ์งํ๋ ๊ฒ์ ํตํด ํ ๋ด์์ ์ผ๊ด์ฑ ์๋ ๊ฐ๋ฐ ํ๊ฒฝ์ ์ ์งํ ์ ์์๊ณ ์ฝ๋ ๋ฆฌ๋ทฐ์ ํ์
๊ณผ์ ์์ ์ํํ ์ํต๊ณผ ์ดํด๊ฐ ๊ฐ๋ฅํ์ต๋๋ค.
Git์ ํ์ฉํ์ฌ ์ฝ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์ถ์ ํ๊ณ ๋ณํฉํ๋ ๊ณผ์ ์์ ์ถฉ๋ ํด๊ฒฐ๊ณผ ๋ธ๋์น ๊ด๋ฆฌ๋ฅผ ๋ฐฐ์ธ ์ ์์์ต๋๋ค.
์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ํตํด ์ค์ ๊ฐ๋ฐ ํ๊ฒฝ์์์ ๊ฒฝํ์ ์์ ์ ์์๊ณ ๊ฐ๋ฐ ์ญ๋๊ณผ ํ์
๋ฅ๋ ฅ, ๋ฌธ์ ํด๊ฒฐ ๋ฅ๋ ฅ ๋ฑ์ ํฅ์์ํฌ ์ ์์์ต๋๋ค.
์ฌ๋ฌ๊ฐ์ง๋ก ๋ถ์กฑํจ์ด ๋ง๋ ์ ์๊ฒ ํญ์ ๋ค์ ํ๊ฒ ์์ํด์ค ๋จ์ํ ํ์ ๋ถ๋ค ๋ค ๋๋ฌด๋๋ฌด ๊ฐ์ฌํฉ๋๋ค. ์ฒซ ํ๋ก์ ํธ๋ผ ๊ฑฑ์ ์ด ๋ง์๋๋ฐ ๋๋ฌด ์ข์ ๋ถ๋ค์ ๋ง๋์ ๋๊น์ง ๋ฌ๋ ค์ฌ ์ ์์๋๊ฑฐ๊ฐ์ต๋๋ค! ์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ๊ณ๊ธฐ๋ก ์ ์ ๋ถ์กฑํ ์ ์ ๋์๋ณด๊ณ ๋ ์ฑ์ฅํ ์ ์๋ ๊ธฐํ๊ฐ ๋ ๊ฑฐ๊ฐ์์ ๋๋ฌด ๋ป ๊น์ ๊ฒฝํ์ด์์ต๋๋ค! ๋ค๋ค ๋ ๋ฉ์ง ๊ณณ์ผ๋ก ์ฌ๋ผ๊ฐ๋ ๊ทธ ๋ ๊น์ง ํ์ดํ
์
๋๋ค!
โค๏ธ 9ํย โ๋จ์ํโย ์ต๊ณ ์ต๊ณ โค๏ธ
์ฒซ ๋ง๋จ๋ถํฐย ๋ฒ์์น ์๋ย ์ฐ๋ฆฌ ํ
์ฌ๋ฌ๋ถ๋ค๊ณผ ํจ๊ปํด์ ๋๋ฌด ์๊ด์ด์ ํ๋ณตํ์ด์!!
ํ์ย ํ ๋ช
ย ํ ๋ช
์๊ฒย ๋ฐฐ์ธ ์ ๋ค์ดย ๋๋ฌด ๋ง์๊ณ ์๋ก ๋ถ์กฑํ ๋ถ๋ถ๋ค์ ์๋ ค์ฃผ๋ฉฐ ํ์ธต ๋ ์ฑ์ฅํ๋ ๊ณ๊ธฐ๊ฐ ๋์์ด์!๐
์ด๋ ค์ด ๋ถ๋ถ๋ ์ฌ๋ฌ๋ถ๋ค๊ณผ ํจ๊ปํด์ ํด๊ฒฐํ๊ณ ย ๊ณ ์ณ ๋๊ฐ ์ ์์๋ ๊ฒย ๊ฐ์ต๋๋ค!!
ํ์
์ ์ง์ ํ ์๋ฏธ๋ฅผ ์ดํดํ๊ฒ ๋์์ด์๐ฅน
์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ์งํํ๋ฉฐ ์ค์ค๋ก ์ด๋ค ๋ถ๋ถ์ด ๋ง์ด ๋ถ์กฑํ์ง ๊ทธ๋ฆฌ๊ณ ํ์ํ ๋ถ๋ถ์ ์ด๋ค ๊ฒ๋ค์ด ์๋์ง ํ์คํ ์ ์ ์๋ ๊ณ๊ธฐ๊ฐ ๋์ด ์ข์๊ณ , ์ด๋ฅผ ๊ณ๊ธฐ๋ก ์ข ๋ ์ฑ์ฅํ ์ ์๋ ๊ธฐํ๊ฐ ๋์์ต๋๋ค.
9ํ ์ด๋ฒ ํ๋ก์ ํธ๋ฅผ ์์์ผ๋ก ๋ชจ๋๊ฐ ๊ฐ๋ฐ์๋ก์ย ์ต๊ณ ์ ์๋ฆฌ๋กย ์ฌ๋ผ๊ฐ๋ ๋ ๊น์ง ํ์ดํ
์
๋๋ค!!๐ฅ๐ฅ
์ง๋์น๊ฒ ๋ถ์กฑํ ์ ๋ฅผ ์์์ ์์ํด์ฃผ๊ณ ์ฉ๊ธฐ๋ฅผ ๋ถ๋์์ค ์ฐ๋ฆฌ ๋จ์ํ ํ์๋ค ๋๋ฌด๋๋ฌด ๊ณ ๋ง์ต๋๋ค. ์ฒซ๋ฒ์งธ ํ๊ฐ๋ฐํ๋ก์ ํธ๋ผ ์๋ฌด๊ฒ๋ ๋ชฐ๋ผ์ ๋ง์ด ๋ฒ๊ฑฐ์ ์ง๋ง ํ์๋ถ๋ค ๋๋ถ์ ๋ฒํธ ์ ์์์ต๋๋ค. ๋๋ฌด ๋ง์ด ์์ฝ๊ณ ์ฑ์ฐ๊ณ ์ถ์๋๊ฒ ๋ง์๋ ํ๋ก์ ํธ์ง๋ง ์ด๋ฒ ๊ฒฝํ์ ํตํด์ ์ ์๊ฒ ๋ถ์กฑํ ์ ์ด ๋ฌด์์ธ์ง ํ์คํ ์ง๊ณ ๋์ด๊ฐ ์ ์์๋ ๊ธฐ๊ฐ์ด์์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค.