Skip to content

X-y-game/X-y-game-server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

XY Game

๐Ÿšช Overview

์ฃ„์ˆ˜์˜ ๋”œ๋ ˆ๋งˆ ๊ฐœ๋…์„ ํ™œ์šฉํ•œ XY ๊ฒŒ์ž„์„ ์›น ์ฝ˜ํ…์ธ ๋กœ ๊ฐœ๋ฐœ

4ํŒ€์ด 10๋ผ์šด๋“œ๋ฅผ ๊ฑฐ์ณ ์ตœ๋Œ€ ์ด์ต์„ ๋‹ฌ์„ฑํ•˜๋Š” ๋ฉ€ํ‹ฐ ํ”Œ๋ ˆ์ด์–ด ๊ฒŒ์ž„

์œ„๋“œํ”Œ๋Ÿฌ์Šค์—์„œ ๊ธฐ์—… ๊ต์œก์—์„œ ๋Ÿฐ์นญ ์˜ˆ์ •

๐Ÿ’ก Motivation

  • ๊ต์œก์šฉ ์˜คํ”„๋ผ์ธ ๊ฒŒ์ž„์„ ์›น ์•ฑ์„ ์„œ๋น„์Šคํ•จ์œผ๋กœ์จ ๊ฒŒ์ž„์„ ํ†ตํ•œ ๊ต์œก์˜ ํšจ์œจ์„ฑ์„ ์ œ๊ณตํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋‹ค์–‘ํ•œ ์‚ฌ์šฉ์ž์—๊ฒŒ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ  ๊ทธ์— ๋”ฐ๋ฅธ ํ”ผ๋“œ๋ฐฑ์„ ์‹ค์งˆ์ ์œผ๋กœ ๋ฐ˜์˜ํ•˜๋Š” ๊ณผ์ •์„ ๊ฒช๊ณ ์ž ๊ธฐ์—… ๊ต์œก์— ์‚ฌ์šฉ๋˜๋Š” ์›น ์•ฑ์„ ๊ฐœ๋ฐœํ•˜์—ฌ ๋Ÿฐ์นญํ•˜์˜€์Šต๋‹ˆ๋‹ค.

**๐Ÿ”— Repository**

Requirement

  • ํ•ด๋‹น ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋ชจ๋ฐ”์ผ ํ™˜๊ฒฝ์— ์ตœ์ ํ™”๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • X-y-game-server์—์„œ .env ํŒŒ์ผ์„ ์„ค์ •ํ•ด์ฃผ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Get Started

CLIENT

git clone https://github.com/X-y-game/x-y-game.git cd X-y-game npm install (or yarn) npm start (or yarn)

SERVER

Deploy Sever

  • MongoDB ๊ณ„์ •์ด ํ•„์š”ํ•˜๋ฉฐ Root ๋””๋ ‰ํ† ๋ฆฌ์— .env ํŒŒ์ผ์„ ๋งŒ๋“ค๊ณ  ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

git clone https://github.com/X-y-game/x-y-game-server.git cd X-y-game npm install (or yarn) npm run dev

DB_URL = <YOUR_MONGODB_ATLAS_URL> PORT = <default Port 8080 or SET_YOUR_PORT>

COOKIE_SCRET = <SET_YOUR_COOKIET_SECRET>

git clone https://github.com/X-y-game/X-y-game-server.git

cd X-y-game-server

npm install (or yarn)

npm start (or yarn)

Release Note

V1.0.0 First Release

Usage

  1. ๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€์—์„œ ์ฑ„๋„ , ๋ฃธ ๋ฐ ํŒ€์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  2. ๊ต์œก์ƒ(์œ ์ €)์€ ๊ด€๋ฆฌ์ž๊ฐ€ ์•Œ๋ ค์ค€ ๋น„๋ฐ€๋ฒˆํ˜ธ์™€ ํ•จ๊ป˜ ์ฑ„๋„, ๋ฃธ, ํŒ€์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.
  3. ๊ฒŒ์ž„์˜ ๊ทœ์น™์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.
    • ๋ชจ๋‘๊ฐ€ X๋ฅผ ์„ ํƒ : ๊ฐ -100 ์†์‹ค
    • ๋ชจ๋‘๊ฐ€ Y๋ฅผ ์„ ํƒ : ๊ฐ 100 ์ด์ต
    • X๊ฐ€ ๋‘ ํŒ€, Y๊ฐ€ ๋‘ ํŒ€ : X 200 ์ด์ต, Y 200 ์†์‹ค
    • X๊ฐ€ ์„ธ ํŒ€, Y๊ฐ€ ํ•œํŒ€ : X 100 ์ด์ต, Y 300 ์†์‹ค
    • X๊ฐ€ ํ•œํŒ€, Y๊ฐ€ ์„ธํŒ€ : X 300 ์ด์ต, Y 100 ์†์‹ค
    • 5๋ผ์šด๋“œ ๊ฐ€์ค‘์น˜ 3๋ฐฐ, 8๋ผ์šด๋“œ ๊ฐ€์ค‘์น˜ 5๋ฐฐ, 10๋ผ์šด๋“œ ๊ฐ€์ค‘์น˜ 10๋ฐฐ๊ฐ€ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
  4. 4ํŒ€์€ X, Y์ค‘ ํ•˜๋‚˜์˜ ์นด๋“œ๋ฅผ ์„ ํƒํ•˜์—ฌ ์ œ์ถœ ํ•ฉ๋‹ˆ๋‹ค.
  5. 4ํŒ€์ด ๋ชจ๋‘ ์นด๋“œ๋ฅผ ์ œ์ถœํ•˜๋ฉด ํ•ด๋‹น ๋ผ์šด๋“œ์˜ ์„ ํƒ ๊ฒฐ๊ณผ์™€ ์†์ต ์ •๋ณด๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  6. 10๋ผ์šด๋“œ๊ฐ€ ๋˜๋ฉด ๊ฒŒ์ž„์ด ์ข…๋ฃŒ๋˜๊ณ , ์ตœ์ข… ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

Tech Stack

Frontend Backend etc
ES2015+
React
Styled-Component
react-table
MongoDB
Mongoose
Express
Node.js
Mongo Atlas
Jest
esLint
Husky
Netlify

Feature

  • Admin ํŽ˜์ด์ง€๋ฅผ ํ†ตํ•ด ๊ด€๋ฆฌ์ž๊ฐ€ ์ฑ„๋„, ํŒ€ , ๋ฃธ ์ƒ์„ฑ ๋ฐ ์‚ญ์ œ

์ฑ„๋„์ƒ์„ฑ๊ณผ๋ Œ๋”๋ง.gif

  • ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ํ†ตํ•œ ์ธ์ฆ์œผ๋กœ ์ฑ„๋„์— ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•จ ๋น„๋ฐ€๋ฒˆํ˜ธ์ฒดํฌ.gif
  • 4ํŒ€ ์ธ์› ์ˆ˜๋ฅผ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๋กœ๋”ฉ ๋กœ๋”ฉ2.gif
  • X, Y์นด๋“œ ์ค‘ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•˜์—ฌ ์ œ์ถœ ์นด๋“œ์„ ํƒ.gif
  • 4ํŒ€ ๋ชจ๋‘ ์„ ํƒ ๋˜๋ฉด ๋ผ์šด๋“œ ๊ฒฐ๊ณผ ๋ชจ๋‹ฌ์ด ํ‘œ์‹œ ๋ผ์šด๋“œ๋ชจ๋‹ฌ.gif
  • ์ƒ๋‹จ ๋ฒ„ํŠผ์„ ํ†ตํ•ด ํ˜„์žฌ๊นŒ์ง€์˜ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Œ ์ค‘๊ฐ„๊ฒฐ๊ณผ.gif
  • ์ƒ๋‹จ ๋ฒ„ํŠผ์„ ํ†ตํ•ด ๊ฒŒ์ž„์˜ ๊ทœ์น™์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Œ ๊ทœ์น™๋ชจ๋‹ฌ.gif
  • 10๋ผ์šด๋“œ ์ข…๋ฃŒ ํ›„ ์ตœ์ข… ๊ฒฐ๊ณผ ๋ชจ๋“ˆ ํ‘œ์‹œ ์ตœ์ข…๊ฒฐ๊ณผ.gif
  • ์ตœ์ข… ๊ฒฐ๊ณผ ๋ชจ๋“ˆ์—์„œ ํ•„ํ„ฐ๋ฅผ ํ†ตํ•ด ์ •๋ณด ํ™•์ธ ๊ฐ€๋Šฅ ์ตœ์ข…๊ฒฐ๊ณผํ•„ํ„ฐ.gif
  • ๋ฐ˜์‘ํ˜• ์ฒ˜๋ฆฌ ๋ผ์šด๋“œ๊ฒฐ๊ณผ๋ฐ˜์‘ํ˜•.gif ์ค‘๊ฐ„๊ฒฐ๊ณผ๋ฐ˜์‘ํ˜•.gif ๊ทœ์น™๋ฐ˜์‘ํ˜•.gif

Remind

Socket.io

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

Mongo DB

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

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published