Skip to content

GameHouse is a web app that connects people based on their interests in a 3d game environment.

Notifications You must be signed in to change notification settings

4Baozi/GameHouse

Repository files navigation


Logo

Table of Contents
  1. About The Project
  2. Getting Started
  3. Contributors

About The Project 🎮🌎

Have you ever had a virtual event where you don’t know if the attendees are engaged? Maybe they’re quiet or shy? Or, are you trying to host a virtual gathering but want to add some spice to your event to engage the audience? Well, we got the solution for you! 👍

GameHouse is a web app that connects people based on their interests in a 3d game environment. Our project includes rooms for people to come together and communicate with each other via chat or voice while also interacting with each other virtually! Check out our web app and enjoy your hangout!

Technical Backbone 💻💫

Some of the completed user stories are:

  • Allow multiple users to join the same room.
  • Allow users to communicate through an online chat feature.
  • Allow users to communicate through voice chat.

Screenshots of the web app

Deployed at: WIP

Built With 💻☀️

Getting Started

This section will work you through how you can get started with the project.

Installation

  1. You will need NodeJS, Yarn, Web3.js and Truffle.js for this project.
  2. Clone the repo
    git clone https://github.com/APiligrim/Tetra.git
  3. CD into the project directory
    cd Tetra
  4. CD into web folder
    cd web
  5. Install yarn packages
    yarn install
  6. Start the Server
    yarn start
  7. For the backend server
    cd ../server
  8. Install yarn packages
    yarn install
  9. Start the Server
    yarn start

License

Distributed under the MIT License. See LICENSE for more information.

Contributors

  1. Josh Improgo - github
  2. Jonas Improgo - github
  3. Anastasiya Uraleva - github
  4. Kristy - github

Screenshots

Project Starter

A starter repo for building CUNY Tech Prep projects with React, Express.js, and Sequelize.js

Test Test 2

Stack

API

  • express.js
  • sequelize.js

React client

  • Built using create-react-app and configured to work with the api.
  • Bootstrap 4.x added to /client/public/index.html
  • React Router

Project Structure

.
├── README.md
├── api
│   ├── app.js
│   ├── config
│   │   └── config.json
│   ├── controllers
│   │   ├── appConfig.js
│   │   ├── index.js
│   │   └── posts.js
│   └── models
│       ├── index.js
│       └── post.js
├── client
│   ├── README.md
│   ├── package-lock.json
│   ├── package.json
│   ├── public
│   │   ├── favicon.ico
│   │   ├── index.html
│   │   ├── logo192.png
│   │   ├── logo512.png
│   │   ├── manifest.json
│   │   └── robots.txt
│   └── src
│       ├── App.css
│       ├── App.js
│       ├── App.test.js
│       ├── components
│       │   ├── Loading.js
│       │   └── Post.js
│       ├── index.css
│       ├── index.js
│       ├── logo.svg
│       ├── pages
│       │   ├── AboutUsPage.js
│       │   ├── PostFormPage.js
│       │   ├── PostsListPage.js
│       │   └── ShowPostPage.js
│       └── serviceWorker.js
├── package-lock.json
└── package.json

Dev Setup

Each team member will need to do this on their local machine.

Create a postgres db

Create a user in postgres named ctp_user with the password ctp_pass:

This only needs to be done one time on your machine You can create additional users if you want to.

createuser -P -s -e ctp_user

Create a separate db for this project:

createdb -h localhost -U ctp_user app2019_development

You will create a DB for each project you start based on this repo. For other projects change app2019_development to the new apps database name.

For more details see this installing postgres guide

Running the app

For local development you will need two terminals open, one for the api-backend and another for the react-client.

Clone this app, then:

# api-backend terminal 1
cp .env.example .env
npm install
npm run dev
# react-client terminal 2
cd client
npm install
npm start

In production you will only deploy a single app. The react client will build into static files that will be served from the backend.

Deployment

Setting up Heroku

Install the heroku cli if you don't already have it.

You will also need a heroku account And this will only be done once on your machine

# on mac
brew install heroku/brew/heroku
heroku login

Create a Heroku project

Next, cd into this project directory and create a project:

heroku create cool-appname
heroku addons:create heroku-postgresql:hobby-dev

This will deploy your apps to https://cool-appname.herokuapp.com, assuming that it is not taken already.

You only need to do this once per app

Deploying the app

Whenever you want to update the app run this command.

git push heroku main

This command deploys your main branch. You can change that and deploy a different branch such as: git push heroku development

About

GameHouse is a web app that connects people based on their interests in a 3d game environment.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published