HALP ME!!

BEB 05 Second Project Team 05

๐Ÿ’กProject Intro

Web2.0์—์„œ ๋ธ”๋ก์ฒด์ธ ์ธ์„ผํ‹ฐ๋ธŒ ๊ธฐ๋ฐ˜ ์ปค๋ฎค๋‹ˆํ‹ฐ ์‚ฌ์ดํŠธ๋ฅผ ๊ฐœ๋ฐœ.

  • ๋ชฉํ‘œ : ์ค‘์•™ํ™”๋œ Web2.0 ์ธ์„ผํ‹ฐ๋ธŒ ๊ธฐ๋ฐ˜ ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ตฌํ˜„.
  • ๊ธฐํš ๊ตฌ๋ถ„ : FE, BE, SmartContract.

Incentive Community ?

ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

์ธ์„ผํ‹ฐ๋ธŒ ๊ธฐ๋ฐ˜ ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ตฌ์„ฑ : FE, BE, SmartContract.

  • ๊ฐ ๋ถ€๋ถ„ ๋งˆ๋‹ค ๋‹ฌ์„ฑ Bare minimum ์กด์žฌ.

โ†’ ์›นํŽ˜์ด์ง€ ์„ค๊ณ„ ๋ถ€๋ถ„์€ ๊ธฐ๋ณธ์ ์ธ ๊ฐ€์ด๋“œ๋ผ์ธ ์ œ๊ณต.

๊ธฐํš

**์ธ์„ผํ‹ฐ๋ธŒ ์ปค๋ฎค๋‹ˆํ‹ฐ(;IC)**๋Š” ํŠน์ •ํ•œ ์ฃผ์ œ๋ฅผ ์ข‹์•„ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ๋ชจ์—ฌ์„œ ๊ฒŒ์‹œ๊ธ€์„ ์ž‘์„ฑํ•˜๋Š” ๊ณณ. ํŠน์ • ์ฃผ์ œ๋ฅผ ์ข‹์•„ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ๋ชจ์—ฌ์„œ ์ •๋ณด์™€ ์ผ์ƒ์„ ๋‚˜๋ˆ„๋ฉฐ ํ™œ๋ฐœํ•œ ์›นํŽ˜์ด์ง€๊ฐ€ ๋˜๋Š” ๊ฒƒ์ด ๋ชฉํ‘œ.

  • ์‚ฌ์šฉ์ž๊ฐ€ ์ปค๋ฎค๋‹ˆํ‹ฐ์— ๊ฒŒ์‹œ๊ธ€ ์ž‘์„ฑํ•  ๋•Œ๋งˆ๋‹ค IC ํ† ํฐ์„ ๋ณด์ƒ์œผ๋กœ ๋ฐ›๋Š”๋‹ค.
  • ํ•ด๋‹น IC ํ† ํฐ์€ ํƒ€์ธ์—๊ฒŒ ์ „์†ก ๊ฐ€๋Šฅํ•˜๋‹ค.
  • IC ํ† ํฐ์„ ์‚ฌ์šฉํ•˜์—ฌ NFT ๋ฏผํŒ…์„ ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ํ•ด๋‹น NFT๋Š” ์œ ์ €๊ฐ€ ์›ํ•˜๋Š” ์‚ฌ์ง„์œผ๋กœ ๋งŒ๋“ ๋‹ค.
  • ๋งˆ์ดํŽ˜์ด์ง€์—์„œ ๋‚ด๊ฐ€ ๋ฐ›์€ IC ํ† ํฐ์˜ ๊ฐœ์ˆ˜์™€ ๋‚ด๊ฐ€ ๊ตฌ์ž…ํ•œ NFT๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ๋งˆ์ดํŽ˜์ด์ง€์—์„œ ๋‚ด๊ฐ€ ์“ด ๊ธ€์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.
  • ๋งˆ์ดํŽ˜์ด์ง€์—์„œ ํƒ€์ธ์—๊ฒŒ ๋‚ด๊ฐ€ ๊ฐ€์ง„ ํ† ํฐ์„ ์ค„ ์ˆ˜ ์žˆ๋‹ค.

โ†’ ํ† ํฐ ๋ณด์ƒ ์œ ๋ฐœ ํ–‰์œ„ : ๊ฒŒ์‹œ๊ธ€ ์ž‘์„ฑ. But, ๊ฒŒ์‹œ๊ธ€ ์ž‘์„ฑ ์ด์™ธ ๋‹ค๋ฅธ ๊ฒƒ์„ ํ•ด๋„ ใ„ฑใ…Š.

โ†’ ๊ธฐ๋ณธ์ ์ธ ๊ธฐํš ์ด์™ธ์˜ ์ถ”๊ฐ€ํ•  ๊ธฐํš์ด ์žˆ์œผ๋ฉด ์ถ”๊ฐ€ํ•ด๋„ ๋˜์ง€๋งŒ, ๊ธฐ๋ณธ์ ์ธ ๊ธฐํš์€ ํ”„๋กœ์ ํŠธ์— ๋ฐ˜๋“œ์‹œ ํฌํ•จ.

