Giter Site home page Giter Site logo

naseer2426 / hack-off Goto Github PK

View Code? Open in Web Editor NEW
11.0 3.0 6.0 1.11 MB

:computer: An online 1v1 hacking game where you can face off against your friends to find out who's the better coder.

Home Page: https://naseer2426.github.io/hack-off-game/

JavaScript 95.39% HTML 4.22% CSS 0.39%
reactjs socket-io heroku docker gcc-complier gpp child-process

hack-off's Introduction

HackOff

Ever wanted to prove to your friend, you're better than him at coding! Challenge him to a game of HackOff. In this lightning paced coding environment, you can best your opponent in a battle to the end.

Inspiration

Inspired by intense duels between hacker and hacker, hacker and government, HackOff aims to bring that experience to you. The blood pressure raising, tension inducing contest will bring out your truest skills.

What it does

Hack Off is an interactive game which involves two players who competing against each other to solve coding challenges to make their move in the game integrated along with the challenge.

Finding the player

We use sockets and a queue to implement our backend to match players up with their friends.

Picking a difficulty

Pick a difficulty: easy, medium or hard. You get more moves the harder your difficulty.

Playing the game

First solve the coding question succesfully

Then move on to play your move

Solve problems quicker, and use your advantage to outwit your opponent in an intense game of the mind.

Win before your opponent, in a battle for pride.

How we built it

Client

ReactJs

Our client is built using react and react-bootstrap, custom css styling has been used.

ReactSky

A premade react library for creating the background.

ReactAce

A premade react library for making the text editor.

Server

Sockets

Our server uses sockets to connect and exchange data, we have a queue of games for multiple players and people to join.

Code Compiling API

We use a REST API to compile code and execute it on a remote server, to solve our problems.

Challenges we ran into

  • Redux: setting up of react redux was a difficult procedure
  • Making custom chess version: We couldn't open source any chess engine as we were making our own version of chess where you could move twice
  • Finding Problems: Finding data on coding problems was very difficult, we had to manually make questions for our game in the required format.

Accomplishments that we are proud of

  • Front End- the front end of the application has resulted in a beautiful interface
  • Socket - the socket application is connected well, the server

What I learned

  • Front End - making clean react apps
  • Socket- making of backends with socket connections

What's next for Hack Off

  • Deploying our server onto a cloud engine
  • Making more quality of life improvements, like friends, game sessions, and more games!

hack-off's People

Contributors

abhinav112 avatar ashivalagar avatar naseer2426 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  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.