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

Feat/온보딩 2주차 #1 #6

Open
wants to merge 54 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
3da6c36
[Chore] gitignore #1
Clearsu Oct 16, 2023
0ee4121
[Chore] add packages #1
Clearsu Oct 16, 2023
37c6a8b
[Feat] login page prototype #1
Clearsu Oct 16, 2023
0dcbf7b
[Chore] init project #1
Clearsu Oct 16, 2023
fad1dad
[Chore] move files #1
Clearsu Oct 16, 2023
dc43066
[Chore] code formatter #1
Clearsu Oct 17, 2023
e3fe5c9
[Chore] add SCSS #1
Clearsu Oct 17, 2023
de9d01a
[Style] eslint applied #1
Clearsu Oct 17, 2023
df1ecd1
[Feat] login page prototype #1
Clearsu Oct 17, 2023
f2ee91d
[Chore] add react-router-dom #1
Clearsu Oct 17, 2023
a7d01dd
[Feat] background color #1
Clearsu Oct 17, 2023
b1f71f5
[Feat] routing bw home and login page #1
Clearsu Oct 17, 2023
9c69980
[Style] login button #1
Clearsu Oct 17, 2023
f38e1af
[Chore] add recoil #1
Clearsu Oct 17, 2023
5710c2d
[Chore] install Prop-Types #1
Clearsu Oct 18, 2023
9e02ff9
[Feat] Layout #1
Clearsu Oct 18, 2023
e808bbe
[Feat] add MyPage, PageNotFound #1
Clearsu Oct 18, 2023
00a7e44
[Feat] MyPage #1
Clearsu Oct 18, 2023
89e2671
[Feat] PageNotFound #1
Clearsu Oct 18, 2023
701fca5
[Test] dummy userInfo #1
Clearsu Oct 18, 2023
5a08d6b
[Feat] add recoil #1
Clearsu Oct 18, 2023
a02117f
[Feat] Login #1
Clearsu Oct 18, 2023
1a80822
[Feat] Home #1
Clearsu Oct 18, 2023
d095929
[Chore] install recoil-persist #1
Clearsu Oct 18, 2023
25ea31d
[Feat] add pages and protected routing #1
Clearsu Oct 18, 2023
6a8e782
[Refactor] move BrouserRouter to App.js #1
Clearsu Oct 18, 2023
281edd0
[Style] change color #1
Clearsu Oct 18, 2023
546f47f
[Feat] persistAtom #1
Clearsu Oct 18, 2023
cc42742
[Feat] Layout #1
Clearsu Oct 18, 2023
be47247
[Feat] persistAtom #1
Clearsu Oct 18, 2023
096cb8d
[Refactor] use Link component #1
Clearsu Oct 18, 2023
cf1a054
[Feat] show sidebar page links by auth #1
Clearsu Oct 18, 2023
9005acb
[Feat] protected routing #1
Clearsu Oct 18, 2023
2fdb8be
[Feat] add pages #1
Clearsu Oct 18, 2023
1f80882
[Refactor] Home #1
Clearsu Oct 18, 2023
7d82162
[Style] apply css #1
Clearsu Oct 18, 2023
4ae4759
[Chore] install react-icons #1
Clearsu Oct 18, 2023
1d19ef3
[Chore] change meta data #1
Clearsu Oct 18, 2023
6dcb4d9
[Style] icon and css #1
Clearsu Oct 18, 2023
154a4d9
[Style] align error message to center #1
Clearsu Oct 18, 2023
67f58da
[Style] change bg color #1
Clearsu Oct 18, 2023
4116bb6
[Feat] add more contents #1
Clearsu Oct 19, 2023
385a961
[Test] mock set up #1
Clearsu Oct 19, 2023
e14aa4c
[Test] mock set up #1
Clearsu Oct 19, 2023
b2fcecf
[Feat] add username to userState #1
Clearsu Oct 19, 2023
6e2295d
[Feat] add username to userState #1
Clearsu Oct 19, 2023
ea677f4
[Feat] login using mock #1
Clearsu Oct 19, 2023
393fd50
[Feat] show username and auth on Home page #1
Clearsu Oct 19, 2023
cb90cb2
[Feat] id, password validation #1
Clearsu Oct 19, 2023
8bb17d0
[Style] add jincpark story #1
Clearsu Oct 19, 2023
29166c5
[Style] login page css #1
Clearsu Oct 19, 2023
8cecb63
[Style] nav bar, side bar color change #1
Clearsu Oct 19, 2023
5ff29a7
Update README.md
Clearsu Oct 20, 2023
350667c
Update README.md
Clearsu Oct 20, 2023
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
29 changes: 29 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
module.exports = {
env: {
browser: true,
es2021: true,
},
extends: ['eslint:recommended', 'plugin:react/recommended'],
overrides: [
{
env: {
node: true,
},
files: ['.eslintrc.{js,cjs}'],
parserOptions: {
sourceType: 'script',
},
},
],
parserOptions: {
ecmaVersion: 'latest',
sourceType: 'module',
},
plugins: ['react'],
rules: {
indent: ['error', 2],
'linebreak-style': ['error', 'unix'],
quotes: ['error', 'single'],
semi: ['error', 'always'],
},
};
23 changes: 23 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.js

