Skip to content

tehyoyee/chatting-game-42-transcendence

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Team

이름 역할
김태형 Backend OAuth GameSocket
권지원 Backend User Relation ChatSocket
성하림 Devops Frontend
신재훈 Frontend Css



Tech Stacks

Frontend


Backend


Database


DevOps


How to Deploy

Prerequisite

versions we used for development are specified in parenthesis.

  • Docker Desktop (4.10.1)
    or
  • Docker Engine (20.10.17) and Docker Compose (2.6.1)

Optional requirements for automated launch.

  • GNU Make (3.81)
  • GNU Bash (3.2.57)

Procedure

  1. clone git repository into a location you want.

    • git clone https://github.com/tehyoyee/42-transcendence.git && cd 42-transcendence
  2. launch

    • manual
      1. cp $PWD/tools/.env_sample $PWD/.env
      2. open .env with text editor and substitute variables(e.g. {{IP ADDRESS}}) with value you want to use.
      3. run docker compose up --build
    • automated
      1. run make
      2. follow instructions to set environment variables and development mode.
  3. manage

    • You can use below Makefile targets.
      • make up executes docker-compose up --build
      • make down executes docker-compose down.
      • make stop stops every docker containers.
      • make rmc tries to remove every docker containers.
      • make rmi tries to remove every docker images.
    • If you don't have Make, it's recommended to find necessary shell commands in Makefile and execute them manually in shell.

Directory Structure

42-transcendence
├── Makefile
├── docker-compose.yml
├── backend
│   ├── Dockerfile
│   ├── tools
│   │   └── entrypoint.sh
│   │
│   │# configs for npm install
│   ├── package-lock.json
│   ├── package.json
│   ├── tsconfig.json
│   │
│   │# directory for configs containing environment variables
│   ├── config
│   │
│   │# backend source code mount volume
│   ├── src
│   │
│   │# directory for avatar image storage
│   └── uploads
│
├── frontend
│   ├── Dockerfile
│   │
│   │# configs for npm install and environment variables
│   ├── config
│   ├── entrypoint.sh
│   │
│   │# each child directories are seperate mount volume
│   └── resource
│       │# nextjs app router for routing, layout, pages, global css, fonts and etc.
│       ├── app
│       ├── components
│       ├── lib # custom hooks
│       ├── public # image resource
│       └── styles # css
│
│# mount volume for DB
├── postgres-data
│
│# setup automation script
└── tools

Debug

  • You can change source code and reflect it immediately by using development mode which is provided by setup script or manually setting each FRONTEND_RUN, BACKEND_RUN environment variables to 'dev', 'start:dev'.



ERD



API Design Document



UI Design Document

ui



Deployment Architecture Diagram

Screen Shot 2023-10-09 at 11 24 33 PM

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •