Coder Social home page Coder Social logo

dcampuzano101 / hoopr Goto Github PK

View Code? Open in Web Editor NEW
13.0 1.0 0.0 44.16 MB

Hoopr: Find basketball courts near you! Rate/Upload Photos/Review!

Home Page: https://hoopr.herokuapp.com/#/

Ruby 3.95% JavaScript 93.87% CSS 1.70% HTML 0.42% CoffeeScript 0.06%

hoopr's Introduction

Hoopr is a place where basketball enthusiasts can find parks and gyms to play the sport they love. Know before you go: Hoopr allows users to write reviews and check if a park or gym meets their needs.

Only available in the NYC area.

Technologies:

  • Ruby on Rails: used to set up Hoopr's backend structure.

  • PostgreSQL: used to host our database.

  • Javascript: primary language used for our front-end logic.

  • jQuery/Ajax: used primarily to make requests to our database.

  • React/Redux: used to create functional rendering / displays of our data to users.

  • CSS: used to style HTML elements.

User Authentication:

  • Implemented a multi-step login process that allows Hoopr users to create profiles securely without having to worry about their personal and sensitive information being leaked. We do this through the encryption of passwords and never storing any of their passwords directly into our database.

Reviews:

  • Modal that allows users that are logged in to create a review and rate a basketball court. The rating system temporarily sets the state as users choose their rating. The rating then persists and is automatically added to the profile of the basketball court.

render(){
    const basketballs = [];

    for (let i = 1; i <= 5; i++) {
      let klass = 'ball-icon';
      if (this.state.temp_rating >= i && this.state.temp_rating != null) {
          klass += ' is-selected';
      }
      const icon = 
        <img 
          className={klass}
          src={window.ballicon}
          onClick={this.rate(i)}
          key={i}
          onMouseOver={this.ball_over(i)} 
        />;
      basketballs.push(icon);
    }

    const { currentBiz } = this.props;
    if (this.props)
    return(
      <div>
        <div className="review-form-container">
          <Link to={`/businesses/${currentBiz.id}`}><h1>{currentBiz.name}</h1></Link>
            <form onSubmit={this.handleSubmit}>
            <section className="form-wrapper">
              <div className="ball-rating modal">
                  {basketballs}
              </div>
              <label>
                
                <textarea
                  placeholder="I decided to stop by the park. Perfect opportunity to sweat out last night's tacos and cerveza. The gang was all there shooting hoops. One of the best spots to play pick up in nyc. 4/5 Would come back."
                  // maxlength="5000"
                  value={this.state.body}
                  onChange={this.update('body')}
                  className="review-body"
                  rows="10"
                  cols="65">
                </textarea>
              </label>
            </section>
            <input className="review-submit" type="submit" value="Post Review" />
            </form>
        </div>

Search:

  • Hoopr's search function allows users to search by borough, neighborhood, or park name. It also displays a map that is relevant to the user's query.

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.