Inspiration

Jelly grew out of our concern about how accessible and normalized sports betting has become. Maryland alone lists 12 licensed online and mobile sportsbook operators, putting numerous betting platforms within reach of anyone with a smartphone. Source: Maryland Lottery and Gaming

Our inspiration is also personal: people close to us have been affected by gambling. We wanted to create a supportive, judgment-free tool that helps people understand their habits and follow their own commitments—whether that means setting limits, reducing gambling, or stopping altogether.

What Jelly does

Jelly is a web app designed to bring gambling activity into one dashboard, helping users see the bigger picture across their accounts. Users can provide goals and habits while Jelly helps the user with tailored plans and explores behavioral insights that highlight changes in their recorded activity.

The app also provides gambling support resources. Our current demo uses synthetic data to demonstrate connected accounts and sample restriction statuses.

Our vision includes optional support from someone the user trusts. A concerned friend or family member could share Jelly and, with the user’s consent, become an emergency contact, receiving notifications when the user's streak of not betting breaks or when the user chooses to reach out for support.

We hope Jelly gives people a clearer understanding of their gambling activity and practical support for the changes they want to make.

What we learned

We also learned how carefully a support tool needs to communicate. An insight should describe what was recorded without assuming why someone gambled. A chat response should help someone pause and reflect without presenting itself as therapy.

How we built it

We gave Jelly a playful, welcoming look through its mascot, soft colors, and approachable layout. We were very intentional about wording, phrasing, and terminology throughout the site. We made sure suggestions and insights felt supportive and free of judgment, without assuming why a person placed a bet.

We built Jelly with Next.js, React, TypeScript, and CSS. Python scripts helped us create synthetic sportsbook datasets for the demo. We normalize bets and transactions from the sample accounts into one dashboard, then calculate metrics and activity insights across them.

Jelly’s personalized plan is generated from the user’s goal, onboarding answers, and a complete shared week of recorded activity when available. The optional support chat uses the OpenAI API for short, CBT-inspired self-help conversations, with moderation and safeguards around crisis and betting-advice requests.

We use PostgreSQL and Drizzle ORM to store accounts, goals, plan progress, invitations, emergency-contact requests, and chat history. Better Auth handles sign-in, Resend handles email flows, and the web app is deployed on Vercel.

Challenges we faced

Gambling apps are difficult to pull or scrape data. Some data must be requested 30 days in advance.

Making support useful while respecting boundaries. We had to make the chat helpful without presenting it as clinical care.

What's next?

We also want to explore secure, user-authorized ways to import real betting activity. The current prototype uses synthetic data, so live connections would need careful work on access, accuracy, and privacy.

We want to make Jelly’s insights more useful and personal. That means showing how betting patterns change over time, connecting those changes to a user’s goal, and improving the charts and metrics so people can understand their activity at a glance.

We plan to add guidance on accessing each gambling provider's responsible gaming tools, including breaks, deposit and spending limits, and self-exclusion. This would help users understand the available options and take action directly with their provider.

We also want to improve the chatbot. Future versions could use more of the user’s chosen plan to offer relevant, CBT-inspired exercises for urges and setbacks. We’ll keep testing its responses and safety boundaries so it remains a self-help tool that knows when to direct someone to human support.

Built With

Share this project:

Updates

Submission history