# testing
/coverage

# production
/build

# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local

npm-debug.log*
yarn-debug.log*
yarn-error.log*
21 changes: 0 additions & 21 deletions LICENCE.md

This file was deleted.

52 changes: 26 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,34 +1,34 @@
# 42gg 프론트엔드 온보딩 2단계
# 42gg 프론트엔드 온보딩 2주차 결과물

## 공통 조건
## 실행 방법
`npm install`
`npm start`

- 온보딩 프로젝트는 개인 계정으로 fork하여 진행하고 PR로 제출합니다.
- git / github / code 컨벤션은 42gg notion에 있는 자료를 적극 반영합니다.
- 기본 기능 외 추가 기능, 디자인 구현은 자유입니다.
- 최종 제출품에는 README 작성이 되있어야 합니다.([예시](https://github.com/42organization/42gg.client/blob/main/README.md))
## 유저 정보

## EX01. login / logout 구현하기
id : jincpark
pw : 1q2w3e4r
auth : normal

- (필수) React.js, Recoil, SCSS
- (필수) eslint, prettier 설정
- (필수) 함수 컴포넌트로 제작
- (선택) ~CRA~, Webpack, Vite, ESbuild, SWC, Rollup
- (선택) msw, react-query / SWR
- (선택) Figma, MUI, Ant Design, shadcn UI, chakra UI / Tailwind CSS
- (선택) 계정 유효성 검사
id: banana
pw : bananaisyellow
auth : manager

## EX02. 유저 권한별 routing page
id : apple
pw : appleisred
auth : admin

- (중요) EX01 결과물에 이어서 작업합니다.
- (필수) normal, manager, admin 3개의 권한을 가진 유저별 정보 제공
- (필수) 권한별 routing page 구현
- (필수) 상단 navbar, sidebar 제작
- (선택) React-Router-Dom v6, Context API
- (선택) 로그인 유지
- (선택) custom hook
## 구현 기능
### 로그인 페이지
아이디 혹은 패스워드가 비어있을 경우, 틀린 경우 경고 메시지를 출력합니다.
<img width="854" alt="image" src="https://github.com/Clearsu/42gg-onboarding-fe-02/assets/67998022/06357aaa-7b5f-48d7-9d8b-8d78187c8828">
<img width="316" alt="image" src="https://github.com/Clearsu/42gg-onboarding-fe-02/assets/67998022/2c339af4-4f95-4e9d-8139-71e663a65d56">
<img width="352" alt="image" src="https://github.com/Clearsu/42gg-onboarding-fe-02/assets/67998022/b46dee6f-7cf1-44d9-8f41-a27921a7abb5">
<img width="357" alt="image" src="https://github.com/Clearsu/42gg-onboarding-fe-02/assets/67998022/fad6462a-28aa-40eb-828c-950b381dd55d">

## 참고
### 홈페이지
유저 권한별로 사이드바에 링크 바로가기 아이콘을 다르게 표시합니다.
<img width="789" alt="image" src="https://github.com/Clearsu/42gg-onboarding-fe-02/assets/67998022/36d8e0d4-486b-434d-9df7-c219f7215c25">
<img width="186" alt="image" src="https://github.com/Clearsu/42gg-onboarding-fe-02/assets/67998022/0abafce6-5341-45cd-acfb-688049e14ebc">
<img width="185" alt="image" src="https://github.com/Clearsu/42gg-onboarding-fe-02/assets/67998022/024d352c-f631-45e8-b217-8eb87ed6b64a">

- 유저 정보는 json-server or js 파일 내 객체를 이용하여 관리합니다.
- 로그인/로그아웃 구현하기 위해 필요한 기능과 화면 구성들을 생각(그려보고)해보고, 구현해보세요.
- 궁금한 사항은 issue에 등록해주세요.
Loading