Skip to content

ebokyung/eggplant-market-react

Repository files navigation

EggplantMarket

배포 URL:
id: eggplant@market.com
pw: 123123123

팀원 소개

박재영 이보경
jyp bokyung
GitHub GitHub

목차

  1. 프로젝트 소개
  2. 기술 스택
  3. 역할 분담
  4. 주요 기능
  5. 페이지 기능
  6. 파일 구조
  7. 컨벤션

1. 프로젝트 소개

[프로젝트 설명]

가지마켓은 나눔의 정신을 실천하고 사회적 가치를 실현하는데 기여할 수 있는 소중한 플랫폼입니다. 함께 가치를 지켜가며 더 나은 세상을 만들어가보세요. :)

[프로젝트 기간]

  • 총 개발 기간 :

[프로젝트 목표]

  • 바닐라 자바스크립트로 개발한 가지마켓 프로젝트 리액트로 마이그레이션

2. 기술 스택

사용 기술       SASS   
협업          
IDE  

3. 역할 분담


4. 주요 기능

  • 로그인 / 회원가입
    • 로그인
    • 회원가입
    • 유효성 검사
    • 프로필 설정
  • 피드
    • 게시글 목록 - 목록형/앨범형
  • 검색
    • 유저 검색
  • 게시물
    • 게시물 작성 / 수정 / 삭제
    • 댓글 게시 / 삭제
    • 이미지 업로드 / 수정
  • 채팅 (마크업만 진행)
    • 채팅 리스트
    • 채팅창
  • 마이 프로필
    • 로그아웃
    • 프로필 수정
    • 팔로우 / 팔로잉
    • 판매 상품 업로드 / 수정 / 삭제
  • 유저 프로필
    • 팔로우 / 팔로잉


5. 페이지 기능

1) 홈

[로그인] [회원가입]
[채팅] [검색] [홈 화면]

2) 게시글

[게시글 업로드] [게시글 수정] [게시글 상세]

3) 상품 판매

[상품 등록] [상품 수정] [상품 삭제]

4) 프로필

[나의 프로필] [나의 팔로우/팔로잉 목록] [다른 사람의 팔로우/팔로잉 목록]

5) 고대비 테마

[고대비테마 적용] [다시 라이트모드로] [고대비 상품 등록]

6. 파일 구조

기본포맷
├── 📁 src
│   ├── 📁 assets
│   ├── 📁 components
│   ├── 📁 config
│   ├── 📁 hooks
│   ├── 📁 libs
│   │   ├── 📁 api
│   │   ├── 📁 constant
│   │   ├── 📁 dummy
│   │   └── Meta.jsx
│   ├── 📁 pages
│   │   └── 📁 page
│   │       ├── 📁 api
│   │       ├── 📁 style
│   │       ├── 📁 routes
│   │       └── 📁 components
│   ├── 📁 recoil
│   ├── 📁 routes
│   ├── 📁 styles
│   │   ├── 📁 font
│   │   └── 📁 scss
│   ├── 📁 utils
│   ├── App.js
│   └── index.js
├── package.json
├── package-lock.json
├── .prettierrc
├── .eslintrc
└── README.md

7. 컨벤션

[작업 관리]


[커밋 컨벤션]

  • Git commit message
    • #이슈번호 <아래컨벤션> : <커밋내용>
- add : 새로운 기능 추가
- fix : 버그 수정(단순 수정 X), 충돌 해결
- docs : 문서 수정
- chore : 코드의 논리에 영향이 없는 작업. 변수명 변경 등등
- design : 마크업 및 디자인 구현, 변경
- rename : 파일 이름의 변경 or 파일의 이동
- remove : 파일의 삭제
- refactor : 리팩토링
- test : 테스트 관련 코드 추가 및 삭제 등
- comment : 필요한 주석 추가 및 변경

[코드 컨벤션]

  • .prettierrc

    {
    "singleQuote": true,
    "semi": true,
    "tabWidth": 2,
    "printWidth": 200,
    "arrowParens": "avoid",
    "trailingComma": "all"
    }
    
  • .eslintrc

    {
      "env": {
        "browser": true,
        "es6": true,
        "node": true
      },
      "parserOptions": {
        "parser": "@babel/eslint-parser",
        "ecmaVersion": 2020
      },
      "extends": ["airbnb", "eslint:recommended", "plugin:prettier/recommended"],
      "rules": {
        "react/jsx-filename-extension": ["error", { "extensions": [".js", ".jsx"] }],
        "react/prop-types": "off",
        "import/newline-after-import": "off",
        "react/jsx-props-no-spreading": ["warn"],
        "import/prefer-default-export": "off",
        "no-underscore-dangle": "off",
        "no-unused-expressions": "off",
        "jsx-a11y/no-noninteractive-tabindex": [
          "error",
          {
            "tags": ["label"],
            "roles": ["tabpanel"],
            "allowExpressionValues": true
          }
        ],
        "import/no-extraneous-dependencies": 0
      }
    }
    
    

About

가치를 지켜라! 가지마켓 - 리액트 버전

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published