{"id":13774539,"url":"https://github.com/VladimirWrites/BLTaxi","last_synced_at":"2025-05-11T06:33:19.861Z","repository":{"id":47506776,"uuid":"192170187","full_name":"VladimirWrites/BLTaxi","owner":"VladimirWrites","description":"🚕  BL Taxi is a simple app for calling a taxi in the city Banja Luka built using modern Android development tools","archived":false,"fork":false,"pushed_at":"2024-09-07T10:26:55.000Z","size":1508,"stargazers_count":352,"open_issues_count":0,"forks_count":39,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-11-17T09:39:26.408Z","etag":null,"topics":["android","android-app","android-architecture","android-development","kotlin","material","mvvm-android","mvvm-databing"],"latest_commit_sha":null,"homepage":"https://vladimirj.dev/bl-taxi/","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/VladimirWrites.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-06-16T08:58:12.000Z","updated_at":"2024-11-13T15:08:41.000Z","dependencies_parsed_at":"2024-01-17T13:13:14.456Z","dependency_job_id":"351f2ac6-201d-4fdf-8a97-9233d2f2a8cc","html_url":"https://github.com/VladimirWrites/BLTaxi","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VladimirWrites%2FBLTaxi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VladimirWrites%2FBLTaxi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VladimirWrites%2FBLTaxi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/VladimirWrites%2FBLTaxi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/VladimirWrites","download_url":"https://codeload.github.com/VladimirWrites/BLTaxi/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253528414,"owners_count":21922623,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","android-app","android-architecture","android-development","kotlin","material","mvvm-android","mvvm-databing"],"created_at":"2024-08-03T17:01:27.751Z","updated_at":"2025-05-11T06:33:17.986Z","avatar_url":"https://github.com/VladimirWrites.png","language":"Kotlin","funding_links":[],"categories":[":art: Pattern"],"sub_categories":["MVVM"],"readme":"\u003cdiv align=\"center\"\u003e\n    \u003cimg alt=\"Icon\" src=\"remote_data/assets/icon.png\" width=\"200\" /\u003e\n\u003c/div\u003e\n\u003ch3 align=\"center\"\u003e\n    The fastest way to call a taxi in Banja Luka\n\u003c/h3\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca target=\"_blank\" href=\"https://github.com/VladimirWrites/BLTaxi/blob/master/LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/badge/License-Apache%202.0-blue.svg\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://android-arsenal.com/api?level=21\"\u003e\u003cimg alt=\"API\" src=\"https://img.shields.io/badge/API-21%2B-brightgreen.svg?style=flat\"/\u003e\u003c/a\u003e\n    \u003ca target=\"_blank\" href=\"https://app.bitrise.io/app/b8b8722ee9645ad8\"\u003e\u003cimg src=\"https://app.bitrise.io/app/b8b8722ee9645ad8/status.svg?token=7MWRGcMRCjH4Ivzp9xeBCw\"\u003e\u003c/a\u003e\n    \u003ca target=\"_blank\" href=\"https://androidweekly.net/issues/issue-410\"\u003e\u003cimg src=\"https://androidweekly.net/issues/issue-410/badge\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n-------\n\n\u003cp align=\"center\"\u003e\n    \u003cimg  alt=\"banner\" src=\"remote_data/assets/banner.png\"\u003e\n\u003c/p\u003e\n\nProject characteristics 🚀\n-------\nThis project brings to the table set of best practices, tools, and solutions:\n\n* 100% [Kotlin](https://kotlinlang.org/)\n* Modern architecture (Clean Architecture, Multi-Module setup, Model-View-ViewModel)\n* [Android Jetpack](https://developer.android.com/jetpack)\n* Single-activity architecture, using the [Navigation component](https://developer.android.com/guide/navigation/navigation-getting-started)\n* CI pipeline ([Bitrise](https://app.bitrise.io/app/b8b8722ee9645ad8#/builds))\n* Dependency Injection\n* Material Design (Dark theme)\n\nBuilt With 🛠\n-------\n- [Kotlin](https://kotlinlang.org/) - First class and official programming language for Android development.\n- [Coroutines](https://kotlinlang.org/docs/reference/coroutines-overview.html) - Kotlin's way of way of writing asynchronous, non-blocking code\n- [Android Architecture Components](https://developer.android.com/topic/libraries/architecture) - Collection of libraries that help you design robust, testable, and maintainable apps\n  - [LiveData](https://developer.android.com/topic/libraries/architecture/livedata) - Data objects that notify views when the underlying data changes\n  - [ViewModel](https://developer.android.com/topic/libraries/architecture/viewmodel) - Stores UI-related data that isn't destroyed on UI changes\n  - [DataBinding](https://developer.android.com/topic/libraries/data-binding) - Allows you to bind UI components in your layouts to data sources in your app using a declarative format rather than programmatically\n  - [WorkManager](https://developer.android.com/topic/libraries/architecture/workmanager) - Makes it easy to schedule deferrable, asynchronous tasks that are expected to run even if the app exits or device restarts\n  - [Hilt](https://developer.android.com/training/dependency-injection/hilt-android) - Dependency Injection library for Android that reduces the boilerplate of doing manual dependency injection in your project\n  - [Room](https://developer.android.com/topic/libraries/architecture/room) - SQLite object mapping library\n- [Material Components for Android](https://github.com/material-components/material-components-android) - Modular and customizable Material Design UI components for Android\n- [Navigation Component](https://developer.android.com/guide/navigation) - Helps you implement navigation, from simple button clicks to more complex patterns, such as app bars and the navigation drawer\n- [Retrofit](https://square.github.io/retrofit/) - A type-safe HTTP client for Android and Java\n- [Google Analytics](https://firebase.google.com/docs/analytics) - Free app measurement solution that provides insight on app usage and user engagement\n- [Firebase Crashlytics](https://firebase.google.com/docs/analytics) - Lightweight, realtime crash reporter that helps you track, prioritize, and fix stability issues that erode your app quality\n\nTested With 🔬\n-------\n- [JUnit 4](https://junit.org/junit4/) - Simple framework to write repeatable tests\n- [mockito](https://github.com/mockito/mockito) - Most popular Mocking framework for unit tests\n- [mockito-kotlin](https://github.com/nhaarman/mockito-kotlin) - Provides helper functions to work with Mockito in Kotlin\n- [Truth](https://github.com/google/truth) - Makes your test assertions and failure messages more readable\n- [Robolectric](https://github.com/robolectric/robolectric) - Runs tests in a simulated Android environment inside a JVM without the overhead of an emulator\n\nDownload\n-------\n\u003ca href='https://play.google.com/store/apps/details?id=com.vlad1m1r.bltaxi'\u003e\n    \u003cimg alt='Get it on Google Play' src='http://i.imgur.com/tka3Exw.png'/\u003e\n\u003c/a\u003e\n\nFind this repository useful? :heart:\n-------\nSupport it by joining __[stargazers](https://github.com/VladimirWrites/BLTaxi/stargazers)__ for this repository. :star: \u003cbr\u003e\nAnd __[follow](https://github.com/VladimirWrites)__ me for my next creations! 🤩\n\nLicense\n-------\n\n     Copyright 2020 Vladimir Jovanović\n\n     Licensed under the Apache License, Version 2.0 (the \"License\");\n     you may not use this file except in compliance with the License.\n     You may obtain a copy of the License at\n\n         http://www.apache.org/licenses/LICENSE-2.0\n\n     Unless required by applicable law or agreed to in writing, software\n     distributed under the License is distributed on an \"AS IS\" BASIS,\n     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n     See the License for the specific language governing permissions and\n     limitations under the License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FVladimirWrites%2FBLTaxi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FVladimirWrites%2FBLTaxi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FVladimirWrites%2FBLTaxi/lists"}