A reliable android app that shows upcoming fixtures, updated league tables, and top goal scorers in a Premier League and French Ligue 1

Overview

RapidScore

Screenshots


Table of Contents


Description

  • A simple football stats and live-score Android app
  • A user can select a league they want to view the league table, top scorers and also be updated on the live-scores in realtime
  • User can be able to select to see upcoming matches for a given day
  • Project was completed with MVVM architecture and following android app architecture using Retrofit , Coroutines and Navigation components

Dependencies

  • Coroutines
  • Retrofit
  • Navigation components
  • Glide
  • GlideVectorYou

API Reference

Get upcoming matches

  GET /api/v1/soccer/matches
Parameter Type Description
apiKey string Required. Your API key
seasonId string Required.League Id e.g Premier League
dateFrom string Required.
dateTo string Required.

Get League Table

  GET /api/v1/json/1/lookuptable.php
Parameter Type Description
l string Required. League Id e.g 1980 for Premier League
s string Required. League Season Id e.g 2021-2022

Get Top Scorers

  GET /api/v1/soccer/topscorers
Parameter Type Description
l string Required. League Id e.g 1980 for Premier League
s string Required. League Season Id e.g 2021-2022

Lesssons Learnt

  • Always perform heavy tasks like local database and network operations on the background thread. This is to prevent blocking the main thread, I used Retrofit for network operation in support of Coroutines to perform the task in the background thread.

  • Navigation components made it easy for me to build my app's navigation system. Learnt best practices like having one activity and multiple fragments that can be swaped in and out of the fragment container, this improved app responsiveness since fragments are lightweight

  • Learnt how to create UI designs on Figma this really came in handy since without me knowing I was always thinking on the architecture of the app and how the data will flow

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Roadmap

  Intergrate offline caching using Room local database
  Add multiple leagues like La Liga, Serie A(Ligue 1 now intergrated in version 1.1.1)

Google Playstore

License

MIT

Author Info

You might also like...
Screenshot Kata for Android Developers with Kotlin. The main goal is to practice UI Screenshot Testing.
Screenshot Kata for Android Developers with Kotlin. The main goal is to practice UI Screenshot Testing.

KataScreenshot in Kotlin We are here to practice UI testing using screenshot tests for Android. We are going to use Espresso to interact with the Appl

Super Heroes Kata for Android Developers in Kotlin. The main goal is to practice UI Testing.
Super Heroes Kata for Android Developers in Kotlin. The main goal is to practice UI Testing.

KataSuperHeroes in Kotlin We are here to practice UI Testing. We are going to use Espresso to interact with the Application UI. We are going to use Ko

Proyect with the goal to show my skills in android
Proyect with the goal to show my skills in android

ChipperMovie Es una aplicación de peliculas y sus detalles filtrados por categorias para demostrar el uso de mis habilidaedes en desarrollo movil. Ace

Maxibon kata for Kotlin Developers. The main goal is to practice property based testing.
Maxibon kata for Kotlin Developers. The main goal is to practice property based testing.

Kata Maxibon for Kotlin. We are here to practice property based testing. We are going to use KotlinTest to write our tests. We are going to practice p

KataContacts written in Kotlin. The main goal is to practice Clean Architecture Development

KataContacts written in Kotlin We are here to practice Clean Architecture Development. Clean Architecture is a way of structuring code. We are going t

TODO API Client Kata for Kotlin Developers. The main goal is to practice integration testing using MockWebServer
TODO API Client Kata for Kotlin Developers. The main goal is to practice integration testing using MockWebServer

KataTODOApiClient for Kotlin We are here to practice integration testsing using HTTP stubbing. We are going to use MockWebServer to simulate a HTTP se

The goal of this assignment is to implement GameOfFifteen
The goal of this assignment is to implement GameOfFifteen

Game of Fifteen Demo The board for the game of Fifteen is filled randomly with numbers from 1 to 15 and one empty space. You can move the neighboring

Movie streaming is an android app that show us last,newest,top imdb and popular movies.
Movie streaming is an android app that show us last,newest,top imdb and popular movies.

Movies-Streaming-Android-App An Android application which shows Popular, New Movies, Top Rated movies and all the details of any movie like- Cast, Rev

Releases(major)
Owner
Breens Mbaka
Android Developer | ✍Java | ✍Koltin
Breens Mbaka
Football live time league tables

footballLiveScoresApp Football live scores App Football Mania Live scores gives results in competitions, players and teams from english leagues like p

Ro'ziboyev Ismoil 3 Apr 30, 2022
An android app built using Kotlin that consumes TMDB API to display current trending, upcoming and popular movies 🍿 .

Flick An android app built using Kotlin that consumes TMDB API to display current trending, upcoming and popular movies ?? .It has been built followin

Kagiri Charles 8 Nov 29, 2022
ICSx⁵ is an Android app to subscribe to remote or local iCalendar files (like time tables of your school/university or event files of your sports team).

ICSx⁵ ICSx⁵ is an Android app to subscribe to remote Webcal feeds / iCalendar files (like time tables of your school/university or event files of your

bitfire web engineering 60 Dec 28, 2022
PNPscript - ProdigyPNP's upcoming programming language, designed for hacking Prodigy.

PNPscript PNPscript - ProdigyPNP's upcoming programming language, designed for hacking Prodigy. THIS IS IN EARLY DEVELOPMENT. DON'T BOTHER TRYING TO A

Prodigy P-NP 2 Sep 10, 2022
Progressive Web App that allows you to create workout tables

WORKOUT Progressive Web App that allows you to create workout tables. ...work in

Piero 0 Jan 10, 2022
Android Demo App for League of legends's Champions based on MVVM design pattern

?? LOL-Champs If this project is useful, please give it a star ⭐ A Android Sample App with champion information of the League of Legends(LOL) using An

JunBi Kim 69 Dec 19, 2022
A mobile application to aid coaching and training on League of Legends

Matteo Vettosi's Android Template A simple template for myself to have all my current approaches to Android development at hand when creating a new ap

Matteo Vettosi 1 Oct 4, 2021
A console-based productivity app involving both To-Do Lists and Goal tracking

This is a console-based productivity app involving both To-Do Lists and Goal tracking. It allows users to create To-Dos, check them off, and filter the display between complete/incomplete items

Joel Jossie 3 Dec 25, 2022
GOD - Goal of the day is the notes app which tracks your daily tasks, most important tasks & monthly goals

GOD - Goal of the day GOD - Goals of the day Problem Statement: People always face problems in finding their goals and keeping track over a period. Th

Shubham Jitiya 1 Jan 16, 2022