ํ”„๋กœ์ ํŠธ ์š”๊ตฌ์‚ฌํ•ญ

  • ์ปค๋ฎค๋‹ˆํ‹ฐ์— ๊ฒŒ์‹œ๊ธ€์„ ์ž‘์„ฑ(ํ˜น์€ ๋Œ“๊ธ€์„ ๋‹ค๋Š” ๋“ฑ, ์ž์œ ๋กญ๊ฒŒ ์„ค์ •)ํ•  ์ˆ˜ ์žˆ๊ณ , ์ด์— ๋”ฐ๋ฅธ ๋ณด์ƒ์œผ๋กœ ERC-20 ํ† ํฐ์„ ์ง€๊ธ‰ํ•˜๋Š” ๊ธฐ๋Šฅ (ํ•ต์‹ฌ feature)
    • โ€˜ํŠน์ • ์ฃผ์ œโ€™๋ฅผ ์ข‹์•„ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์˜ ๋ชจ์ž„์„ ํ™œ์„ฑํ™”ํ•˜๊ธฐ ์œ„ํ•จ
    • โ€˜ํŠน์ • ์ฃผ์ œโ€™๋Š” ์ž์œ ๋กญ๊ฒŒ ์„ค์ •์ด ๊ฐ€๋Šฅํ•จ
  • ERC-20 ํ† ํฐ์„ ERC-721 ํ† ํฐ๊ณผ ๊ตํ™˜ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ
    • ERC-20์˜ ๊ฒฝ์šฐ, ์„œ๋ฒ„ โ†”ย ์‚ฌ์šฉ์ž, ์‚ฌ์šฉ์ž โ†”ย ์‚ฌ์šฉ์ž ๋‘˜ ๋‹ค ๊ฐ€๋Šฅํ•ด์•ผ ํ•จ
  • ํšŒ์›๊ฐ€์ž… ์‹œ ์ž๋™์œผ๋กœ ์ง€๊ฐ‘ ์ฃผ์†Œ๋ฅผ ๋ถ€์—ฌ๋ฐ›๋Š” ๊ธฐ๋Šฅ
  • Daemon์„ ๊ฐœ๋ฐœํ•˜์—ฌ ํŠธ๋žœ์žญ์…˜์„ ํŠธ๋ž˜ํ‚นํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ
  • NFT๋ฅผ ๋ฏผํŒ…ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ
  • ๋‚ด ์ •๋ณด๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์–ด์•ผ ํ•จ

๐Ÿšจย ํŒ€ ์†Œ๊ฐœ

BEB-05-02-05์กฐ

๐Ÿ’กProject : HALP ME!!

  • ํŒ€๋ช… : HALP ME!
  • ํŒ€์žฅ : ํ™์œ ์ง„
  • ํŒ€์› : ๋ฐ•์ˆ˜์—ฐ, ์ด์†ก์˜, ์•ˆ๋ณ‘ํ˜„
  • Site Link :
  • Date : 2022/08/17 - 2022/08/30

๐Ÿ’กย HALP Project Intro

์—ญํ• 

์ด๋ฆ„ ํฌ์ง€์…˜
๋ฐ•์ˆ˜์—ฐ FE
์ด์†ก์˜ FE
์•ˆ๋ณ‘ํ˜„ BE, SC
ํ™์œ ์ง„ BE, SC

๐Ÿ’ปย FE

์›น์˜ View๋ฅผ ์œ ์ € ํ”Œ๋กœ์šฐ์— ๋”ฐ๋ผ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๊ณ , ๊ฐœ๋ฐœํ•˜๊ธฐ.

๐Ÿ’ปย SC

์Šค๋งˆํŠธ ์ปจํŠธ๋ž™ํŠธ ๊ฐœ๋ฐœ์„ ์œ„ํ•ด ์†”๋ฆฌ๋””ํ‹ฐ ์–ธ์–ด๋ฅผ ๋‹ค๋ฃจ๊ณ , ๋ถ„์„ํ•˜๊ณ , ์ ์šฉ ๊ฐ€๋Šฅ. ๊ธฐ๋ณธ์œผ๋กœ ์ œ๊ณต๋˜๋Š” ERC-20, ERC-721 ์Šค๋งˆํŠธ ์ปจํŠธ๋ž™ํŠธ ์ฝ”๋“œ ์™ธ์˜ ๋ง๋ถ™์ผ ๊ธฐ๋Šฅ์€ ์‘์šฉํ•˜์—ฌ ์ฝ”๋“œ ์ž‘์„ฑํ•ด์•ผํ•จ.

โ†’ ์†”๋ฆฌ๋””ํ‹ฐ๋กœ ์ž‘์„ฑ๋œ ERC-20, ERC-721 ์ฝ”๋“œ๋ฅผ ํŒŒ์•…ํ•˜๊ณ , ์‘์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ’ปย BE

๋ฐฑ์—”๋“œ์—์„œ ์ง€๊ฐ‘ ์ƒ์„ฑ, ์„œ๋ช… ๋ฐ ์ „์†ก ๋‹ด๋‹น. ์„œ๋ฒ„ ๊ตฌ์ถ•, ์ง€๊ฐ‘ ์ƒ์„ฑ ๋ฐ ๊ด€๋ฆฌ, ์Šค๋งˆํŠธ ์ปจํŠธ๋ž™ํŠธ์™€ ์„œ๋ฒ„๋ฅผ ์—ฐ๋™ํ•˜์—ฌ ์‚ฌ์šฉ. ๋™์ž‘ ํ™•์ธ์„ ์œ„ํ•ด ์‹ค์‹œ๊ฐ„ ํŠธ๋ž˜ํ‚น.

