Skip to content

Commit

Permalink
Merge pull request #69 from tankste/feature/translation
Browse files Browse the repository at this point in the history
🌟 Add translations
  • Loading branch information
Fabi755 authored Mar 28, 2024
2 parents 92fa239 + eaaf4d6 commit 38c9475
Show file tree
Hide file tree
Showing 62 changed files with 2,686 additions and 1,399 deletions.
78 changes: 40 additions & 38 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,65 +3,67 @@ CHANGELOG

| Symbol | Meaning |
|--------|---------------------|
| | New function |
| 🛠 | Improvement changes |
| 🌟 | New function |
| 🧹 | Improvement changes |
| 🐞 | Bug fixing |

## Upcoming version ##

- 🌟 Add translations

## 2.0.1 (12.02.204) ##

* 🛠 Add error logging
* Add logging framework ([#66](https://github.com/tankste/app/issues/66))
* 🐞 Fix initial state hangup ([#64](https://github.com/tankste/app/issues/64))
- 🧹 Add error logging
- 🌟 Add logging framework ([#66](https://github.com/tankste/app/issues/66))
- 🐞 Fix initial state hangup ([#64](https://github.com/tankste/app/issues/64))

## 2.0.0 (29.01.2024) ##

* 🛠 Add pull-to-refresh action to station details
* Show data source origin ([#55](https://github.com/tankste/app/issues/55))
* Add report wrong data form ([#54](https://github.com/tankste/app/issues/54))
* Add date of last price change to details ([#2](https://github.com/tankste/app/issues/2))
* 🛠 No longer enforce location permission ([#6](https://github.com/tankste/app/issues/6))
* Add settings option for changing the map provider ([#51](https://github.com/tankste/app/issues/51))
* Add sponsor page to settings ([#56](https://github.com/tankste/app/issues/49))
* 🛠 Use tankste! backend and remove Tankerkoenig usage ([#49](https://github.com/tankste/app/issues/49))
* 🛠 Replace OpenStreetMap by MapLibre ([#52](https://github.com/tankste/app/issues/52))
* 🛠 Improve code base ([#21](https://github.com/tankste/app/issues/21))
* Move app to own module folder
* Remove unused flutter generated files
* Improve module folder structures
* Migrate prototype map code to own widget with BLoC pattern
- 🧹 Add pull-to-refresh action to station details
- 🌟 Show data source origin ([#55](https://github.com/tankste/app/issues/55))
- 🌟 Add report wrong data form ([#54](https://github.com/tankste/app/issues/54))
- 🌟 Add date of last price change to details ([#2](https://github.com/tankste/app/issues/2))
- 🧹 No longer enforce location permission ([#6](https://github.com/tankste/app/issues/6))
- 🌟 Add settings option for changing the map provider ([#51](https://github.com/tankste/app/issues/51))
- 🌟 Add sponsor page to settings ([#56](https://github.com/tankste/app/issues/49))
- 🧹 Use tankste! backend and remove Tankerkoenig usage ([#49](https://github.com/tankste/app/issues/49))
- 🧹 Replace OpenStreetMap by MapLibre ([#52](https://github.com/tankste/app/issues/52))
- 🧹 Improve code base ([#21](https://github.com/tankste/app/issues/21))
- Move app to own module folder
- Remove unused flutter generated files
- Improve module folder structures
- Migrate prototype map code to own widget with BLoC pattern

## 1.2.2 (2022-12-13) ##

* 🐞 Integer coordinates were not parsed correctly ([#47](https://github.com/tankste/app/issues/44))
- 🐞 Integer coordinates were not parsed correctly ([#47](https://github.com/tankste/app/issues/44))

## 1.2.1 (2022-11-21) ##

* 🐞 Integer prices were not parsed correctly ([#44](https://github.com/tankste/app/issues/44))
- 🐞 Integer prices were not parsed correctly ([#44](https://github.com/tankste/app/issues/44))

## 1.2.0 (2022-11-13) ##

* 🐞 Refresh map by coming back to foreground ([#5](https://github.com/tankste/app/issues/5))
* 🐞 Wrong marker resolutions ([#25](https://github.com/tankste/app/issues/25))
* 🛠 Highlight searched gas price on page details
* 🛠 Show progress & errors ([#16](https://github.com/tankste/app/issues/16))
* Navigation app selection in settings ([#27](https://github.com/tankste/app/issues/27))
* Developer settings ([#30](https://github.com/tankste/app/issues/30))
* Apple Maps for iOS ([#4](https://github.com/tankste/app/issues/4))
* Open Street Map for Android ([#7](https://github.com/tankste/app/issues/7))
- 🐞 Refresh map by coming back to foreground ([#5](https://github.com/tankste/app/issues/5))
- 🐞 Wrong marker resolutions ([#25](https://github.com/tankste/app/issues/25))
- 🧹 Highlight searched gas price on page details
- 🧹 Show progress & errors ([#16](https://github.com/tankste/app/issues/16))
- 🌟 Navigation app selection in settings ([#27](https://github.com/tankste/app/issues/27))
- 🌟 Developer settings ([#30](https://github.com/tankste/app/issues/30))
- 🌟 Apple Maps for iOS ([#4](https://github.com/tankste/app/issues/4))
- 🌟 Open Street Map for Android ([#7](https://github.com/tankste/app/issues/7))

## 1.1.0 (2022-07-12) ##

* Details station page
* Station address
* Open times
* All gas prices
* Route preview
* Open navigation app for routing
- 🌟 Details station page
- 🌟 Station address
- 🌟 Open times
- 🌟 All gas prices
- 🌟 Route preview
- 🌟 Open navigation app for routing

## 1.0.0 (2022-07-07) ##

* Map with green/orange/red station markers
* Filter for gas types (E5, E10, Diesel)
* Settings page
- 🌟 Map with green/orange/red station markers
- 🌟 Filter for gas types (E5, E10, Diesel)
- 🌟 Settings page
19 changes: 13 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,26 @@
tankste! - App
==============

[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0) [![Translations](https://translation.liveyourproject.com/widget/tankste/app/svg-badge.svg)](https://translation.liveyourproject.com/projects/tankste/app/)

Your open source gas station mobile app. We love the minimalistic of the Bertha app from Mercedes
and want to keep them alive! So we create this project.
Your open source fuel price app. The mission is to give you one app that you can use in all countries.

[<img src="https://tankste.app/assets/playstore.png" height="60" alt="Play Store">](https://play.google.com/store/apps/details?id=app.tankste)
[<img src="https://tankste.app/assets/appstore.png" height="60" alt="App Store">](https://apps.apple.com/de/app/tankste-deine-tankpreis-app/id1633457177)

<img src="https://tankste.app/assets/images/screenshots/de/ios/screenshot-1.jpeg" height="360" alt="iOS Screenshot 1"> <img src="https://tankste.app/assets/images/screenshots/de/ios/screenshot-2.jpeg" height="360" alt="iOS Screenshot 2"> <img src="https://tankste.app/assets/images/screenshots/de/ios/screenshot-3.jpeg" height="360" alt="iOS Screenshot 3">

## Availability ##

| Flag | Country |
| ----- | ------- |
| 🇩🇪 | Germany |

## Data sources ##

The gas station data are hosted by our own [backend](https://github.com/tankste/backend). The backend
gets the data from multiple data sources. We listing them on our [website](https://tankste.app/datenquellen).

Previously we used the [Tankerkönig](https://creativecommons.tankerkoenig.de/) API. Thanks a lot for your API,
without your offer this project will not exists!

## Get started ##

### Configuration ###
Expand Down Expand Up @@ -52,6 +54,11 @@ The tankste! project is based on a prototype code. The quality of the code has i
but there is still a lot to do. We are on the right track. So please be patient or help us
to improve the code.

## Special thanks ##

- [Tankerkönig](https://creativecommons.tankerkoenig.de/) that provides a free API for German gas stations. I would never have started the project without this offer.
- Tim Brückner from [Teuer Tanken](https://teuer-tanken.app/) for your help to implement the MTS-K API.

## License ##

> [!IMPORTANT]
Expand Down
57 changes: 28 additions & 29 deletions app/android/app/build.gradle
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
plugins {
id "com.android.application"
id "kotlin-android"
id "dev.flutter.flutter-gradle-plugin"
}

def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
Expand All @@ -6,10 +12,6 @@ if (localPropertiesFile.exists()) {
}
}

def flutterRoot = localProperties.getProperty('flutter.sdk')
if (flutterRoot == null) {
throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.")
}

def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
Expand All @@ -21,35 +23,31 @@ if (flutterVersionName == null) {
flutterVersionName = '0.0.0'
}

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle"

android {
namespace 'app.tankste'
compileSdkVersion 33
ndkVersion flutter.ndkVersion

compileSdkVersion 34
ndkVersion '25.1.8937393'

compileOptions {
sourceCompatibility JavaVersion.VERSION_11
targetCompatibility JavaVersion.VERSION_11
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}

kotlinOptions {
jvmTarget = '11'
jvmTarget = '1.8'
}

sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}

defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "app.tankste"
// You can update the following values to match your application needs.
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration.

minSdkVersion 21
targetSdkVersion 33
targetSdkVersion 34

versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
}
Expand All @@ -71,16 +69,17 @@ flutter {
}

dependencies {
// implementation project(':car')
implementation project(':station')
implementation project(':navigation')
implementation project(':core')

implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"

// Koin - https://github.com/InsertKoinIO/koin
var koin_version = '3.2.2'
implementation "io.insert-koin:koin-core:$koin_version"
implementation "io.insert-koin:koin-android:$koin_version"
implementation "io.insert-koin:koin-android-compat:$koin_version"
//// implementation project(':car')
// implementation project(':station')
// implementation project(':navigation')
// implementation project(':core')
//
//// implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.9.22"
//
// // Koin - https://github.com/InsertKoinIO/koin
// var koin_version = '3.2.2'
// implementation "io.insert-koin:koin-core:$koin_version"
// implementation "io.insert-koin:koin-android:$koin_version"
// implementation "io.insert-koin:koin-android-compat:$koin_version"

}
20 changes: 7 additions & 13 deletions app/android/app/src/main/kotlin/app/tankste/TanksteApplication.kt
Original file line number Diff line number Diff line change
@@ -1,12 +1,6 @@
package app.tankste

import android.app.Application
//import app.tankste.car.di.carModule
import app.tankste.navigation.di.navigationModule
import app.tankste.station.di.stationModule
import org.koin.android.ext.koin.androidContext
import org.koin.android.ext.koin.androidLogger
import org.koin.core.context.startKoin

class TanksteApplication: Application() {

Expand All @@ -17,12 +11,12 @@ class TanksteApplication: Application() {
}

private fun initKoin() {
startKoin{
androidLogger()
androidContext(this@TanksteApplication)
// modules(carModule)
modules(stationModule)
modules(navigationModule)
}
// startKoin{
// androidLogger()
// androidContext(this@TanksteApplication)
//// modules(carModule)
// modules(stationModule)
// modules(navigationModule)
// }X
}
}
13 changes: 0 additions & 13 deletions app/android/build.gradle
Original file line number Diff line number Diff line change
@@ -1,16 +1,3 @@
buildscript {
ext.kotlin_version = '1.6.10'
repositories {
google()
mavenCentral()
}

dependencies {
classpath 'com.android.tools.build:gradle:7.3.1'
classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.10'
}
}

allprojects {
repositories {
google()
Expand Down
2 changes: 1 addition & 1 deletion app/android/gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-all.zip
38 changes: 26 additions & 12 deletions app/android/settings.gradle
Original file line number Diff line number Diff line change
@@ -1,15 +1,29 @@
include ':app'
pluginManagement {
def flutterSdkPath = {
def properties = new Properties()
file("local.properties").withInputStream { properties.load(it) }
def flutterSdkPath = properties.getProperty("flutter.sdk")
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
return flutterSdkPath
}()

includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")

def localPropertiesFile = new File(rootProject.projectDir, "local.properties")
def properties = new Properties()
repositories {
google()
mavenCentral()
gradlePluginPortal()
}
}

assert localPropertiesFile.exists()
localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) }
plugins {
id "dev.flutter.flutter-plugin-loader" version "1.0.0"
id "com.android.application" version "8.3.0" apply false
id "org.jetbrains.kotlin.android" version "1.8.22" apply false
}

def flutterSdkPath = properties.getProperty("flutter.sdk")
assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle"
include ':car'
include ':station'
include ':navigation'
include ':core'
include ':app'
//include ':car'
//include ':station'
//include ':navigation'
//include ':core'
Loading

0 comments on commit 38c9475

Please sign in to comment.