cem256 / cryptocurrency_tracker

Sample cryptocurrency tracking app that demonstrates clean architecture, generic caching, lazy loading, debouncing, throttling, and adaptive theming.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Cryptocurrency Tracker

Sample cryptocurrency tracking app that demonstrates clean architecture, generic caching, lazy loading, debouncing, throttling, and adaptive theming.

Features

  • List Top Cryptocurrencies: The app displays a list of the top cryptocurrencies in the market. The list is loaded lazily to optimize performance and reduce initial loading times. Additionally, throttling is implemented to minimize consecutive API calls.
  • View Details: View detailed information about each cryptocurrency.
  • Favorite Tracking: Track favorite cryptocurrencies and store them locally using HiveDB.
  • Search: Search for specific cryptocurrencies. Debouncing technique is used to prevent unnecessary API calls.
  • Adaptive Theme: The app automatically adjusts its theme based on the device's settings. It also remembers the user's theme preference.

Preview

Preview Market Favorites Details
Search Onboarding1 Onboarding2 Onboarding3

Built With

Packages

Run this project

Clone this repository
git clone https://github.com/cem256/cryptocurrency_tracker
Go to the project directory
cd cryptocurrency_tracker
Get all the packages
flutter pub get
Execute these scripts in the terminal
sh scripst/build_runner.sh
sh scripts/localization.sh
Run the project

About

Sample cryptocurrency tracking app that demonstrates clean architecture, generic caching, lazy loading, debouncing, throttling, and adaptive theming.

License:MIT License


Languages

Language:Dart 96.3%Language:Ruby 1.0%Language:Objective-C 0.8%Language:Shell 0.7%Language:Java 0.6%Language:Swift 0.5%Language:Kotlin 0.1%