Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[김현묵] sprint1,2 #53

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions .github/workflows/auto-label-assign.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: PR 자동 라벨링 및 담당자 할당

on:
pull_request:
types: [opened, reopened]

jobs:
add-labels-assign:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v2

- name: Add labels and assign PR creator
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
PR_NUMBER=${{ github.event.pull_request.number }}
PR_CREATOR=${{ github.event.pull_request.user.login }}

# Add labels
curl -X POST -H "Authorization: token $GITHUB_TOKEN" \
-H "Accept: application/vnd.github.v3+json" \
https://api.github.com/repos/${{ github.repository }}/issues/$PR_NUMBER/labels \
-d '{"labels":["매운맛🔥", "진행 중 🏃"]}'

# Assign PR creator
curl -X POST -H "Authorization: token $GITHUB_TOKEN" \
-H "Accept: application/vnd.github.v3+json" \
https://api.github.com/repos/${{ github.repository }}/issues/$PR_NUMBER/assignees \
-d "{\"assignees\":[\"$PR_CREATOR\"]}"
27 changes: 12 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,14 @@
# 🐼 판다마켓 프로젝트

> _이 저장소는 판다마켓 프로젝트의 프론트엔드 코드를 관리하는 곳입니다. 프로젝트를 클론하여 개발 환경을 설정하고, 각 브랜치에서 해당 스프린트 미션을 수행해 주세요!_ 🛠️

## 소개

안녕하세요! 판다마켓 프로젝트에 오신 것을 환영합니다! 🥳
판다마켓은 따뜻한 중고거래를 위한 커뮤니티 플랫폼이에요. 여러분은 이곳에서 상품을 등록하고, 다른 사용자들과 소통하며, 자유롭게 이야기를 나눌 수 있어요. 매주 스프린트 미션을 통해 기능을 하나씩 만들어 가며 성장해 나가는 여정을 함께해요. 🚀

![PandaMarket](https://github.com/user-attachments/assets/3784b99f-73c9-4349-a9a9-92b2a7563574)
_위 이미지는 판다마켓의 대표 이미지입니다. 프로젝트가 진행됨에 따라 더 많은 이미지를 추가할 예정이에요!_ 📸
_위 이미지는 판다마켓의 대표 이미지입니다._ 📸

## 스프린트 미션이란? 🤔

Expand All @@ -24,29 +26,24 @@ _위 이미지는 판다마켓의 대표 이미지입니다. 프로젝트가 진

### 브랜치 설명

1. **basic (part1): 스프린트 미션 1 ~ 4**
1. **basic (part1): 스프린트 미션 1 ~ 4 FE 요구사항**

- 기본적인 웹 애플리케이션 기능 구현을 위한 초기 단계입니다. HTML, CSS, JavaScript 등을 사용해 기본을 다집니다.
- 기본적인 웹 애플리케이션 기능 구현을 위한 초기 브랜치입니다. HTML, CSS, JavaScript 등을 사용해 기본을 다집니다.
- **스프린트 미션 1부터 4까지**의 프론트엔드 내용을 포함하고 있어요.

2. **react (part2): 스프린트 미션 5 ~ 7**
2. **react (part2): 스프린트 미션 5 ~ 7 FE 요구사항**

- React 라이브러리를 사용해 프론트엔드 기능을 구현하는 단계입니다. 컴포넌트 기반 아키텍처와 상태 관리를 배웁니다.
- **스프린트 미션 5부터 7까지**의 프론트엔드 내용을 포함하고 있어요.
- React 라이브러리를 사용해 프론트엔드 기능을 구현하는 브랜치입니다. 컴포넌트 기반 아키텍처와 상태 관리를 배웁니다.
- **스프린트 미션 5부터 7까지, 그 이후**의 프론트엔드 내용을 포함하고 있어요.
- 만약 스프린트 미션 9부터 프론트엔드 코드를 Next가 아닌 React로 구현하고 싶다면 react 브랜치를 사용해요.

3. **next (part3,4): 스프린트 미션 8 ~**
3. **next (part3,4): 스프린트 미션 8 FE 요구사항~**

- Next.js를 사용해 서버 사이드 렌더링(SSR)과 정적 사이트 생성(SSG) 등 고급 기능을 구현합니다.
- **스프린트 미션 8부터** 시작하는 프론트엔드 내용을 포함하고 있어요.
- 만약 스프린트 미션 9부터 프론트엔드 코드를 React가 아닌 Next로 구현하고 싶다면 next 브랜치를 사용해요.

4. **express (part1): 스프린트 미션 4**

- 백엔드 서버 설정과 간단한 API 구현을 위한 Express.js 프로젝트의 초기 세팅이 포함돼요.
- **스프린트 미션 4**의 백엔드 내용이 포함돼 있어요.

5. **express (part2~4): 스프린트 미션 6 ~ 12**
- Express.js를 이용해 더 복잡한 백엔드 기능을 구현하는 단계입니다. 데이터베이스 연동, 인증 및 권한 관리 등 고급 API 설계가 포함됩니다.
- **스프린트 미션 6부터 12까지**의 백엔드 내용이 들어 있어요.
> _스프린트 미션 내 백엔드 요구사항은 [백엔드 레포지토리](https://github.com/codeit-sprint-fullstack/3-sprint-mission-be)의 브랜치에서 관리해주세요_

---

Expand Down
143 changes: 143 additions & 0 deletions css/_login.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
main {
width: 100%;
height: 100vh;
display: flex;
align-items: center;
justify-content: center;
}

main > .content {
width: 640px;
text-align: center;
}
.big_logo {
display: block;
margin-bottom: 40px;
}

#forms {
}
#forms label {
display: block;
width: 100%;
position: relative;
text-align: left;
font-size: 18px;
font-weight: 700;
margin-bottom: 10px;
}
#forms .inputbox {
width: 100%;
padding: 16px 24px;
border-radius: 12px;
height: 56px;
background: var(--gray100);
margin-bottom: 36px;
display: flex;
border: 1px solid transparent;
position: relative;
}
#forms .inputbox.on {
border: 1px solid var(--primary100);
}
#forms .inputbox input {
border: 0;
width: 100%;
height: 100%;
background: transparent;
font-size: 16px;
outline: none;
}
#forms .inputbox .seePw {
display:flex;
align-items: center;
justify-content: center;
}

