GithubHelp home page GithubHelp logo

beards-of-zeus / hrr7-apollo Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hrr7-apollo/hrr7-apollo

2.0 5.0 4.0 3.02 MB

A typing game for programming

Home Page: https://homerow-zeus.herokuapp.com

JavaScript 75.34% HTML 11.40% CSS 7.18% Shell 6.08%

hrr7-apollo's Introduction

Stories in Ready

Homerow Apollo

Homerow Apollo

What is it?

In Homerow Apollo, you will be given a prompt to type, and a time limit to complete the prompt under. Earn points and move on to the next level by correctly typing out the prompt within the time limit. The best scores will earn a spot on the Leaderboard, so do your best!

How to Get Started

Install dependencies:

  1. From root directory, run npm install.
  2. From root directory, run bower install.

Seeding the Database with Challenges and Game records:

  1. In your Terminal, navigate to the server/ directory.
  2. Enter the mongo shell by typing 'mongo' and hitting enter.
  3. Create or switch to the database that you wish to use with Homerow Apollo with the use command (for example, use apollo).
  4. Seed the database with challenges by entering the following: load('seedBatch.js')
  5. Seed the database with game records by entering the following: load('seedGame.js')
  6. Exit the mongo shell with ctrl+c
  7. Run the server and open the browser to localhost:8080

Tools

  • Angular
  • Sass
  • Bower
  • Express
  • Mongoose
  • Node.js
  • Grunt
  • Morgan
  • Method-Override
  • Body-Parser
  • CodeMirror
  • Karma / Mocha / Chai / ng-mock (Unit Tests)
  • Protractor / Jasmine (End to End Tests)

Minimum Viable Product

  • User can start a new Game.
  • User can complete challenges by typing prompts into text fields.
  • Score earned is based on how long it takes the User to complete each level.
  • Game includes levels of increasing difficulty.
  • Database holds Leaderboard of highest current scores.
  • User can view the Leaderboard.

Stretch Features

  • User accounts
  • Criteria-based/bonus challenges
  • Report of words per minute or other performance breakdown
  • Find source for challenge content
  • Option to play Game with other programming languages
  • D3 visualization of Leaderboard

##To set up Authorization (just for reference for now) 1.) Sign up for auth0 and use Angular and Node 2.) Follow set-up directions in both Angular and Node tabs -Be sure to include [] in landing page module.app 3.) From auth0 dashboard:

a.) go to App/API --> settings and enter http://localhost:8080, https://hfoster.auth0.com/login/callback into allowed callback URIs b.) go to connections/social -turn on google and click on it c.) go to https://console.developers.google.com/ -In top menu, click on dropdown, and select 'create' (create project maybe?) -Enter a name for the project and then create -Go to APIs&Auth--> APIs --> API library --> Social APIs --> Google+ API --> enable --> back -->Enabled APIs --> Google+ -Go to credentials --> add credentials -->OAuth 2.0 client ID -Select web application -Authorized JavaScript Origins: https://hfoster.auth0.com -Authorized Redirect URI https://hfoster.auth0.com/login/callback -Create d.) Copy/paste clientid and client secret into auth0 menu from b.) e.) save

User database instructions

  1. Install Postgres app http://postgresapp.com/, make sure that it is running
  2. Run the psql command from your terminal to open the postgres shell (make sure that it runs on port 5432)
  3. Create the database Delphi run the following: create database delphi;
  • Connect to the new db with: \c delphi
  1. Start the server with nodemon and you should see the tables being created during the run
  2. Update your db.js file so that it reads
  • Be sure that you have no other installations of psql, uninstalling them if needed
  • Add the information on the following page to your bash profile to use command line with Psql: http://postgresapp.com/documentation/cli-tools.html - be sure to restart your bash after this
  • You can exit the psql terminal with the following command: \q

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.