์ €์žฅ์†Œ

ํŒ€ ๋ ˆํฌ

https://github.com/codestates/BEB-05-HALPME

๊ฐœ์ธ ๋ ˆํฌ

https://github.com/yu-uj/BEB-05-HALPME


๊ธฐ์ˆ  ์Šคํƒ

Tech

Language JavaScript *
Server Framework Node.js *
Contract Language Solidity SC
Container Ganache SC
Web Library React FE
Database(DB) MySQL BE
Web Library Redux FE
Web Library Babel BE
Web Library Bootstrap FE
Web Framework Express.js BE
JavaScript Library Web3.js SC
Framework Truffle SC
Framework OpenZepplin SC

Position Tech

Position ๊ธฐ์ˆ  ์Šคํƒ
Front-End React, Redux, Bootstrap
Back-End MySQL, Babel, Express
Smart-Contract Solidity, Web3.js, Truffle, OpenZepplin

๊ฐœ๋ฐœ ํ™˜๊ฒฝ

OS MacOS, Ubuntu
IDE VisualStudioCode
๊ฐœ๋ฐœ ๋„๊ตฌ Git
๊ฐœ๋ฐœ ์–ธ์–ด JavaScript, Solidity
ํ…Œ์ŠคํŠธ ๋„คํŠธ์›Œํฌ Ganache(ETH)
์ง€๊ฐ‘ MetaMask
๋ฌธ์„œ ๊ด€๋ฆฌ Notion

๊ตฌํ˜„ ๊ธฐ๋Šฅ

๐Ÿ”—ย ์ฃผ์š” ๊ธฐ๋Šฅ

โ–ถ๏ธ ํšŒ์›๊ด€๋ฆฌ

  • ์‚ฌ์šฉ์ž๋Š” ์•„์ด๋””์™€ ํŒจ์Šค์›Œ๋“œ๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ํšŒ์›๊ฐ€์ž…ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ์•„์ด๋””์™€ ํŒจ์Šค์›Œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ๊ทธ์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

โ–ถ๏ธ ๊ฒŒ์‹œ๊ธ€

  • ์‚ฌ์šฉ์ž๋Š” ๊ฒŒ์‹œ๊ธ€์„ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ๊ฒŒ์‹œ๊ธ€ ๋ชฉ๋ก์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ๊ฒŒ์‹œ๊ธ€ ์ƒ์„ธ ๋‚ด์šฉ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ๊ฒŒ์‹œ๊ธ€์— ๋Œ€ํ•œ ๋Œ“๊ธ€์„ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์˜ ๊ฒŒ์‹œ๊ธ€์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€ ์ค‘ ํ•˜๋‚˜์˜ ๋Œ“๊ธ€์„ ์ฑ„ํƒํ•  ์ˆ˜ ์žˆ๋‹ค.

โ–ถ๏ธ ๋งˆ์ดํŽ˜์ด์ง€

  • ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์˜ ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์ด ์†Œ์œ ํ•œ NFT ๋ชฉ๋ก์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์ด ์†Œ์œ ํ•œ ํ† ํฐ์˜ ๊ฐœ์ˆ˜๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์ด ์ž‘์„ฑํ•œ ๊ฒŒ์‹œ๊ธ€์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์˜ ํ† ํฐ์„ ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ „์†กํ•  ์ˆ˜ ์žˆ๋‹ค.

โ–ถ๏ธ ํ† ํฐ

  • ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์ด ์ž‘์„ฑํ•œ ๋Œ“๊ธ€์ด ์ฑ„ํƒ๋จ์œผ๋กœ, ํ† ํฐ์„ ํš๋“ํ•  ์ˆ˜ ์žˆ๋‹ค.

โ–ถ๏ธ NFT

  • ์‚ฌ์šฉ์ž๋Š” NFT๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ”—ย ์ถ”๊ฐ€ ๊ธฐ๋Šฅ

โ–ถ๏ธ ๊ฒŒ์‹œ๊ธ€

  • ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์ด ์ž‘์„ฑํ•œ ๊ฒŒ์‹œ๊ธ€์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์ด ์ž‘์„ฑํ•œ ๊ฒŒ์‹œ๊ธ€์„ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์ด ์ž‘์„ฑํ•œ ๋Œ“๊ธ€์„ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์ด ์ž‘์„ฑํ•œ ๋Œ“๊ธ€์„ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ๊ฒŒ์‹œ๊ธ€์— ์ข‹์•„์š”๋ฅผ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ๋Œ“๊ธ€์— ์ข‹์•„์š”๋ฅผ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ”—ย Night Mare

  • ์‚ฌ์šฉ์ž๋Š” ์†Œ์œ ํ•œ nft๋ฅผ ์ „์†กํ•  ์ˆ˜ ์žˆ๋‹ค
  • ์‚ฌ์šฉ์ž๋Š” nft๋ฅผ ๊ณ ์ •๋œ ๊ฐ€๊ฒฉ์— ๊ตฌ๋งคํ•˜๊ฑฐ๋‚˜ ๊ฒฝ๋งคํ•  ์ˆ˜ ์žˆ๋‹ค
  • ์‚ฌ์šฉ์ž๋Š” ์นดํ…Œ๊ณ ๋ฆฌ์˜ Explore์—์„œ nft ์กฐํšŒ ๋ฐฉ์‹์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋‹ค
แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-08-30 แ„‹แ…ฉแ„’แ…ฎ 5 06 46

์‹œ๋‚˜๋ฆฌ์˜ค

Home

  • ๊ธฐ๋ณธ Index ํ™”๋ฉด.
  • ์™ผ์ชฝ ์ƒ๋‹จ์˜ ์‚ฌ์ดํŠธ ๋กœ๊ณ  ํด๋ฆญ์‹œ ํ™ˆ(Home)์œผ๋กœ ์ด๋™ํ•œ๋‹ค.

Navigation

  • Home ํ™”๋ฉด ์ƒ๋‹จ์— ์œ„์น˜.
  • Login / Sign ํด๋ฆญ์‹œ login๊ณผ sign ์„ ํƒ ํ™”๋ฉด์œผ๋กœ ์ด๋™ํ•œ๋‹ค.
  • Market ํด๋ฆญ์‹œ market ํ™”๋ฉด์œผ๋กœ ์ด๋™ํ•œ๋‹ค.
  • Create ํด๋ฆญ์‹œ NFTcreate ํ™”๋ฉด์œผ๋กœ ์ด๋™ํ•œ๋‹ค.
  • My Page ํด๋ฆญ์‹œ mypage ํ™”๋ฉด์œผ๋กœ ์ด๋™ํ•œ๋‹ค.

Login / Sign up

  • Home ํ™”๋ฉด ์ƒ๋‹จ์˜ ์˜ค๋ฅธ์ชฝ์— ์œ„์น˜.
  • Sign ํด๋ฆญ์‹œ ํšŒ์›๊ฐ€์ž… ํ™”๋ฉด์œผ๋กœ ์ด๋™ํ•œ๋‹ค.
  • ํšŒ์›๊ฐ€์ž…์— ํ•„์š”ํ•œ Id, Password๋ฅผ ํฌํ•จํ•œ ์ •๋ณด ๊ธฐ์ž… ํ›„, ํšŒ์›๊ฐ€์ž… ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ๊ฐ€์ž…ํ•œ๋‹ค.
  • ํšŒ์›๊ฐ€์ž…์— ์‹คํŒจํ•˜๋ฉด error message ์†ก์ถœํ•œ๋‹ค.
  • Login ํด๋ฆญ์‹œ ๋กœ๊ทธ์ธ ํ™”๋ฉด์œผ๋กœ ์ด๋™ํ•œ๋‹ค.
  • Id, Password ์ž…๋ ฅ ํ›„, ๋กœ๊ทธ์ธ ๋ฒ„ํŠผ ํด๋ฆญ์œผ๋กœ ๋กœ๊ทธ์ธํ•œ๋‹ค.
  • ๋กœ๊ทธ์ธ ์‹คํŒจ์‹œ error message ์†ก์ถœํ•œ๋‹ค.
  • ๋กœ๊ทธ์ธ์— ์„ฑ๊ณตํ•˜๋ฉด ํ™”๋ฉด ์˜ค๋ฅธ์ชฝ ์ƒ๋‹จ์˜ Login ๋ฒ„ํŠผ์ด Logout ์œผ๋กœ ๋ฐ”๋€๋‹ค.
  • Logout ํด๋ฆญ์‹œ ์‚ฌ์ดํŠธ์—์„œ ๋กœ๊ทธ์•„์›ƒ ๋œ๋‹ค.

Market

  • ๊ฒŒ์‹œ๊ธ€ ๋ฆฌ์ŠคํŠธ์˜ ๊ฒŒ์‹œ๊ธ€ ํด๋ฆญ์‹œ, ๊ฒŒ์‹œ๊ธ€์˜ ์ƒ์„ธ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•œ๋‹ค.
  • ๊ฒŒ์‹œ๊ธ€ ๋ฆฌ์ŠคํŠธ์˜ ์ƒ๋‹จ์— ์œ„์น˜ํ•œ ๊ฒŒ์‹œ๊ธ€ ์ž‘์„ฑ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ๊ฒŒ์‹œ๊ธ€ ์ž‘์„ฑ ํ™”๋ฉด์œผ๋กœ ์ด๋™ํ•œ๋‹ค.
  • ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„์— NFT ์ •๋ณด๋ฅผ ์š”์ฒญํ•˜๊ณ  ์„œ๋ฒ„๋Š” DB์— ์ €์žฅ๋œ NFT ์ •๋ณด๋ฅผ ์‘๋‹ตํ•œ๋‹ค.
  • ํด๋ผ์ด์–ธํŠธ๋Š” ์‘๋‹ต๋ฐ›์€ ์ •๋ณด๋ฅผ marketplace ํŽ˜์ด์ง€์— ๋ณด์—ฌ์ค€๋‹ค.
  • NFT ์ค‘ ํ•˜๋‚˜๋ฅผ ๋ˆŒ๋ €์„ ๋•Œ ์ง€๊ฐ‘์—ฐ๊ฒฐ์ด ๋˜์–ด์žˆ์œผ๋ฉด ๊ตฌ๋งค ํŽ˜์ด์ง€๋กœ, ์•„๋‹ˆ๋ฉด ์ง€๊ฐ‘ ์—ฐ๊ฒฐ ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•œ๋‹ค.