#forms .inputbox.err {
border-color: var(--error);
}
#forms .inputbox .errMsg {
position: absolute;
left: 0;
top: 110%;
/* position: absolute; */
display: block;
text-align: left;
padding-left: 16px;
font-size: 15px;
font-weight: 600;
color: var(--error);
letter-spacing: -1px;
}
#forms button.btn.loginBtn {
width: 100%;
height: 56px;
background: var(--gray400);
color: var(--gray50);
font-size: 20px;
line-height: 32px;
font-weight: 600;
border: 0;
border-radius: 40px;
margin-bottom: 24px;
transition: 0.5s;
}
#forms button.btn.loginBtn.on {
cursor: pointer;
background-color: var(--primary100);
}

#forms .simple {
display: flex;
justify-content: space-between;
background: #e6f2ff;
padding: 16px 23px;
height: 74px;
border-radius: 12px;
margin-bottom: 24px;
}
#forms .simple p {
font-size: 16px;
line-height: 26px;
font-weight: 500;
display: flex;
align-items: center;
color: var(--gray800);
}
#forms .simple .icon_box {
display: flex;
justify-content: space-between;
width: 100px;
}
#forms .simple a {
display: block;
}

#forms .link {
text-align: center;
font-size: 14px;
line-height: 24px;
font-weight: 500;
color: var(--gray800);
}
#forms .link a {
color: var(--primary100);
font-size: 14px;
font-weight: 500;
text-decoration: underline;
}

@media screen and (max-width: 1199px) {
.big_logo img {
width: 100%;
max-width: 390px;
}
}

@media screen and (max-width: 743px) {
main > .content {
padding: 0 16px;
max-width: 400px;
}
}
47 changes: 47 additions & 0 deletions css/_reset.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
@font-face {
font-family: "Pretendard";
font-weight: 400;
font-display: swap;
src: local("Pretendard Regular"),
url(./font/Pretendard-Regular.woff2) format("woff2"),
url(./font/Pretendard-Regular.woff) format("woff");
}
/* reset */
* {
padding: 0;
margin: 0;
line-height: 150%;
box-sizing: border-box;
font-family: "Pretendard";
}
a {
text-decoration: none;
}
li {
list-style: none;
}
html {
font-size: 10px;
}
p {
word-break: keep-all;
}

/* color */
:root {
--primary100: #3692ff;
--primary200: #1967d6;
--primary300: #1251aa;
--error: #f74747;

/*secondary color*/
--gray900: #111827;
--gray800: #1f2937;
--gray700: #374151;
--gray600: #4b5563;
--gray500: #6b7280;
--gray400: #9ca3af;
--gray200: #e5e7eb;
--gray100: #f3f4f6;
--gray50: #f9fafb;
}
Loading
Loading