Coder Social home page Coder Social logo

bark-park's Introduction

Bark-Park. Woof woof.

React app to help you and your dogs check-out local dog parks and make new friends!

LIVE DEMO

Mac OSX Prerequisites

  1. Make sure xcode is up to date.

    xcode-select --install
    
  2. Install Homebrew

     ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    
  3. This project uses Ruby 2.3.3, which is best installed through rbenv.

    brew install rbenv
    
    brew install ruby-build
    
    rbenv install 2.3.3
    rbenv global 2.3.3
    

    ⚠️ If you see an error when trying to install Ruby, something along the lines of:

    ERROR: Ruby install aborted due to missing extensions Try the following line to install Ruby 2.3.3

    RUBY_CONFIGURE_OPTS="--with-openssl-dir=/usr/local/opt/openssl" rbenv install 2.3.3
    

    At this point, you want to restart your terminal to ensure everything takes effect.

  4. Install RSpec for testing

    gem install rspec
    

    Restart terminal again.

    ⚠️ Important note: You should NEVER need to sudo gem install ___ anything. If you get a permission issue, that means your system isn't using the rbenv/rvm version of rubygems.

  5. Install Postgres Database

    brew install postgres
    
  6. Create a physical postgresql database

    initdb /usr/local/var/postgres
    

    You can start and stop the database with the following commands. These are nice to create as an alias within your .bash_profile

    pg_ctl -D /usr/local/var/postgres start
    pg_ctl -D /usr/local/var/postgres stop
    

Getting the app started

  1. Clone this repo

  2. Run bundle install

  3. Run rake db:create

  4. Run rake db:migrate

  5. Run rake db:seed

  6. Install JavaScript Dependencies in client/src. You're welcome to use Yarn or NPM

  7. Run rake start

  8. Open your browser to localhost:5000

Contributing

For more information on how to contribute to this project, please visit: https://github.com/katleiahramos/Bark-Park/blob/master/contributing.md Bug reports and pull requests are welcome on GitHub at https://github.com/katleiahramos/Bark-Park

License

The project is available as open source under the terms of the MIT LICENSE

bark-park's People

Contributors

countaight avatar dependabot[bot] avatar katleiahramos avatar mintii avatar sourcediz avatar

Stargazers

 avatar  avatar

Watchers

 avatar

bark-park's Issues

[Doc] Update README with installation instructions

I would really love to make this project more open-source and developer friendly.

Right now the the README doesn't include any notes about how a developer can pull down the code locally and get it up and running.

Task

  • Update README to include installation instructions (downloading dependencies like postgresql, node, ruby, rails, ect)

[design] UI/UX Designs/Ideas

I'm super open any/all suggestions on the design of this app! whether thats colors, suggestions for a design system/style guide, or small updates to the existing design.

We can start the conversation here! Feel free to leave comments to contribute to the overall conversation, and/or if you have ideas and would like to be directly involved I would love to chat about where we can document that process/hold the information.

[bug] User does not stay checked in after hard refresh

Current Behavior

Currently, when if a user is checked into a park and they refresh the page, the UI does not represent that they are currently logged in.

see below
demo of bug

Expected Behavior:

When a user refreshes, the UI is still in the checked-in state.

Note:

  • this may take some involved debugging, and be a more complex task to fix.

[task] improve validation feedback on login form

At the moment, the login form does not validate against empty fields for username and password.

image

Acceptance Criteria for this tasks:
As a user, I should not be able to submit the form without entering a username and password and I should be notified in the UI why I cannot submit.

[Task] Store JWT secret as an environment variable

Right now the JWT encoding and decoding happens in the application controller, and the JWT secret is hard coded into the code (see link below)

JWT.encode(payload, "1136646")

Tasks

  • use an environment variable to get the JWT secret value, replacing the hard coded value.

Resources:

[Doc] Add Pull Request Process section to contributing.md

After #16 is merged, it would be great to address the TODO to add the Pull Request Process. Since this is after the Development section that should describe the process for forking the repo, cloning it locally - we this section should probably include information about how to create a pull request and what to expect. For example: use the pull request template, # of reviewers required (maybe some reasoning behind that).

Tasks

  • add documentation in the TODO under the Pull Request Process header

[task] Refactor rails router

Current the router is a """bit""" messy. There's a mix of using rails resources and HTTP verbs and actions.

scope :api do

To be more explicit and for better user readability, replace the resources with HTTP verb and path.

example:

post '/users', to: 'users#create'

This may require looking at the checkins and parks controllers to see what routes and controller methods are currently being used.

Tasks

  • replace resources for checkins and parks with HTPP verb and path syntax.
  • ensure API calls work as expected, and that the UI still functions as expected.
  • (BONUS) add simple unit tests for those endpoints

Resources

https://guides.rubyonrails.org/routing.html

[Task] Remove broken GIF from README

Currently in the README there is a gif (or different image type?) that's not working. See below:

image

Tasks

Remove broken image from the README to give it a cleaner look.

[task] Fix Map CSS

Current Behavior

  • Currently, the app is over flowing horizontally and scrolling to the right. See gif below.

demo video showing map scrolling to the right

Expected Behavior

  • the app does not overflow and there is no ability to scroll horizontally

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.