Giter VIP home page Giter VIP logo

game-ee's Introduction

Game-ee 소개 (#3)

GAME-EE : 종합 게임 플랫폼을 꿈꾼다.


📝 요약

👥  팀 구성: 프론트엔드 3명 / 백엔드 2명

🙋🏻‍♀️  팀 내 역할: FE

📅  기간: 2022.04 ~ 2022.06 (6주)

⌨️ 사용 기술 스택: Next.js Typescript emotion.js recoil

✨  구현 기능

  • 기억력 게임 : 화면에 깜박거리는 순서를 기억하여 똑같이 클릭하는 게임
  • 공룡 달리기 게임 : 크롬 공룡게임과 같이 공룡이 달리면서 장해물을 피하는 게임
  • 다른 색깔 찾기 게임 : 화면에 같은 색상중 다른 하나를 찾아내는 게임
  • 로그인 : 소셜 로그인을 이용, 로그인을 하면 개인점수 기록이 가능
  • 랭킹 : 각각의 게임 마다 전체 사용자의 점수 랭킹을 표시

🔥 구성원

구성원 소개(#2)-1 구성원 소개(#2)

📌 소프트웨어 아키텍쳐

Communication

  • discord / Notion

Version

  • Github / Git

Common

  • TypeScript
    • 예상치 못한 타입이 들어가서 에러가 나는 것을 코드 단위에서 파악할 수 있게 합니다. 자신이 개발하지 않은 함수나, 객체에 대한 타입 힌트를 얻을 수 있어서 협업에 용이합니다.
  • Eslint & Prettier (linter & formatter)
    • lint는 협업시에 일정한 컨벤션을 맞출 수 있습니다.
    • formatter는 깔끔한 코드를 작성할 수 있습니다.

Frontend

  • React
    • 리액트는 컴포넌트 단위 개발로 협업을 쉽게 합니다. JSX로 컴포넌트 구조를 쉽게 알 수 있습니다.
  • Next.js (SEO)
    • 게임 플랫폼을 만들기 위해서 검색 노출이 필요합니다. 메인 페이지를 SSR로 개발해서, 검색 엔진에 노출되도록 하기위해 NextJS를 사용합니다. 또한 SSG, CSR 또한 지원하기 때문에 유동성있게 사용할 수 있습니다.
  • emotion (CSS in JS)
    • 왜 CSS - in - JS를 써야할까요?
      • JS 협업 효율? 개발자 경험이 좋아진다.
      • 클래스 이름을 생각 안해도 된다.
      • 성능보다 개발자 경험(개발 효율성, 컴포넌트 위주의 프로젝트)여서 CSS-in-JS를 사용했다.
  • recoil (state)
    • 전역 상태 관리를 위해서 사용했습니다.
    • API fetch가 많은 프로젝트가 아니므로, redux와 같은 러닝커브가 높은 라이브러리는 개발에 많은 리소스가 들어갈 것이라고 생각했습니다.
    • recoil은 redux보다 훨씬 적은 양의 코드로 상태 관리를 할 수 있습니다.

image


📁 폴더 구조

📦src
 ┣ 📂api // API 관련 로직
 ┣ 📂components // 컴포넌트들
 ┃ ┣ 📂SnakeGame // 뱀 게임 관련 컴포넌트
 ┣ 📂constants // 상수 관리
 ┣ 📂hooks // 커스텀 훅
 ┣ 📂pages // 페이지들
 ┃ ┣ 📂game // 게임 페이지
 ┣ 📂services // 서비스 로직
 ┣ 📂styles
 ┃ ┣ 📜colors.ts // 색 관련 상수
 ┃ ┗ 📜theme.ts // 테마
 ┣ 📂types // 타입
 ┗ 📂utils // 유틸 함수

✨ 프로젝트를 하면서 목표했던 것

프론트엔드 소개 (#4) Backend 협업 방식 및 목표(#5) Team 협업 방식 및 목표

game-ee's People

Contributors

sumi-0011 avatar junghyeonsu avatar bae-sh avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.