Skip to content

A multiplayer web-based game based on the popular board game "Codenames". Built with React, Socket.io (real-time chat & gameplay), Express, Node.js, MongoDB, Redis, SendGrid, JWT, and AWS.

Notifications You must be signed in to change notification settings

hatchways/team-dragon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CLUEWORDS

ClueWords is a board game for 4-8 players. Two teams compete by having a spymaster give one word clue that can point to multiple words on the board. The other players on the team attempt to guess their team’s words while avoiding the words of the other team. This application is built using Node.js, Express.js, React.js, Socket.io, MongoDB and AWS.

Contributors

Installation

  1. Clone the repository
  2. Dependencies - Run npm install in both client and server directories.

Configuration

  1. Create a file with filename .env in server directory OR copy the file env.example from server directory and rename it to .env. env.example already contains the required variables, you just need to configure them.
  2. Configure the application environment using NODE_ENV and PORT :
# Misc
NODE_ENV=[production or test or dev]
PORT= [Enter port number here]

  1. Configure the application secret key for authentication using SECRET_KEY:
SECRET_KEY= [Enter secret key for passport.js here]
  1. Create your account with Mongo Atlas (if you don't have an account) OR Use local instance of MongoDB
  2. Configure the database URI using DB_URI :
# Database

DB_URI= [Enter your mongo URI here]

  1. Download redis and add the REDIS_URI:
#Redis
REDIS_URI=[Enter your redis URI here]
  1. Sign up for SendGrid and add the API Key you get from SendGrid to SENDGRID_API_KEY. Also add the domain to DOMAIN variable:
# SendGrid
SENDGRID_API_KEY=[Enter SendGrid API Key here]
# Domain (used in email invites)
# Note: do no include "/" at end of url (ie http://mywebsite.com))
DOMAIN= 

8.Sign up for AWS and configure AWS variables in .env file:

#AWS S3
AWS_ACCESS_KEY=[Enter AWS access key]
AWS_SECRET= [Enter AWS secret]
  1. Finally, when all the .env variables are setup, run npm start for client and npm run dev for server to start. Enjoy the application!

Demo

About

A multiplayer web-based game based on the popular board game "Codenames". Built with React, Socket.io (real-time chat & gameplay), Express, Node.js, MongoDB, Redis, SendGrid, JWT, and AWS.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages