Skip to content

Latest commit

Β 

History

History
155 lines (88 loc) Β· 3.19 KB

File metadata and controls

155 lines (88 loc) Β· 3.19 KB

🎯Sportify – Sports Scores, Matches & Teams App

A modern React Native + Expo app that allows users to explore upcoming matches, view detailed stats, browse teams, and manage favourites β€” powered by TheSportsDB API.

πŸš€ Features βœ… User Authentication

Register & Login (DummyJSON API)

Form validation using Formik + Yup

Local auth persistence with Redux Persist

Protected routes (tabs hidden until login)

🏠 Home Screen

Live data fetched from TheSportsDB

Match cards with:

Team badges

Scores

Match time

Tap to view full match details

πŸ“„ Match Details Screen

Beautiful UI + gradients

Tabs: Overview, Stats, Players

Add/remove favourites

Highlights & news sections

πŸ” Explore Screen

Searchable list of teams

Team logos, country, league

API: TheSportsDB β†’ Premier League teams

⭐ Favourites

Add/remove favourites from Home & Details

Stored persistently using Redux Toolkit + Persist

πŸ‘€ Profile

View logged-in user info

Upload profile picture (Expo Image Picker)

Edit name/email

Logout button

🎨 Styling & UI

Fully responsive UI

Global theming

Dark + Light mode toggle

Feather Icons throughout the app

🎬 Splash Screen

Animated splash with:

Gradient background

Logo

Custom loader

πŸ›  Tech Stack Feature Technology Frontend React Native, Expo Router State Management Redux Toolkit, Redux Persist Authentication DummyJSON API Sports Data TheSportsDB API UI Feather Icons, Linear Gradient, Animated API Image Upload Expo Image Picker

🌐 APIs Used 1️⃣ DummyJSON – Authentication

Login β†’ /auth/login

Register β†’ /users/add

2️⃣ SportsDB – Matches & Teams

Upcoming matches

Team logos

Player list

Events

Get started

  1. Install dependencies

    npm install
  2. Start the app

    npx expo start

In the output, you'll find options to open the app in a

You can start developing by editing the files inside the app directory. This project uses file-based routing.

Get a fresh project

When you're ready, run:

npm run reset-project

This command will move the starter code to the app-example directory and create a blank app directory where you can start developing.

Learn more

To learn more about developing your project with Expo, look at the following resources:

Join the community

Join our community of developers creating universal apps.