Create (NFT Create)

  • ์ง€๊ฐ‘ ์—ฐ๊ฒฐ [URClass eth์—ฐ๊ฒฐ]
    • ์—ฐ๊ฒฐ์ด ๋˜์ง€ ์•Š์€ ์ƒํ™ฉ์—์˜ค๋ฅธ์ชฝ ์œ„ ์ง€๊ฐ‘์„ ๋ˆ„๋ฅด๊ฑฐ๋‚˜, ์˜ค๋ฅธ์ชฝ ์œ„ ์‚ฌ์šฉ์ž๋ฅผ ๋ˆ„๋ฅด๊ฑฐ๋‚˜, Explore์—์„œ NFT๋ฅผ ๋ˆŒ๋ €์„ ๋•Œ ์ด๋™ํ•œ๋‹ค.
    • ์ง€๊ฐ‘์„ ํด๋ฆญํ•˜๋ฉด MetaMask ์ง€๊ฐ‘์„ ํ‘œ์‹œํ•œ๋‹ค.
    • ์ง€๊ฐ‘์— ๋กœ๊ทธ์ธํ•˜๋ฉด ์‚ฌ์ดํŠธ์— ๋กœ๊ทธ์ธ๋œ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์ด ๋ณด์œ ํ•œ ICํ† ํฐ์„ ์ธ์ฆํ•˜๊ณ , NFT ์ƒ์„ฑ์„ ์œ„ํ•ด Create ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ create ํ™”๋ฉด์œผ๋กœ ์ด๋™ํ•œ๋‹ค.
  • ํด๋ผ์ด์–ธํŠธ๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ NFT CreationFrom์„ ์ œ๊ณตํ•œ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ์ด๋ฏธ์ง€์™€ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•˜๊ณ  Create NFT ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ NFT ์ •๋ณด๋ฅผ IPFS์— ์—…๋กœ๋“œ ์š”์ฒญํ•œ๋‹ค.
  • ์ด๋ฏธ์ง€๋ฅผ IPFS์— ์ €์žฅ ํ›„ ์ด๋ฏธ์ง€ IPFS URI๋ฅผ ์ž…๋ ฅํ•œ ์ •๋ณด์— ์ถ”๊ฐ€ํ•˜์—ฌ metadata.json ํŒŒ์ผ์„ IPFS์— ์—…๋กœ๋“œํ•œ๋‹ค.
  • ์—…๋กœ๋“œ ์™„๋ฃŒ ํ›„, ์—…๋กœ๋“œ๋œ ์ด๋ฏธ์ง€๋Š” My Page์˜ Minted List์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

My Page

  • ๋กœ๊ทธ์ธํ•œ ์‚ฌ์šฉ์ž์˜ ์ƒ์„ธ ์ •๋ณด ํ™•์ธ.
  • ์‚ฌ์šฉ์ž๊ฐ€ ๋ณด์œ ํ•œ ICํ† ํฐ์„ ํ™•์ธ.
  • ์‚ฌ์šฉ์ž๊ฐ€ ๋ณด์œ ํ•œ NFT ์กฐํšŒ.
  • ๊ตฌ๋งคํ•œ NFT ๋ชฉ๋ก ์กฐํšŒ / ๋ฏผํŒ…ํ•œ NFT ๋ชฉ๋ก ์กฐํšŒ.
  • ์‚ฌ์šฉ์ž๊ฐ€ ์ž‘์„ฑํ•œ ๊ฒŒ์‹œ๊ธ€ ํ™•์ธ.
  • ์‚ฌ์šฉ์ž๊ฐ€ ์ž‘์„ฑํ•œ ๋Œ“๊ธ€ ํ™•์ธ.

ํ•„์ˆ˜ ๊ตฌํ˜„

  • ๋กœ๊ทธ์ธ / ๋กœ๊ทธ์•„์›ƒ
  • ํšŒ์›๊ฐ€์ž…
  • ๊ฒŒ์‹œ๊ธ€ ์ฝ๊ธฐ ๋ฐ ์ž‘์„ฑ
  • ๊ฒŒ์‹œ๊ธ€์— ๋Œ€ํ•œ ๋Œ“๊ธ€ ์ž‘์„ฑ
  • ๊ฒŒ์‹œ๊ธ€์˜ ์ž‘์„ฑ์ž๊ฐ€ ๋Œ“๊ธ€ ์ฑ„ํƒ
  • ์ฑ„ํƒ๋œ ๋Œ“๊ธ€์˜ ์ž‘์„ฑ์ž๋Š” ๋ณด์ƒ์œผ๋กœ ICํ† ํฐ์„ ๋ฐ›์Œ
  • ICํ† ํฐ์„ ๋ฏผํŒ…ํ•œ NFT ํ† ํฐ์œผ๋กœ ๊ตํ™˜
  • NFT Create๋ฅผ ํ•˜๋ฉด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ
  • Minted List์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ›์•„์™€์„œ ๋ณด์œ  NFT ํ‘œ์‹œ

