Skip to content

Latest commit

 

History

History
210 lines (158 loc) · 9.09 KB

README.md

File metadata and controls

210 lines (158 loc) · 9.09 KB

AbasteceAi

Android Kotlin

AbasteceAi

💬 About

This project was developed to help people decide which fuel to use in their vehicles, based on the current price and the efficiency of each fuel.

💻 Technologies & Techniques

🚀 Features

  • Compare fuel by efficiency with the current price
  • Save comparison in history
  • Save comparison price
  • Predefined fuels

📍 Roadmap

  • History of fuel comparisons
  • Register new fuel
  • News about fuels
  • Customization (theme, language)
  • Register new vehicle
  • Backup/Restore data
  • Share fuel comparison

🏗️ Architecture

Wireframe flow

wireframe flow image

Use Case Diagram

use case diagram image

📦 Modules by feature & by layer

flowchart TD
    subgraph clusterUI[UI]
        UI_ONBOARDING(fa:fa-passport :ui:onboarding):::ui
        UI_COMPARATOR(fa:fa-code-compare :ui:comparator):::ui
        UI_HISTORIES(fa:fa-list :ui:histories*):::ui
        UI_FUELS(fa:fa-car :ui:fuels*):::ui
        UI_NEWS(fa:fa-newspaper :ui:news*):::ui
        UI_SETTINGS(fa:fa-gear :ui:settings*):::ui
    end
    
    subgraph clusterDOMAIN[DOMAIN]
        UI_COMPARATOR -->  DOMAIN_COMPARATOR[fa:fa-code-compare :domain:comparator]:::domain
        UI_COMPARATOR -.-> DOMAIN_FUELS[fa:fa-car :domain:fuels]:::domain
        UI_COMPARATOR -.-> DOMAIN_HISTORIES[fa:fa-list :domain:histories]:::domain
        UI_FUELS      -->  DOMAIN_FUELS
        UI_HISTORIES  -->  DOMAIN_HISTORIES
        UI_NEWS       -->  DOMAIN_NEWS[fa:fa-newspaper :domain:news*]:::domain
        UI_SETTINGS   -->  DOMAIN_SETTINGS[fa:fa-gear :domain:settings*]:::domain
    end
    
    subgraph clusterDATA[DATA]
        DOMAIN_HISTORIES --> DATA_HISTORIES[fa:fa-list :data:histories]
        DOMAIN_FUELS     --> DATA_FUELS[fa:fa-car :data:fuels]
    end

    subgraph clusterLIBS[LIBS]
        DATA_HISTORIES:::data --> LIB_DATABASE[fa:fa-database :libraries:database]
        DATA_FUELS:::data     --> LIB_DATABASE
    end
    
    LIB_DATABASE --> id1[(fa:fa-database Room Database)]
    
    classDef ui fill:#00e489,color:#000
    classDef domain fill:#fe8a65,color:#000
    classDef data fill:#0b99f3,color:#000
Loading

ViewIntent

graph TD
    Activity/Fragment --> |"dispatchViewIntent(ViewIntent)"| ViewModel
    ViewModel -.-> |"setState(State)"| Activity/Fragment
    ViewModel -.-> |"sendAction(Action)"| Activity/Fragment
Loading

📜 Requirements

💿 Installation

git clone [email protected]:filipe1309/AbasteceAi.git
cd AbasteceAi

🏃 Running

./gradlew run

⚙️ Gradle Tasks

Generate project dependency graph

 ./gradlew projectDependencyGraph

Then, open Project module dependency graph created at /build/reports/dependency-graph/project.dot.png

🔗 References

License

MIT

About Me


Done with  :heart:  by filipe1309 🖖


@ Generated with ShubcoGen Template™