Skip to content

codestates-beb/beb-09-clean-mile

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

header

환경 보호 행사에 대한 정보를 한 곳에 모아서 접근성과 사용자 편의성을 증진시키고, 행사에 참여하는 사용자들에게 인증 배지(NFT)를 발급하여 활발한 참여를 유도하는 것을 목표로 하는 환경 캠페인 플랫폼입니다.

이 프로젝트는 환경 보호에 관심이 있는 사람들 간의 상호작용을 촉진하고, 참여자들이 자발적으로 참여하도록 유도하여 도시 미관 훼손, 배수 시설 훼손, 생물 다양성 훼손, 대기 오염, 자원 고갈 등의 환경 문제를 해결하고 개선하는 데 기여하고자 하는 아이디어에서 시작하였습니다.


배포 링크 및 발표 영상


목차

  1. 프로젝트 목표
  2. 프로젝트 주요 기능
  3. 팀원 소개
  4. 기술 스택
  5. 서비스 아키텍처
  6. 프로젝트 실행 방법
  7. 상세 정보

🌱 프로젝트 목표 🌱

  • 환경 보호 행사 정보 제공

    다양한 환경 보호 행사들에 대한 정보를 한 곳에 모아서 사용자들이 쉽게 접근할 수 있도록 합니다.
  • 인증 배지(NFT) 발급 및 행사참여 점수에 따른 DNFT 업그레이드

    행사에 참여하는 사용자들에게 특별한 인증 배지(NFT)를 발급하여 참여를 유도하고, 그에 따른 점수를 합산하여 DNFT를 업그레이드하여 활발한 참여를 장려합니다.
  • 커뮤니티 기능

    사용자들 간의 소통과 상호작용을 촉진하는 커뮤니티 기능을 제공하여 환경 보호에 대한 관심을 더욱 높이고 지속적인 참여를 유도합니다.

🌍 프로젝트 주요 기능

  • 플로깅, 비치 코밍 등의 환경 보호 행사에 관심이 있는 사용자들을 위한 커뮤니티 구축
  • 회원가입 시 기본적으로 DNFT (ERC-721) 지급하여 활동 상태에 따라 업그레이드 제공
  • 행사에 참여 후 QR 인증을 통한 참여 인증
  • 사용자들이 환경 보호 행사에 참여할 때마다 행사 참여 기록을 블록체인에 저장하고, 참여자들에게 NFT (ERC-1155) 형태의 인증 배지 발급
  • 관리자 페이지에서 커뮤니티 사용자, 게시글 관리

👨‍💻 팀원 소개

piatoss3612 KimSeoYeon23 dlwltn98 dokpark21
이효확(팀장) 김서연 이지수 박상현
총괄 프론트엔드 백엔드 컨트랙트

🔧 기술 스택

  • Front-end

  • Back-End

  • Blockchain

  • Daemon

  • Infra


🌐 서비스 아키텍처

Diagram

서비스 아키텍처

AWS Infrastructure

20230810_024854


🚀 프로젝트 실행 방법

0. 필수 설치

1. 프로젝트 클론

$ git clone https://github.com/codestates-beb/beb-09-clean-mile.git

2. 컨트랙트 배포

  • 컨트랙트 배포를 위해 Alchemy API Key와 Private Key가 필요합니다.
$ cd contract && npm install
$ npx hardhat run scripts/deploy.js --network mumbai

3. 서버 실행

  • server/src/config/config.json 파일을 생성합니다.
$ cd server && npm install
$ npm run dev
  • 또는 docker-compose를 이용하여 실행할 수 있습니다.
$ docker compose up -d server

4. 사용자 & 관리자 클라이언트 실행

  • client/.env 파일을 생성합니다.
  • admin/.env 파일을 생성합니다.
$ cd client && npm install
$ npm run dev
$ cd admin && npm install
$ npm run dev

docker-compose.yml 파일에 client, admin 서비스가 추가되어 있지만, 컨테이너 이미지 빌드를 테스트하기 위한 용도로만 사용하였습니다.


🗂️ 상세 정보

Footer