2023.03.20(월) ~ 2023.04.07(금) SSAFY 8기 2학기 특화프로젝트 - 몽땅연필
직업이 동화작가가 아닌분들, 하지만 직접 그림을 그리고 스토리를 구상해서 동화책을 출판해보고 싶은 분들! 기존의 출판 프로세스가 복잡하고 시간적, 비용적 리스크가 너무 크다고 생각해서 출판의 꿈을 가슴 속 한켠에 넣어두지 않으셨나요? 그렇다고 열심히 만든 동화를 아무 사이트에나 올려서 수익화도 바랄 수 없고 다른 사람이 본인의 창작물을 훔쳐가지 않을까 걱정되지 않으셨나요?
몽땅연필은 기존의 출판 프로세스를 '업로드 - NFT생성 - 수익화' 로 줄였습니다! 그냥 간단히 만들어본 동화를 업로드하기만 하면 기대수입이 발생하는 저희 전자 동화책 플랫폼에서 연재해 보실래요? 전문성이 없어도 됩니다! 그저 몽당연필과 종이만 가지고도 출판할 수 있어요!
- 출판의 리스크를 감당하고싶지 않은 비전문가도 동화를 출판할 수 있게 -
몽땅연필은 비전문가도 몽당연필과 종이만 가지고도 동화를 출판할 수 있다는 서비스의 컨셉에서 영감을 받아 만들어진 이름입니다. 몽땅연필은 간단한 프로세스로 전자 동화책을 출판하고, 출판된 동화책을 이용자들이 보기위해 몽땅연필의 자체 제작 토큰인 몽땅토큰으로 결제하게되면 결제 금액의 50퍼센트를 동화를 출판하며 만들어진 NFT에 전송합니다. NFT를 그저 토큰으로 바라본 것이 아닌, 지갑으로서 활용할 수 있도록 한것이죠. 물론 NFT에 저장된 몽땅토큰은 출금도 가능합니다!
기존의 출판 프로세스에서 발생하는 리스크를 줄인 것 뿐만이 아니라, 매 주 새롭게 진행되는 챌린지에 맞추어 동화를 만들고, 참여작들 중 상위 입상을 하게 된다면 몽땅토큰을 리워드로 제공합니다. 작가가 아닌 이용자들은 챌린지 기간동안 완성된 동화는 무료로 보고 댓글, 좋아요 등으로 마음에 드는 작품을 평가할 수 있습니다. 챌린지 기간이 끝나게 된다면 해달 챌린지에 만들어진 동화는 유료로 바뀌게 됩니다! 이용자들은 챌린지에 주어진 주제를 작가마다 어떤식으로 풀어나갈지 감상하는 즐거움을 느낄 수 있습니다!
-
몽땅연필은 사용자들의 더 간편한 이용을 돕기 위해 구글, 카카오의 소셜 로그인 기능을 적용하였습니다.

-
-
각 페이지마다 동화책 컴포넌트를 클릭하면 동화 상세 조회 페이지로 이동합니다. 해당 페이지에서 동화의 상세 정보를 확인할 수 있습니다.
-
해당 동화에 대한 의견을 댓글로 남길 수 있으며 좋아요, 관심 동화 등록, 신고하기 등의 상호작용을 할 수 있습니다.
-
챌린지가 끝난 동화는 구매하기 버튼을 통해 동화책을 구매하여 읽을 수 있습니다.
-
동화, 혹은 댓글에 문제가 있다고 판단되면 신고 기능을 이용할 수 있습니다. 일정 이상 인원에게 신고가 이루어지면 잠시 동화, 혹은 댓글이 비활성화 되며 해당 동화 혹은 댓글은 일시적으로 비활성화 됩니다. 관리자의 판단 하에 신고된 이유가 합당한지를 판단하고, 신고가 누적된 동화 혹은 댓글은 경고 없이 삭제될 수 있습니다. 문제가 없는 경우에는 비활성화가 풀리게 됩니다.

