Skip to content

JamesM813/NFL-Locked-In

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏈 NFL Locked In

NFL Locked In is a web application that combines the fun of NFL pick’em with a scoring system that rewards smart, unique choices. It’s designed for groups of friends who want more strategy than just “pick the obvious winner.”

Built with React, styled with TailwindCSS, and powered by Supabase for authentication and data persistence, NFL Locked In is fast, modern, and built to scale.


What is NFL Locked In?

NFL Locked In is a project built by myself, James McGillicuddy, to better suit an NFL challenge a few friends have done for the past couple seasons. The gist of the challenge is that each week of the NFL regular season (Weeks 1–18), you pick one team you think will win.
The catch? You can only pick each team once all season.

The challenge is balancing “safe” picks with the risk of saving strong teams for later in the season, all while competing against your friends.


How Scoring Works

Scoring isn’t just win or lose, it also depends on how popular your pick was within your group:

  • If you’re the only one who picked a winning team, you earn the maximum points.
  • If multiple people pick the same team, the points are split down to encourage unique strategies.
  • Once a team is used, it’s locked out for you the rest of the season.

This creates a strategic tension:
Do you pick the clear favorite, knowing others might too? Or take a risk on an underdog for a chance at big points?


Tech Stack

  • Frontend: React with functional components and hooks.
  • Styling: TailwindCSS + shadcn/ui for clean, responsive, glassmorphism-inspired design.
  • Backend: Supabase for authentication, database, and real-time group updates.
  • UI Components: Headless UI and Heroicons for accessible and interactive components.

This stack keeps the project lightweight, maintainable, and easy to extend with new features (like playoffs support, custom scoring rules, or larger group sizes).


Groups & Competition

  • Groups can hold up to 10 players.
  • You can join or create multiple groups, maintaining seperate picks in each group.
  • Scores update within 15–30 minutes after games finish.

Getting Started (Development)

  1. Clone the repo:
    git clone https://github.com/JamesM813/NFL-Locked-In
    cd NFL-Locked-In
  2. Install dependancies
    npm install
  3. Set up environment Configure a Supabase project and add local environment variables to .env
  4. Run the dev server
    npm run dev
  5. Explore From there, you can explore other scripts like seeding and schedule cron jobs to get the site fully up and running. Any questions can be sent to myself at jrm803@gmail.com and I'll help as best as I can.

Releases

No releases published

Packages

 
 
 

Contributors

Languages