์ถ”๊ฐ€ ๊ธฐ๋Šฅ ๊ตฌํ˜„

  • ๋‚ด NFT ์ปฌ๋ ‰์…˜ ํŽ˜์ด์ง€ ์กฐํšŒ ๊ธฐ๋Šฅ.
  • ์‚ฌ์šฉ์ž NFT ํŽ˜์ด์ง€ ์กฐํšŒ ๊ธฐ๋Šฅ.
  • ๋‹ต๋ณ€ ์ฑ„ํƒ์ด ์™„๋ฃŒ๋œ ๊ฒŒ์‹œ๊ธ€์€ ์™„๋ฃŒ ๋ฆฌ์ŠคํŠธ๋กœ ์ด๋™ํ•˜๊ธฐ.
  • ๋ณด์œ ํ•œ ICํ† ํฐ๊ณผ NFT ์ „์†ก ๊ธฐ๋Šฅ.
  • ๋ณด์œ ํ•œ NFT ํŒ๋งค ๊ธฐ๋Šฅ.

Flow Chart

HALP ME Flowchart drawio final


ER-Diagram

Project2


API

แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-08-30 แ„‹แ…ฉแ„’แ…ฎ 5 42 43 แ„‰แ…ณแ„แ…ณแ„…แ…ตแ†ซแ„‰แ…ฃแ†บ 2022-08-30 แ„‹แ…ฉแ„’แ…ฎ 5 43 14

Installation

1. .env ์ถ”๊ฐ€

.env ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜์—ฌ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ™˜๊ฒฝ ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค.

  • client
1
2
REACT_APP_SECRET_KEY=
REACT_APP_SERVER_URL=http://127.0.0.1:8080
  • server
1
2
3
4
5
6
7
PORT=8080
SERVER_BANNER=
DB_USER_NAME=root
DB_USER_PASSWORD=
DB_DATABASE_NAME=HALP_ME
DB_HOST=127.0.0.1
DB_DIALECT=mysql
  • contract
1
2
3
4
SERVER_ADDRESS=๊ฐ€๋‚˜์Šˆ ์ฒซ๋ฒˆ์งธ ๊ณ„์ •
SERVER_SECRET_KEY=๊ฐ€๋‚˜์Šˆ ์ฒซ๋ฒˆ์งธ ๊ณ„์ • ๋น„๋ฐ€ ํ‚ค
CONTRACT_ADDRESS=๋‚ด๊ฐ€ ๋ฐฐํฌํ•œ ์ปจํŠธ๋ž™ํŠธ ์ฃผ์†Œ
RPC_URL=http://127.0.0.1:7545/

2. ์‹คํ–‰

1
2
3
4
5
6
7
8
9
# client
cd client
npm install
npm start

# server
cd server
npm install
npm start

3. contract deploy

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# install truffle & ganache
npm install -g truffle
npm install -g ganache-cli

# ํ”„๋กฌํ”„ํŠธ ์‹คํ–‰
truffle develop

# ์ปดํŒŒ์ผ
compile

# ๋ฐฐํฌ
migrate

# ํ…Œ์ŠคํŠธ
test

์‹คํ–‰ ํ™”๋ฉด

Home

home

Post

post

Post Create

postCreate

Comments

comments

Comments Selected

commentSelected

Market

market

My Page

mypage



ํšŒ๊ณ 

์ฒซ ํ”„๋กœ์ ํŠธ๋Š” ๊ทธ๋‚˜๋งˆ ์†์— ์ต์–ด์žˆ๋˜ ํ”„๋ก ํŠธ์—”๋“œ๋ฅผ ๊ฒฝํ—˜ํ•ด๋ด์„œ ๋‘๋ฒˆ์งธ ํ”„๋กœ์ ํŠธ๋Š” ๋ฐฑ์—”๋“œ์— ๋„์ „ํ–ˆ๋‹ค.
๋ฐฑ์—”๋“œ ํฌ์ง€์…˜ ํŒ€์›๋“ค์ด ๋‹ค ๊ฒฝํ—˜์ž ํ˜น์€ ๋ฌด๊ฒฝํ—˜์ž์ด๊ฑฐ๋‚˜, ํ”„๋ก ํŠธ์—”๋“œ ํฌ์ง€์…˜์— ์ž๋ฆฌ๊ฐ€ ๋นˆ๋‹ค๋ฉด ๊ทธ์ชฝ์œผ๋กœ ๊ฐˆ ์ƒ๊ฐ์ด์—ˆ์œผ๋‚˜.
ํ”„๋ก ํŠธ์—”๋“œ์—๋Š” ํ˜„์—…์„ ๊ฒฝํ—˜ํ•ด๋ณธ ๋ถ„์ด ๊ณ„์…จ๊ณ , ๋ฐฑ์—”๋“œ ์ง€์›ํ•œ ๋ถ„์€ ์ „๊ณต์ž์…”์„œ ๋งŽ์ด ๋ฐฐ์›Œ๊ฐ€๋ณด๊ณ ์ž ๋„์ „ํ–ˆ๋‹ค.
๋ฏผํ์—ฌ๋„ ํŒŒ์ด๋„ ์ด์ „์—๋Š” ๋ฐ˜๋“œ์‹œ ๋ฐฑ์—”๋“œ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ฒฝํ—˜ํ•ด๋ณด๊ณ  ์‹ถ์—ˆ๋‹ค.


์ฒซ ํŒ€ ํšŒ์˜๋ฅผ ํ•˜๋Š”๋ฐ ์—ญ์‹œ๋‚˜ ๋‚ด๊ฐ€ ์ดํ•ดํ•˜๊ณ  ์žˆ๋Š” ๋ถ€๋ถ„์€ ๋ช‡ ์—†์—ˆ๋‹ค^^โ€ฆ
์‹์€๋•€์ด ์‚์งˆ์‚์งˆ ๋‚˜๋ฉด์„œ, ์•„ ์ด๊ฑฐ ๊ทธ๋ƒฅ ํ”„๋ก ํŠธ๋กœ ๋„˜์–ด๊ฐ€์•ผ ๊ทธ๋‚˜๋งˆ ๋„์›€์ด ๋˜์ง€ ์•Š์„๊นŒ?ใ…Ž ์‹ถ์—ˆ์œผ๋‚˜ ๋ง์„ ๊บผ๋‚ผ ์ˆ˜ ์—†์—ˆ๋‹ค.
๋งˆ์Œ์€ ๊ธ‰ํ•œ๋ฐ ๋งก์€ ํ…Œ์Šคํฌ๋ฅผ ์ง„ํ–‰ํ•  ๋•Œ ๋งˆ๋‹ค ๋‚˜์˜ ๋ชจ์ž๋žŒ๊ณผ ๋ฌด์ง€ํ•จ์ด ๋ณด์˜€๋‹ค. ๊ทธ๋ž˜์„œ ๋”์šฑ ๊ฐ€๋ผ์•‰์•˜๊ณ  ์กฐ๊ธ‰ํ–ˆ๋‹ค.


๊ทธ๋ž˜์„œ ์Šค๋งˆํŠธ ์ปจํŠธ๋ž™ํŠธ๋ฅผ ๊ผผ๊ผผํžˆ ๊ณต๋ถ€ํ•˜๊ณ  ๋ฐฐํฌํ•˜์—ฌ ํ”„๋กœ์ ํŠธ ์ง„ํ–‰์— ์ฐจ์งˆ์„ ์ค„์ด๋ ค๊ณ  ์—ด์‹ฌํžˆ ํ–ˆ๋‹ค.
์ƒ์†Œํ–ˆ๋˜ truffle์„ ์‚ฌ์šฉํ•˜์—ฌ ganache ๋„คํŠธ์›Œํฌ์— ๋ฐฐํฌํ•˜๋Š” ๊ณผ์ •์„ ์ด์ œ๋Š” ๋ˆˆ๊ฐ๊ณ ๋„ ํ•  ์ˆ˜ ์žˆ์„๊ฑฐ ๊ฐ™๋‹ค.
๋˜ํ•œ ๋‚ด ์žฅ์ ์„ ์‚ด๋ ค ๊ทธ๋•Œ๋งˆ๋‹ค ๋ฌธ์„œ ์ •๋ฆฌ๋ฅผ ํ•ด๋‘๊ณ , ํŒ€ ํšŒ์˜์— ์ฐธ์„ํ•˜์—ฌ ์ง„ํ–‰ ์ƒํ™ฉ ์ „๋‹ฌ์„ ํ–ˆ๋‹ค.


ํ”„๋กœ์ ํŠธ ์ง„ํ–‰๋™์•ˆ ๋‚ด ์†์—์„œ๋Š”
โ€˜๋‚ด๊ฐ€ ๊ณต๋ถ€๋ฅผ ์ž˜๋ชปํ•œ๊ฑธ๊นŒ?โ€™
โ€˜์ด ๋ถ€๋ถ„์€ ๊ณต๋ถ€๋ฅผ ์•ˆํ–ˆ๋˜๊ฑธ๊นŒ?โ€™
โ€˜๋‹ค๋ฅธ ๋ถ„๋“ค์€ ์ €๋ ‡๊ฒŒ ๋Šฅ์ˆ™ํ•˜๊ฒŒ ์ž‘์—…์„ ํ•˜๋Š”๋ฐ, ๋‚˜๋งŒ ๋ชปํ•˜๋Š” ๊ฑด ๋‚ด๊ฐ€ ๋งŽ์ด ๋ถ€์กฑํ–ˆ๋‚˜?โ€™
์ด๋Ÿฐ ๋Š์ž„์—†๋Š” ์˜์‹ฌ๋ฟ์ด์—ˆ๋‹ค.
๋„์„œ๊ด€์—์„œ ์ฑ…์„ ๋นŒ๋ ค์„œ ๋ณด๊ณ , ์œ ํŠœ๋ธŒ์™€ ๋‚ด ์ •๋ฆฌ ๋…ธ์…˜, ์œ ์–ดํด๋ž˜์Šค, ๊ตฌ๊ธ€์„ ๋‹ค ๋’ค์ ธ๊ฐ€๋ฉด์„œ ๊ณต๋ถ€ํ•ด๋„ ์ƒ์†Œํ•จ์ด ๊ฐ€์‹œ์ง€ ์•Š์•˜๋‹ค.
๋‚ด ์ž์‹ ์— ๋Œ€ํ•œ ์˜์‹ฌ์ด ๊ณ„์†ํ•ด์„œ ์ผ์–ด๋‚˜๋‹ˆ ๊ธฐ๋ถ„์ด ์ ์  ๊ฐ€๋ผ์•‰๊ณ  ํšŒํ”ผํ•˜๊ณ ๋งŒ ์‹ถ์—ˆ๋‹ค.
ํŒ€์›๋ถ„๋“ค์ด ์ž˜ ์ด๋Œ์–ด์ฃผ์ง€ ์•Š์•˜๋‹ค๋ฉด ์ด๋ฒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ์™„์„ฑ์‹œํ‚ค์ง€ ๋ชปํ–ˆ์„๊ฑฐ๋‹ค.