-
- Gradle : 7.6
- IntelliJ : 2022.3.1
- Spring
- Spring Boot : 2.7.7
- Spring Security : 2.3.2
- Spring Data JPA : 2.7.6
- Spring Cloud Starter AWS : 2.2.1
- Swagger2 : 2.9.2
- Json Web Token : 0.9.1
- jdk : zulu 8
- MariaDB : 10.6.5
- Node.js : v16.19.0
- npm : v8.19.3
- React.js : v18.2.0
- H/W
- Raspberry Pi 4 Model B
- Arduino Uno Rev 3
- HC-06 Bluetooth Module
- Joystick Module
- S/W
- CUPS: 2.3.3
- Node.js : v16.19.0
- npm : v8.19.3
- React.js : v18.2.0
- Electron : v26.0.5
- Electron Forge : v6.0.4
- Pycharm 2022.3.2
- Flask : 2.2.2
- Tensorflow : 2.11.0
- Pytorch : 1.13.1+cu117
- Pycharm 2022.3.2
- Flask : 2.2.2
- Tensorflow : 2.11.0
- Pytorch : 1.13.1+cu117
- AWS
- S3
- CloudFront
- EC2
- 플랫폼: Ubuntu 20.04.5 LTS
- Docker : 23.0.1
- Nginx : 1.18.0(Ubuntu)
- Jenkins : 2.375.3
- Jupyter Notebook : 6.5.2
개발환경
-
OS: window 10
-
IDE
- intelliJ
- VScode
- Figma
- Remix
S08P22A308
├─backend
│ ├─gradle
│ │ └─wrapper
│ └─src
│ ├─main
│ │ ├─java
│ │ │ └─com
│ │ │ └─ssafy
│ │ │ └─mongttang
│ │ │ ├─config
│ │ │ ├─controller
│ │ │ ├─dto
│ │ │ │ └─user
│ │ │ ├─entity
│ │ │ ├─exception
│ │ │ ├─handler
│ │ │ │ └─oauth2
│ │ │ ├─repository
│ │ │ ├─security
│ │ │ ├─service
│ │ │ └─util
│ │ └─resources
│ └─test
│ └─java
│ └─com
│ └─ssafy
│ └─mongttang
├─frontend
│ ├─.vscode
│ ├─build
│ │ └─static
│ │ ├─css
│ │ ├─js
│ │ └─media
│ ├─public
│ └─src
│ ├─api
│ ├─assets
│ │ ├─fonts
│ │ ├─icons
│ │ └─images
│ ├─components
│ │ └─common
│ ├─hooks
│ ├─pages
│ │ ├─Admin
│ │ ├─Book
│ │ ├─Challenge
│ │ ├─Edit
│ │ ├─Error
│ │ ├─Home
│ │ ├─Login
│ │ ├─Logout
│ │ ├─MyProfile
│ │ ├─Notice
│ │ ├─Search
│ │ └─Withdrawal
│ ├─store
│ ├─styles
│ └─utils
├─mongttang-wallet-back
│ ├─api
│ ├─config
│ ├─routes
│ └─Service
├─mongttang-wallet-front
│ ├─public
│ └─src
│ ├─api
│ ├─assets
│ │ └─fonts
│ ├─components
│ │ ├─trade
│ │ └─wallet
│ ├─router
│ ├─store
│ └─views
└─smart-contracts
├─.vscode
├─contracts
│ ├─access
│ ├─crosschain
│ │ ├─amb
│ │ ├─arbitrum
│ │ ├─optimism
│ │ └─polygon
│ ├─finance
│ ├─governance
│ │ ├─compatibility
│ │ ├─extensions
│ │ └─utils
│ ├─interfaces
│ ├─metatx
│ ├─mocks
│ │ ├─compound
│ │ ├─crosschain
│ │ ├─docs
│ │ ├─ERC165
│ │ ├─governance
│ │ ├─proxy
│ │ ├─token
│ │ └─wizard
│ ├─proxy
│ │ ├─beacon
│ │ ├─ERC1967
│ │ ├─transparent
│ │ └─utils
│ ├─security
│ ├─token
│ │ ├─common
│ │ ├─ERC1155
│ │ │ ├─extensions
│ │ │ ├─presets
│ │ │ └─utils
│ │ ├─ERC20
│ │ │ ├─extensions
│ │ │ ├─presets
│ │ │ └─utils
│ │ ├─ERC721
│ │ │ ├─extensions
│ │ │ ├─presets
│ │ │ └─utils
│ │ └─ERC777
│ │ └─presets
│ ├─utils
│ │ ├─cryptography
│ │ ├─escrow
│ │ ├─introspection
│ │ ├─math
│ │ └─structs
│ └─vendor
│ ├─amb
│ ├─arbitrum
│ ├─compound
│ ├─optimism
│ └─polygon
├─migrations
└─test
- Git
- Notion
- JIRA
- MatterMost
- kakao Talk
- Gitlab
- 코드의 버전을 관리
- commit 시 JIRA의 이슈와 연동
- JIRA
- 매주 목표량을 설정하여 Sprint 진행
- 업무의 할당량을 정하여 Story Point를 설정하고, In-Progress -> Done 순으로 작업
- Notion
- 회의가 있을때마다 회의록을 기록하여 보관
- 학습한 기술에 대한 내용을 정리하여 공유
- 컨벤션 정리
- 스토리보드, 스퀀스다이어그램, 기능명세서 등 모두가 공유해야 하는 문서 관리
- 백엔드와 프론트엔드 간 협업에 용이하도록 API명세서를 작성하여 관리
- 이상훈: Back-end, Infra, Front-end, BlockChain
- 한상원: 팀장, Front-end, UI/UX 디자인, Figma 보조
- 이승희: 기획, PM, UI/UX 디자인, 프론트 개발, 발표
- 여민지: Back-End, API 설계, DB 설계,UI/UX디자인, Figma 담당, UCC 편집
- 나유현: Back-End, API 설계, DB 설계, 발표자료제작
- 최강혁: BlockChain












