Pick Up Games is a web app wherein individuals can casually find local pick up games for their favorite sports. The web app allows users to view a map of the most popular local sports locations and match up with other players in the area. Supported sports will include basketball, soccer, tennis, and more.
- Easy and convenient ✔️
- For everyone to meet up with other people who want to play pick up sports games!
The website is now deployed and live at Insert Website Here !
- You are welcomed with a home page which will showcase features and services provided by the web application.
- You are able to log into your account with a username and password. You are able to register for a new account if they do not already have one.
- Your account is protected with a certain level of verification and authentication.
- You are able to manage the personal information belonging to my account profile. This includes: name, location, profile picture, sports preferences, match record and ELO score visibility (future release).
- More features will be added.
- Homepage
- Login page
- User profile page
- Account management
- Registration page
- Basic front-end testing
- Deployment
- Map Marker Visualization using Folium
- Front-end enhancement
To run this software, install the latest version of Python 3 here. Then:
- Clone this repo.
- Inside the repo, a virtual environment using
py -m venv venv
(Windows) orpython3 -m venv venv
(Mac OS/Linux) - Activate the virtual environment with
venv/Scripts/activate
(Windows) orsource venv/bin/activate
(Mac OS/Linux). On Windows machines, it may be necessary to enable scripts by running PowerShell as Administrator and enteringset-executionpolicy unrestricted
. - Install dependencies with
pip install -r requirements.txt
- Update the database with
python manage.py makemigrations
and thenpython manage.py migrate
. - Run the server with
python manage.py runserver
.
The server can be accessed locally at http://localhost:8000/.
To create an admin user, use python manage.py createsuperuser
. The admin panel can be accessed at http://localhost:8000/admin.
- Selenium - We use Selenium for our front-end testing. The tool helps with automating web applications for workflow, prompt, login/logout section, and other testing purposes. Back-end testing is done with the Django test suite, which integrates with Selenium.
To run tests, run this command in your terminal:
Note: At the time we test this, there is no error. However, if you receive error from running the command. You might need to install Google Chrome driver.
python manage.py test