GithubHelp home page GithubHelp logo

canadatransit's Introduction

CanadaTransit pipeline status coverage report

Android mobile application for Bus tracking across Canada. That uses the TransitLand API to fetch for the bus schedules for each of the transit line operators.

Getting Started

Prerequisites

Libraries

Most used libraries within the application which a developer must have knowledge with.

Running the tests

Unit tests is an essential part to the development of the application. A good developer should test the code the've made to eliminate bug in production. This project has good amount of unit tests that mostly covered the source code.

You can either use the script through the terminal or command-line or run the test within android studio. After the unit test, it will then print the code coverage percentile which tell us how much code are covered by the test.

Terminal or Command line

Make sure that you are at the project's root.

./scripts/unit-test.sh

Running the static analysis

Static analysis is way to analyze the source code for code smells. Its main purpose is to check for buggy code, code format, or even suggest for a good code. After the analysis it will create a report which will contain a list of things that needed to be fixed, so make sure that they are all addressed.

Static analysis can only be executed through the terminal or command-line with a script.

./scripts/static-analysis.sh

Running the code formatter

Code formatter is a script that will automatically formats the source code based on the rules. It uses a default ktlint code formatter which is a list of standard to format the code in kotlin.

Code formatter can only be executed through the terminal or command-line with a script.

./scripts/code-formatter.sh

canadatransit's People

Contributors

poldz123 avatar

Stargazers

 avatar

canadatransit's Issues

Model should be using Immutable List

Models should be using an immutable list or List<T> this is to prevent others from mutating the list from the model.

When saving to the database old object should be deleted instead of updating/modifying the current saved object this is to prevent wrong data to be updated on the objects.

Add interface for APIs

Let's add an interface for the whole set of Apis such as the transiApi where it will inherit from an interface that consists of retrofit and composable instance and some helper method(extensions).

Private constructor for Helper methods

If we are making a helper class that only used a static/object method then it would be better to just let its constructor as private instead of it being public, since we can only initialize it within its attached object.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.