Skip to content
This repository was archived by the owner on May 22, 2023. It is now read-only.

googleinterns/NeighborGood

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

683 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NeighborGood 🏡

A platform that connects neighbors who are seeking assistance with a task with neighbors who are willing to offer a helping hand in exchange for points.

Capstone project for STEP pod 46 in 2020.

This is not an official Google product.

Design Doc: go/neighborgood-design

Deployed Site: http://neighborgood-step.appspot.com/

Static Demo

Open tasks displayed in list-view. Scrolling to bottom of page will load more tasks until there are no more tasks.

Open tasks displayed in map-view.

Tasks being filtered by category.

User offering help with a task.

Searching tasks by a different neighborhood.

Top Scorers Board


Creating a user profile.

User profile page - Need help view

User profile page - Offer help view

Create a new task.

Edit an existing task.

Messaging between task owner and helper.

Task message notification.

Admin dashboard view. Editing user's tasks as an admin.

Admin view of user statistics.

Admin map view of user tasks.

Admin meta-tasks designed for site upkeep.

Configuration

A config file /src/main/webapp/config.js including a Google Maps API key should be included. This file should follow the below template:

var config = {
    MAPS_KEY: 'your-google-maps-api-key'
};

Testing

All servlet unit tests can be run using the command mvn test

In order to run the IntegrationTest you must have Google Chrome installed and it must be accessible from where you are running the IntegrationTest. To run the IntegrationTest first run mvn clean, then start the devServer with the command mvn package appengine:start and once the devServer is running use the command mvn -Dtest=IntegrationTest test. Once you are done testing, stop the devServer with command mvn package appengine:stop. In order to avoid test timeouts, you may have to close out of several other applications including closing as many browser tabs as possible and/or restart your computer.

Note: the webdriver used in the IntegrationTest can be flaky and occassionally hang on a page. If a page is stuck for longer than 10 seconds and appears as if still loading, pressing CTRL+R / CMD+R will typically jolt the webdriver back up and keep the tests running.

Running Development Server

Use mvn package appengine:run to run the devServer or if you wish to skip tests add -DskipTests=true at the end.

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Stars

2 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors