Riley’s App Shelf.
INDEPENDENT BUILDER / SELECTED WORK

Here are some of my
passion projects.

From the golf course to the front office.
Four projects built around the way we play, think, and decide.

The collection

FOUR APPS. DIFFERENT POSSIBILITIES.
NBA researchNBA insight, value & self-awareness

Parquet

Go deeper into the game, the odds, and your own decisions. Parquet connects in-depth NBA matchup and news research with sportsbook comparisons to spot discrepancies and seek out the strongest available betting value. Alongside that research, it helps you understand your betting patterns, recognize habits, and find areas to improve.

Coming soon
Purpose & inside the build

What you can do

  • Examine matchups, player context, injuries, and news to identify where the evidence and market expectations may diverge.
  • Compare sportsbook lines and prices to identify differences and assess potential value.
  • Review your betting history to understand recurring patterns, question habits, and make more informed decisions.

How it comes together

Parquet brings three perspectives into one research experience: what is happening on the court, how sportsbooks price it, and how you respond. Sourced context and clear explanations help you weigh potential value and uncertainty, while personal history supports more deliberate decisions over time.

Next.jsTypeScriptSupabaseAI research
GolfPersonalized round strategy

Phone Caddie

Level up your game with your own personal caddie. You don’t need a caddie alongside you, just your phone. Choose the course you want to play, then scan your ball’s lie and your target to get a personalized club, aim, and shot recommendation. Phone Caddie combines your club distances, course information, weather, and round goal to help you choose between a safer play and a more aggressive option.

Purpose & inside the build

What you can do

  • Choose your course and the hole you’re playing, then set your round goal using your own clubs and distances.
  • Scan your ball and its lie, then the green, pin, or fairway target.
  • Get a recommended club, aim point, and shot plan, plus an alternative and an explanation of the tradeoffs.
  • Use protect, balanced, or chase strategy to weigh a safer play against a more aggressive shot as you work toward your round goal.
  • Track your score and give quick feedback after each shot to keep the round grounded in your game.
  • Built-in course information currently covers all 18 holes of Slammer & Squire’s Black tees.

How it comes together

AI-assisted scans read the visible lie and target area to help shape your recommendation. Your club profile, entered distance, supported course information, weather, and score relative to your goal help the shot engine compare likely outcomes and suggest a plan built around your game.

Next.jsReactAI visionSimulation
Basketball simulationFront-office experience

NBA GM Assistant

Ever wanted to feel like you’re in the front office? Step into the GM role, evaluate your roster, explore trades, and shape your team’s next move. Bring in rosters, box scores, and league history from NBA 2K to give your front-office experience even more depth and realism.

Purpose & inside the build

What you can do

  • Think like a GM with roster analysis, team performance, and a view of your league’s history.
  • Explore trade and coaching recommendations as you plan your next move.
  • Import NBA 2K screenshots to bring your own players, results, and season story into the experience.

How it comes together

A persistent league workspace brings roster decisions, performance analysis, and season history together. AI-assisted screenshot imports connect your NBA 2K save to that workspace, adding context to the decisions you make as GM.

Next.jsTypeScriptPrismaSupabase
Fantasy footballTrade intelligence & league HQ

The Finest 12 HQ

Find stronger trades. Keep your league connected. The Finest 12 HQ pairs a live Sleeper connection with an advanced trade engine built to find competitive, balanced offers. Its evaluation model weighs player value, roster needs, and the impact on both teams to surface realistic deals, alongside standings, draft preparation, and league history.

Purpose & inside the build

What you can do

  • Shop a player across the league and discover trade packages screened for value, roster fit, and fairness to both sides.
  • Build counteroffers and compare how each deal affects both teams before proposing it in Sleeper.
  • Follow automatically refreshed Sleeper rosters, standings, matchups, and activity for The Finest 12.
  • Explore draft reports, waivers, and league history in one connected home.

How it comes together

An advanced trade evaluation model combines current market evidence with both teams’ roster needs and lineup impact. It searches for credible opportunities and filters out unbalanced or impractical packages. A read-only Sleeper integration keeps the connected league in sync, giving managers current context without changing anything in Sleeper.

Sleeper integrationTrade engineSports analyticsLeague history
THE BUILDER BEHIND THE APPSRiley Donlan · Independent projects

Passion comes first.
The projects follow.

My passion for sports, data, and practical AI shapes what I build. Each project starts with a gap I notice in something I already care about: making a smarter decision on the golf course, understanding a basketball matchup, or keeping a fantasy league connected.

I turn those gaps into tools I’d want to use myself, with a clear purpose behind each feature. This collection shows how I connect what I love with problems I can help solve.

Find me on GitHub