17beans/cube

★ 0Forks 0JavaScriptGitHub ↗Compare

README

프로젝트 설명

문제은행 프로그램(cs)의 모바일 커뮤니티 앱 학교/학원/과외 선생님들이 수학문제 제작에 있어 편리함을 제공하는 문제은행 프로그램에 대한 편리한 운영을 위한 플랫폼으로 자동로그인/로그아웃, QnA, 메뉴얼, 사용 팁 ,공지사항 등 사용자들 간의 커뮤니케이션을 위한 Android 및 IOS 앱이다.

  • 당근 마켓, 중고나라 등의 앱을 벤치마킹하여 소비자 입장에서 가장 편한 UI가 무엇일지 고민하였고 심플한 디자인을 추구함
  • 로그인과 관련된 기능은 MSSQL을 통해 DB에서 회원 정보를 조회하여 이루어지도록 구현
  • 글 업로드 시 글은 MSSQL Server의 DB에, 이미지는 Python Flask를 이용하여 POST로 Apach 서버에 저장하고, Apache 서버의 이미지 URL을 DB에 넣어 글을 조회할 때 이미지 볼 수 있도록 구현

Stacks

  • React Native(0.63.4) Without Expo (react-native-cli)
  • Redux
  • MSSQL(MS SQL Server)
  • Apache
  • Python(Flask)
  • 기타 사용된 라이브러리 package.json 참고

폴더 구조 및 파일

  • src
  • ㄴ assets: 앱에 이용되는 이미지 리소스들
  • ㄴ components: 재사용이 가능한 헤더, 각종 버튼, 이미지 슬라이더 등의 컴포넌트들
  • ㄴ helpers: 이메일, 이름, 패스워드 등의 검증 기능들
  • ㄴ redux: 전역 상태 관리용 디렉토리
  • ㄴ screens: 앱에 사용되는 모든 화면들
  • App.js: 앱의 Splash image를 보여준 뒤 보일 화면을 결정하도록 구현
  • index.js: Redux를 통한 전역 상태 관리를 위해 Provider로 App.js 컴포넌트를 감싸 구현

앱 구동 모습

전체 앱 화면
이메일 형식 오류 자동 로그인 및 로그아웃 글 및 이미지 업로드
댓글 등록과 삭제 외부로 글 공유 글 수정 및 삭제
무한 스크롤 당겨서 새로고침 구독 했을 경우와
하지 않았을 경우

User & Data Flow

Cube User   Data Flow

버그 및 디버그

로그인 구현 시 뒤로 이동 버튼을 클릭하면 앱 종료가 아닌 로그인 화면으로 다시 이동하는 이슈 발생, 페이지가 페이지 위에 쌓이는 방식(navigate)이 아닌 재위치(replace) 시키는 방식으로 해결.

Contributors

17beans

Issues