SKILLIQ

SkillIQ (Pro Am Hockey IQ) is an AI-powered hockey skill-analysis platform that enables players to upload practice or game video, receive automated skill scoring and feedback, and follow personalised training plans.

ProAm Hockey IQ

1. OVERVIEW

SkillIQ (Pro Am Hockey IQ) is an AI-powered hockey skill-analysis platform that enables players to upload practice or game video, receive automated skill scoring and feedback, and follow personalised training plans. The system comprises three interconnected tiers:

  • A consumer-facing Flutter mobile application for iOS and Android.
  • A Next.js internal admin dashboard for customer, subscription, and payment management.
  • A FastAPI Python backend that serves both clients and integrates AI video analysis.
Layer Primary Stack
Mobile App
Flutter / Dart
Admin Dashboard
Next.js 15 · React 18 · TypeScript
Backend API
FastAPI (Python 3) · Uvicorn
Database / Auth
Supabase (PostgreSQL + Auth)
File Storage / CDN
AWS S3 + CloudFront
AI Analysis
12Labs + Anthropic Claude

2. SYSTEM ARCHITECTURE

The diagram below shows the high-level component topology and primary data flows between the three application tiers and the shared infrastructure services.

3. KEY FLOWS

3.1  Mobile Auth & Session

  • App signs up or logs in against POST /api/v1/auth/login.
  • Backend validates credentials via Supabase Auth and returns a Supabase JWT (ES256).
  • App stores the JWT in flutter_secure_storage and attaches it as a Bearer token on every subsequent request.
  • On 401 responses, BaseApiService calls POST /api/v1/auth/refresh automatically before retrying.

3.2  Video Upload & AI Analysis

  • Mobile calls POST /api/v1/upload/presign to obtain a time-limited S3 presigned URL.
  • Video is uploaded directly from the device to AWS S3 (bypasses the backend for large binary transfer).
  • App calls POST /api/v1/analyses with the S3 key; backend triggers 12Labs for video segmentation.
  • Anthropic Claude scores skills and generates feedback from the 12Labs output.
  • Results (scores, recommendations) are persisted to Supabase and polled by the app via GET /api/v1/analyses.

3.3  Admin Auth & Dashboard

  • Admin logs in via Next.js route handler POST /api/auth/login, which proxies to POST /api/v1/admin/auth/login.
  • Backend issues HTTP-only access_token and refresh_token cookies; Next.js rewrites them with Path=/.
  • All admin API calls are proxied through app/api/* route handlers — the browser never communicates with the backend domain directly.
  • fetchWithAuth() in lib/api/auth.ts transparently refreshes expired cookies before retrying failed requests.

3.4  Image Delivery

  • Profile and content images are stored in AWS S3 during upload/analysis.
  • The admin dashboard fetches images via CloudFront CDN (d6jmtt54gyl44.cloudfront.net), configured in next.config.ts.

4. AUTHENTICATION ARCHITECTURE

Two distinct authentication mechanisms operate on the same backend, separated by client type:

Aspect Mobile (Flutter) Admin (Next.js)
Token type
Supabase JWT (ES256 Bearer)
HTTP-only cookie pair (access + refresh)
Issued by
POST /api/v1/auth/login
POST /api/v1/admin/auth/login
Storage
flutter_secure_storage
Browser HTTP-only cookies (set by Next.js proxy)
Refresh
POST /api/v1/auth/refresh (auto)
fetchWithAuth() retries with refresh cookie
Verification
JWKS fetch + ES256 verify + issuer/audience check
ADMIN_COOKIE_* env var secrets
Browser access
N/A
Never — cookies are HTTP-only and proxied

5. INFRASTRUCTURE & INTEGRATIONS

Service Provider Role
PostgreSQL + Auth
Supabase
Primary database and user identity store
File Storage
AWS S3
Video uploads and generated content; accessed via presigned URLs
CDN
AWS CloudFront
Low-latency image delivery to the admin dashboard
Video Understanding
12Labs
Shot segmentation and player tracking from uploaded video
AI Scoring
Anthropic Claude
Natural language skill scoring and training feedback
API Docs
FastAPI /docs
Auto-generated Swagger UI — the only formal API documentation

Trust and Worth

Our Customers

We are having a diversified portfolio and serving customers in the domains namely Sports Management, Online Laundry System, Matrimonial, US Mortgage, EdTech and so on.

Would you like to start a project with us?

DAStek team would be happy to hear from you and would love to turn your ‘Imaginations to Reality’.