picklePal-app Tailwind Templates

Picklepal App

PicklePal is a full-stack app using Python, Flask, SQLAlchemy, Tailwind CSS, and the Google Maps API. Features auth, responsive design, and match coordination.

PicklePal App

Wireframes

figma https://www.figma.com/design/J4mKwxV0URjaOAYCcCaals/PicklePal?node-id=0-1&m=dev

DB Diagram

https://dbdiagram.io/d/66a97c8a8b4bb5230ecadc5e

Description

PicklePal is a mobile and web application designed to help pickleball players connect, schedule games, and form groups based on their location. The app features a social feed for users to share updates, achievements, and game highlights.

Stack

  • Frontend: HTML, JavaScript, Tailwind CSS
  • Backend: Python/Flask
  • Database: PostgreSQL
  • APIs: Custom API, Google Maps API

Focus

This will be a full-stack application with an even focus on both the front-end UI and the back-end functionality.

Type

Mobile app first project with a desktop implementation in the future.

Goal

The primary goal of PicklePal is to enable pickleball players to easily find partners, schedule games, and connect with others in their area. It aims to foster a sense of community among players by providing a platform to connect, share updates, and organize games.

Users

The target users are pickleball players of all skill levels who want to connect with others in their area. This includes solo players, groups, and teams who wish to schedule and participate in pickleball games.

Data

  • Map API Data: Used to determine player locations and nearby pickleball courts.
  • Custom API Data: Used to manage user profiles, group formations, courts, messages, and social feed content.

MVP

  • Location-Based Matchmaking: Finding nearby players and courts using the Maps API.
  • Group Formation: Creating and managing groups.
  • Social Feed: Sharing updates, posting to courts, commenting on posts, adding friends.

Extra

  • Review Feature: Adding reviews for courts.

User Flow

  1. Registration/Login: Users create an account or log in.
  2. Profile Setup: Users set up their profile, including location, name, skill level, and home court.
  3. Finding Courts: Users search for nearby pickleball courts using the Maps API or add their court/details if it does not exist.
  4. Joining/Creating Groups: Users form or join groups.
  5. Social Interaction: Users post updates and interact on the home or local court social feed.

Future Goals

  • Notifications Giving more notifications to make more use of the groups and friends features. Allow users to select or post times/days that they plan on going that's outside of their typical routine.
  • Messaging Allow users to message eachother and implement group messaging as well.
  • Machine Learning: Suggesting optimal game times and partners based on user activity.
  • Tournament Management: Organizing and managing local tournaments.
  • Performance Tracking: Recording and analyzing game performance statistics.

Setup Instructions

Install Python

Install PostgreSQL

create virtual env

clone repo

pip install -r requirements.txt

update secrets values in a .env file DATABASE_URL=postgresql:///picklepal SECRET_KEY=your_secret_key API_KEY=your_google_maps_api_key

createdb picklepal flask db upgrade

flask run

Top categories

Loading Svelte Themes