๋งˆ์ง€๋ง‰๋‚ , ํŒ€์›๋ถ„๊ณผ์˜ ํšŒ์˜์—์„œ ์„œ๋กœ ๊ถ๊ธˆํ•œ ์ ์„ ํ•ด์†Œํ•˜๋‹ค๊ฐ€ ๋‚ด๊ฐ€ ์•„๋Š” ๋ถ€๋ถ„์„ ๊ณต์œ ํ–ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ๊ณ ์‹ฌํ•˜๋‹ค๊ฐ€ ํŒ€์›๋ถ„๊ป˜ ๋„์›€์„ ์š”์ฒญํ–ˆ๋‹ค.
์•„์ง๋„ ์ดํ•ด๊ฐ€ ์•ˆ๊ฐ€๋Š” ๋ฐฑ์—”๋“œ ๋กœ์ง๊ณผ ์ˆœ์„œ์— ๋Œ€ํ•ด ๋ถ€๋„๋Ÿฝ์ง€๋งŒ ์„ค๋ช…์„ ๋ถ€ํƒํ–ˆ๋‹ค.
๋‚˜๋Š” ๋ˆ„๊ตฐ๊ฐ€์—๊ฒŒ ๋„์›€์„ ์š”์ฒญํ•˜๋Š” ๊ฒƒ์ด ๊ต‰์žฅํžˆ ํž˜๋“ค์–ด์„œ ๋ ˆํผ๋Ÿฐ์Šค๋ฅผ ์ฐพ๊ณ , ๊ณต๋ถ€ํ•œ ๋ถ€๋ถ„์„ ๋‹ค์‹œ ๋ณต๊ธฐํ–ˆ์—ˆ๋Š”๋ฐ.
ํŒ€์›๋ถ„์˜ ์„ค๋ช…์€ ๊ทธ ๋ชจ๋“  ๊ฒƒ์„ ๋„˜์–ด ๋‚ด๊ฒŒ ๊ฐ€์žฅ ๋„์›€์ด ๋˜์—ˆ๋‹ค.
ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด์„œ ๋ˆ„๊ตฌ๋ณด๋‹ค ์ž˜ ์ดํ•ดํ•˜๊ณ , ์ง์ ‘ ๊ตฌํ˜„๊นŒ์ง€ํ•œ ๋ณธ์ธ์˜ ์ฝ”๋“œ ๋ฆฌ๋ทฐ์™€ ๋กœ์ง ์„ค๋ช…์€ ์—„์ฒญ๋‚œ ํšจ์œจ์ด์—ˆ๋‹ค.
๋‚ด๊ฐ€ ์ฐจ๋งˆ ๋ฌผ์–ด๋ณด์ง€ ๋ชปํ–ˆ๋˜ ๊ฒƒ์€ ํŒ€์— ๋„์›€์ด ๋˜์ง€ ๋ชปํ•˜๋Š” ๊ฒƒ์„ ๋“คํ‚ค๊ณ  ์‹ถ์ง€ ์•Š์•˜๋˜๊ฑฐ์˜€๋‹ค.
๊ทธ๋ฆฌ๊ณ  ํŒ€์›๋ถ„๋“ค์ด ๋‚˜๋ฅผ ๋ฏผํ๋กœ ์—ฌ๊ฒจ ๊ท€์ฐฎ์•„ํ• ๊ฑฐ๋ผ๋Š” ์„ฃ๋ถ€๋ฅธ ์„ ์ž…๊ฒฌ์ด ์กด์žฌํ–ˆ๋‹ค.
์ด๋ฒˆ ํ”„๋กœ์ ํŠธ๋กœ ์†Œ์ค‘ํ•œ ๊ตํ›ˆ์„ ์–ป์—ˆ๋‹ค.
๋„์›€์ด ํ•„์š”ํ•  ๋•Œ๋Š” ์ž์กด์‹ฌ ๋•Œ๋ฌธ์— ํ˜ผ์ž ํ•ด๊ฒฐํ•˜๋ ค ํ•˜์ง€๋ง๊ณ , ๋„์›€์„ ์š”์ฒญํ•˜๋Š” ๊ฒƒ์ด ํŒ€์„ ์œ„ํ•œ ํšจ์œจ์ด๋‹ค.