Skip to content

RTAndrew/betolyn

Repository files navigation

Bet Olyn - Betting Platform

React Native + Spring Boot

📱 Prototype Showcase

Home Screen

Note: This work is still in progress...

A social betting platform that brings friends together through friendly wagers and competitive fun. Built during the COVID pandemic as a way for friends to interact and collect points (or money) as entertainment, this platform has evolved into a comprehensive betting ecosystem.

🎯 Project Overview

The initial design was conceived during the COVID pandemic as a creative solution for friends to stay connected and engaged through friendly competition. What started as a simple amusement has grown into a sophisticated betting platform that combines real-world events with social interaction.

Key Features

  • Real Event Betting: Create bets based on real events registered in the platform (soccer games, eSports matches, etc.)
  • Custom Betting Channels: Administrators can create public or private channels with custom "betting criteria"
  • Social Interaction: Connect with friends through shared betting experiences
  • Flexible Scoring: Support for both points-based and monetary betting systems

🎨 Design & Prototyping

The platform's design and user experience were carefully crafted in Figma: View Design in Figma

🏗️ Project Structure (Monorepo)

/
├── mobile/          # React Native Expo application
├── backend/         # Backend service (Spring Boot)
├── README.md        # This file
├── .gitignore       # Root gitignore
└── Makefile         # Build and development scripts

🚀 Getting Started

Prerequisites

  • Node.js (for mobile app)
  • Java 17+ (for backend)
  • Maven 3.6+ (or use Maven Wrapper included in project)
  • Expo CLI

Development

Mobile App

make dev-mobile
# or
cd mobile && npm start

Backend

make dev-backend
# or
cd backend && ./mvnw spring-boot:run

🛠️ Available Commands

Run make help to list all targets and their descriptions.

Command Description
make dev-mobile Start the Expo development server
make dev-backend Start the Spring Boot development server
make dev Alias for dev-mobile (default development command)
make dev-seed Run the database seeder (requires backend running on port 8080)
make db-reset Reset the database: kill 8080, start backend with profile reset (schema drop + recreate), run seed, then stop backend. Use after schema changes. Next backend run should be without the reset profile.
make install-mobile Install mobile app dependencies
make install-backend Install backend dependencies
make setup Install all dependencies (mobile + backend)
make clean Remove build artifacts and dependencies (node_modules, backend/target)
make help Show all available make targets

🤝 Contributing

Each project maintains its own dependencies and configuration. Changes to the mobile app should be made in the mobile/ directory, and backend changes in the backend/ directory.

📱 Mobile App Features

The React Native mobile application provides an intuitive interface for:

  • Browsing available betting channels
  • Creating and managing bets
  • Tracking betting history and results
  • Social interactions with other users

🔧 Backend Services

The Spring Boot backend handles:

  • User authentication and management
  • Bet creation and validation
  • Event registration and management
  • Channel administration
  • Real-time updates and notifications

About

A sports betting mobile app for friends without connotations (React Native + Java Springboot)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors