Skip to content

developjik/React_Boilerplate_2021

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

9 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Developjik's React BoilerPlate with Airbnb Code Style

  1. ν”„λ‘œμ νŠΈ μ†Œκ°œ
  2. ν”„λ‘œμ νŠΈ μ£Όμš” 기술
  3. ν”„λ‘œμ νŠΈμ— ν™œμš© 된 Backend Server
  4. ν”„λ‘œμ νŠΈ κΈ°λŠ₯ 및 κ΅¬ν˜„
  5. ν”„λ‘œμ νŠΈ ꡬ쑰
  6. ν”„λ‘œμ νŠΈ μŠ€ν¬λ¦°μƒ·
  7. ν”„λ‘œμ νŠΈ μ„€μΉ˜ 및 μ‹€ν–‰

1. ν”„λ‘œμ νŠΈ μ†Œκ°œ πŸš€

  • κ°œμš” : boilerplate
  • 주제 : React BoilerPlate
  • κΈ°κ°„ : 2021.08 ~ 2021.09

2. ν”„λ‘œμ νŠΈ μ£Όμš” 기술

  • react
  • react-router- dom
  • redux + react-redux + redux-persist
  • react-cookie
  • axios
  • emailjs-com
  • react-responsive
  • material ui

3. ν”„λ‘œμ νŠΈμ— ν™œμš©λœ backend server

4. ν”„λ‘œμ νŠΈ κΈ°λŠ₯ 및 κ΅¬ν˜„

  • /signIn (둜그인 νŽ˜μ΄μ§€)

    1. μ‚¬μš©μžλŠ” ID, Password μž…λ ₯ ν›„ Login λ²„νŠΌ Click
    2. axiosλ₯Ό 톡해 μš”μ²­ν•˜μ—¬ Backend Server의 Postgresql DB와 μΌμΉ˜ν•˜λŠ”μ§€ 검사 ν›„ accessToken(1μ‹œκ°„ μ œν•œ), User Data λ°˜ν™˜
    3. λ°˜ν™˜λœ accessToken은 cookie에 1μ‹œκ°„ λ™μ•ˆ μ €μž₯, User DataλŠ” Redux Store에 μ €μž₯
    • β€» λ‘œκ·ΈμΈν•œ 경우 μ ‘κ·Ό λΆˆκ°€

  • /signUp (νšŒμ›κ°€μž… νŽ˜μ΄μ§€)

    1. μ‚¬μš©μžλŠ” 정보 μž…λ ₯ ν›„ Register λ²„νŠΌ Click
    2. axiosλ₯Ό 톡해 μš”μ²­ν•˜μ—¬ Backend Server의 Postgresql DB에 μ €μž₯
    • β€» λ‘œκ·ΈμΈν•œ 경우 μ ‘κ·Ό λΆˆκ°€

  • /contact (κ°œλ°œμžμ—κ²Œ 이메일 보낼 수 μžˆλŠ” νŽ˜μ΄μ§€)

    1. μ‚¬μš©μžλŠ” 정보 μž…λ ₯ ν›„ 제좜 λ²„νŠΌ Click
    2. emailjs-com을 ν™œμš©ν•˜μ—¬ κ°œλ°œμžμ—κ²Œ 메일 κ°€λŠ₯
    • β€» 둜그인 ν•œ 경우만 μ ‘κ·Ό κ°€λŠ₯

  • /info (νšŒμ› 정보 νŽ˜μ΄μ§€)

    • νšŒμ› 정보 λ³΄μ—¬μ£ΌλŠ” νŽ˜μ΄μ§€
    • β€» 둜그인 ν•œ 경우만 μ ‘κ·Ό κ°€λŠ₯

  • 잘λͺ»λœ 경둜

    • 404 Page Not Found κ΅¬ν˜„

  • LogOut Button Click ν•œ 경우

    • cookie 정보 μ‚­μ œ + redux μ•ˆμ˜ user 정보 μ‚­μ œ

  • max-width:600px μ΄ν•˜

    • Navigation Menu => Toggle Menu둜 λ³€κ²½

  • Dark Mode
    • Toggle ν΄λ¦­μ‹œ Dark Mode 적용 κ°€λŠ₯

  • redux Persist
    • refresh 해도 redux-persistλ₯Ό ν™œμš©ν•΄ Session Stoarage에 μ €μž₯ν•˜μ—¬ μœ μ§€

5. ν”„λ‘œμ νŠΈ ꡬ쑰

β”œβ”€β”€ public
β”‚   β”œβ”€β”€ favicon.ico
β”‚   └── index.html
β”œβ”€β”€ src
    β”œβ”€β”€ App.jsx
    β”œβ”€β”€ Components
    β”‚   β”œβ”€β”€ Contact
    β”‚   β”‚   └── ContactForm.jsx
    β”‚   β”œβ”€β”€ Footer
    β”‚   β”‚   └── Footer.jsx
    β”‚   β”œβ”€β”€ Header
    β”‚   β”‚   β”œβ”€β”€ Menu.css
    β”‚   β”‚   β”œβ”€β”€ Menu.jsx
    β”‚   β”‚   β”œβ”€β”€ Navigator.css
    β”‚   β”‚   └── Navigator.jsx
    β”‚   └── Login
    β”‚       β”œβ”€β”€ SignInForm.jsx
    β”‚       └── SignUpForm.jsx
    β”œβ”€β”€ bgImg
    β”‚   └── NotFoundBg.png
    β”œβ”€β”€ cookie
    β”‚   └── cookie.jsx
    β”œβ”€β”€ index.jsx
    β”œβ”€β”€ modules
    β”‚   β”œβ”€β”€ index.js
    β”‚   └── user.js
    └── routes
        β”œβ”€β”€ AuthRoute.jsx
        β”œβ”€β”€ Contact
        β”‚   └── Contact.jsx
        β”œβ”€β”€ Home
        β”‚   └── Home.jsx
        β”œβ”€β”€ Login
        β”‚   β”œβ”€β”€ SignIn.jsx
        β”‚   └── SignUp.jsx
        β”œβ”€β”€ NoAuthRoute.jsx
        β”œβ”€β”€ NotFound
        β”‚   β”œβ”€β”€ NotFound.css
        β”‚   └── NotFound.jsx
        └── UserInfo
            └── Info.jsx

6. ν”„λ‘œμ νŠΈ μŠ€ν¬λ¦°μƒ·

[1] React BoilerPlate Main Page(No Login) ✨

main

[1-1] React BoilerPlate Menu(No Login) ✨

nologinmenu

[1-2] React BoilerPlate Menu(Login) ✨

loginmenu

[1-2] React BoilerPlate Mobile Toggle Menu ✨

mobile

[2] React BoilerPlate SignIn Page ✨

signin

[4] React BoilerPlate SignUp Page ✨

signup

[5] React BoilerPlate Contact Page ✨

contact

[6] React BoilerPlate Info Page ✨

info

[7] React BoilerPlate 404 Page ✨

404

[8] React BoilerPlate Dark Mode✨

darkmode

7. ν”„λ‘œμ νŠΈ μ„€μΉ˜ 및 μ‹€ν–‰

  1. Git Clone
git clone https://github.com/developjik/React-boilerplate.git
  1. ν”„λ‘œμ νŠΈ νŒ¨ν‚€μ§€ μ„€μΉ˜
yarn install
  1. ν”„λ‘œμ νŠΈ μ‹€ν–‰
yarn start

About

πŸ“„ react-boilerplate-2021 made by developjik

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published