Skip to main content
Back to Portfolio
Production Full-Stack Web Platform & CV Studio

nothingbutnet

A production-ready full-stack web platform (nothingbutnet.online) with a dedicated native Android companion app, providing real-time basketball shot analytics via custom computer vision and polynomial regression.

Decoupled Microservice Architecture & Multi-Client Ecosystem

Engineered with a clean separation of concerns: the core full-stack web application (React 19 SPA) and native Android mobile companion communicate through a central Node.js API gateway handling auth, sessions, and Stripe billing, while computationally heavy video analysis is delegated to dedicated Python worker microservices to keep the entire system non-blocking.

Core Engineering Features

  • Full-Stack Web SPA & Analytics

    Interactive React 19 web suite with real-time shot charts, trajectory overlays, and shooting consistency metrics.

  • Monetization, Auth & API Gateway

    Node.js REST API with JWT authentication and Stripe webhooks managing Free, Guest, and Pro tiers.

  • Native Android Companion App

    Kotlin mobile client with CameraX on-court recording, background upload queueing, and mobile telemetry.

  • Dynamic ROI Tracking

    Drastically reduced CPU load per frame by bounding detection to dynamic Regions of Interest with full-frame fallback.

  • Trajectory Modeling (>90% Precision)

    Custom polynomial regression engine in Python modeling 3D parabolic curves and release angles.

  • Physics-Based False-Positive Filter

    Nearest-circle selection rejecting unnatural >300px frame jumps caused by court background noise.

  • Asynchronous Worker Pipelines

    Multi-threaded pipelines ensuring sub-second response times during heavy video encoding.

Technology Stack & Deployment

Frontend Web (Main)React 19, Vite 6, Framer Motion, Tailwind CSS
Backend GatewayNode.js (Express), Threading, Stripe SDK, MongoDB Atlas
CV EnginePython 3.x, OpenCV, NumPy, Polynomial Regression
Mobile CompanionNative Android, Kotlin, CameraX, Jetpack, Retrofit
Cloud HostingVercel (Frontend CI/CD), Render (Microservices)

Algorithmic Performance Optimizations

  • Dynamic Region of Interest (ROI) tracking cutting frame evaluation time by over 65%.
  • Intelligent frame sampling to process key trajectory segments without sacrificing curve accuracy.
  • Physics-based velocity constraints discarding erroneous non-ball contours.

The Mission

Nothing But Net was born from the intersection of competitive basketball and computer vision engineering. The goal was to build a production-grade analytics platform that provides elite-level intelligence to any player through a modern web application and mobile companion.

1. Full-Stack Web Platform & Analytics Suite (Core Flagship)

The primary hub of Nothing But Net is a high-performance web application hosted at nothingbutnet.online. Built with modern full-stack standards, the web platform serves as the central control room for shot analysis, player telemetry, and platform management:

  • Interactive React 19 Frontend: Engineered with React 19, Vite, and Tailwind CSS to deliver sub-second UI transitions, interactive shot charts, coordinate heatmaps, and customizable video scrubbing.
  • Node.js API Gateway & Session Management: A secure Node.js/Express backend coordinating user authentication (JWT), MongoDB data persistence, and Stripe payment webhook processing for Free, Guest, and Pro tiers.
  • Comprehensive Visual Telemetry: Renders 2D shot arcs, calculated entry angles relative to the hoop rim, release points, and historical shooting percentages across multi-session practice routines.
  • Production CI/CD: Continuous deployment pipeline with automated preview and production builds on Vercel backed by resilient cloud infrastructure.

2. Native Android Mobile App & On-Court Companion

To bring the power of the web platform directly onto the basketball court, a dedicated native Android application was engineered in Kotlin as a specialized mobile recording companion:

  • CameraX Recording & Frame Optimization: High-frame-rate on-court video capture configured with dynamic exposure and shutter speed tuning tailored for high-speed sports motion.
  • Resilient Background Ingestion: Non-blocking background upload pipelines that buffer and stream recordings to the cloud microservices without locking the athlete out of reviewing prior sets.
  • Sideline Shot Telemetry: Instant on-device feedback displaying make/miss classifications, release angle readouts, and synced session logs synchronized with the user's primary web profile.

3. Computer Vision Pipeline & Physics Filter

In outdoor basketball courts, lighting conditions change rapidly, and spectators or rim colors can easily fool classical color masks. To achieve >90% trajectory accuracy:

  • Nearest-Circle Selection: Uses spatial proximity heuristics across sequential frames to maintain ball identity even through occlusions.
  • Physics-Based Jump Filter: Discards any detection that jumps more than 300 pixels within a single frame interval—physically impossible for human shooting velocities.
  • Polynomial Trajectory Modeling: Fits detected coordinates to a second-order polynomial curve, allowing precise calculation of the entry angle into the basket cylinder.

4. Microservices Architecture & Cloud Deployment

The entire ecosystem is deployed across a decoupled multi-service infrastructure: GitHub Actions triggers automated deployments to Vercel for the React frontend, while the containerized Node.js API and Python computer vision microservices run on Render with automated health check monitoring and non-blocking worker threads.