Modern crypto portfolio & market explorer. Built with @Flutter

Overview

Trace

Modern Crypto Portfolio & Market Explorer. Built with Flutter.
Open Source. Lightweight. Clean. Straightforward. Fast. Powerful.

Download for Android on Google Play. Join Android Beta!
Building for iOS works just fine, but I'm not giving Apple $99 to put this on the AppStore right now.

Get it on Google Play

Features

πŸ’° Portfolio Overview
🌎 Aggregate Market Explorer
πŸ“Š Detailed Aggregate/Exchange Specific Market Data for every Coin
πŸ“ˆ Portfolio Timeline
πŸ“… Transaction History
⭕️ Portfolio Breakdown
πŸŒ“ Automatic, Light, Dark & Dark OLED Theme Options
⚑ 7.3MB - Fast & Lightweight

πŸ“Ή Full Video

Screenshots

πŸ’° Portfolio

  • Home screen displaying portfolio value, 7D Change, 24h Change, and value and amount of each coin
  • Sort coins by name, holdings, and 24h change percent
  • Add transactions using bottom right button

🌎 Aggregate Markets

  • Swipe to second tab displaying aggregate market stats of every cryptocurrency
  • Search by any coin's symbol or name
  • Sort coins by name, market cap, 24h trade volume and 24h change percent

πŸ“ˆ Portfolio Timeline

  • Navigate to timeline through drawer menu or swipe from breakdown
  • Tap clock to control timeline period from 1 day to all
  • Includes portfolio value high/low, change percent and change amount over period
  • Scroll down to view all transaction history

⭕️ Portfolio Breakdown

  • Navigate to breakdown through drawer menu or swipe from timeline
  • Pie chart breakdown of portfolio
  • Displays total portfolio value, net percent, net amount and total cost
  • Lists each coin as percent of total portfolio

πŸ“Š Detailed Market Data

  • Tap on any coin to view detailed market data
  • Tap clock to control candlestick data period from 1 hour to 1 year
  • Includes price high/low and change percent over period
  • Tap arrows to control candlestick width from 1 minute to 14 days
  • Swipe to view list of all exchanges for specific coin
  • Includes 24h trade volume along with price and 24h change
  • Sort by exchange name, 24h volume, price and 24h change
  • Tap on any exchange to get even more detailed data

β˜€οΈ Light Theme

πŸŒ™ OLED Dark Theme

βš™οΈ Settings

  • Navigate to settings through drawer menu
  • Theme Toggles: automatic, light, dark and dark OLED
  • Abbreviate Numbers switch
  • Export/Import portfolio JSON to/from text
  • Clear Portfolio

Building Source

  • Set your working directory to the root of your git clone
  • Make sure your Android SDK and Flutter are up to date (flutter upgrade)
  • Execute flutter run
Issues
  • Can't enter data when adding a new transaction

    Can't enter data when adding a new transaction

    I'm trying to add a new transaction, but I cannot even input a symbol. Tapping on the text field will place the cursor there, so it clearly recognizes that I've tapped there. However, it never opens the keyboard to let me type a symbol (or maybe it's supposed to open a modal dialog that presents me with a list of options?). Similarly, I cannot enter data into Quantity, Price, or Notes fields. Tapping on Exchange will allow me to select "Aggregated" but that seems to be the only control that responds properly.

    Pixel 2 on the latest Android 9 Trace version 1.0.1 (2)

    screenshot_20180810-110332

    opened by bdmayes 7
  • 'flutter pub get' doesn't work

    'flutter pub get' doesn't work

    Hello.

    I work at the Nevercode. We are a Continuous Integration platform for mobile applications, and currently working on the flutter integration. I used your app for some tests, but faced an issue with flutter pub get: it doesn't get any dependencies from the pubspec.yaml. Have you faced this issue on your local device?

    Best regards Jan.

    opened by janmoppel 4
  • Error at the end of the list

    Error at the end of the list

    when i scroll all the way down you will find this error Device: Huawei-mate-10-light Android: 8.0.0

    img_20180810_083433

    opened by a-atalla 3
  • Can't add a transaction

    Can't add a transaction

    check floating action button is gray when I fill it out on 5.1.1

    opened by lukepighetti 3
  • Compile errors

    Compile errors

    When I try to build in Android studio I am getting the following compilation errors:

    10:48:09.270 1 info flutter.tools Launching lib/main.dart on Android SDK built for x86 in debug mode...
    10:48:09.305 2 info flutter.tools Initializing gradle...
    10:48:11.889 3 info flutter.tools Resolving dependencies...
    10:48:17.888 4 info flutter.tools Running 'gradlew assembleDebug'...
    10:48:30.825 5 info flutter.tools compiler message: lib/tabs.dart:312:47: Error: Getter not found: 'TextCapitalization'.
    10:48:30.825 6 info flutter.tools compiler message:                           textCapitalization: TextCapitalization.none,
    10:48:30.825 7 info flutter.tools compiler message:                                               ^^^^^^^^^^^^^^^^^^
    10:48:30.825 8 info flutter.tools compiler message: lib/tabs.dart:312:27: Error: No named parameter with the name 'textCapitalization'.
    10:48:30.825 9 info flutter.tools compiler message:                           textCapitalization: TextCapitalization.none,
    10:48:30.825 10 info flutter.tools compiler message:                           ^^^^^^^^^^^^^^^^^^
    10:48:30.825 11 info flutter.tools compiler message: file:///home/anton/Documents/software/flutter/flutter/packages/flutter/lib/src/material/text_field.dart:99:9: Context: Found this candidate, but the arguments don't match.
    10:48:30.825 12 info flutter.tools compiler message:   const TextField({
    10:48:30.825 13 info flutter.tools compiler message:         ^
    10:48:30.825 14 info flutter.tools compiler message: lib/settings_page.dart:344:23: Error: No named parameter with the name 'focusedBorder'.
    10:48:30.826 15 info flutter.tools compiler message:                       focusedBorder: new OutlineInputBorder(
    10:48:30.826 16 info flutter.tools compiler message:                       ^^^^^^^^^^^^^
    10:48:30.829 17 info flutter.tools compiler message: file:///home/anton/Documents/software/flutter/flutter/packages/flutter/lib/src/material/input_decorator.dart:1747:9: Context: Found this candidate, but the arguments don't match.
    10:48:30.829 18 info flutter.tools compiler message:   const InputDecoration({
    10:48:30.829 19 info flutter.tools compiler message:         ^
    10:48:32.549 20 info flutter.tools compiler message: lib/portfolio/transaction_sheet.dart:440:49: Error: Getter not found: 'TextCapitalization'.
    10:48:32.549 21 info flutter.tools compiler message:                             textCapitalization: TextCapitalization.characters,
    10:48:32.549 22 info flutter.tools compiler message:                                                 ^^^^^^^^^^^^^^^^^^
    10:48:32.550 23 info flutter.tools compiler message: lib/portfolio/transaction_sheet.dart:440:29: Error: No named parameter with the name 'textCapitalization'.
    10:48:32.550 24 info flutter.tools compiler message:                             textCapitalization: TextCapitalization.characters,
    10:48:32.550 25 info flutter.tools compiler message:                             ^^^^^^^^^^^^^^^^^^
    10:48:32.550 26 info flutter.tools compiler message: file:///home/anton/Documents/software/flutter/flutter/packages/flutter/lib/src/material/text_field.dart:99:9: Context: Found this candidate, but the arguments don't match.
    10:48:32.550 27 info flutter.tools compiler message:   const TextField({
    10:48:32.550 28 info flutter.tools compiler message:         ^
    10:48:32.550 29 info flutter.tools compiler message: lib/portfolio/transaction_sheet.dart:554:49: Error: Getter not found: 'TextCapitalization'.
    10:48:32.550 30 info flutter.tools compiler message:                             textCapitalization: TextCapitalization.none,
    10:48:32.550 31 info flutter.tools compiler message:                                                 ^^^^^^^^^^^^^^^^^^
    10:48:32.562 32 info flutter.tools compiler message: lib/portfolio/transaction_sheet.dart:554:29: Error: No named parameter with the name 'textCapitalization'.
    10:48:32.562 33 info flutter.tools compiler message:                             textCapitalization: TextCapitalization.none,
    10:48:32.562 34 info flutter.tools compiler message:                             ^^^^^^^^^^^^^^^^^^
    10:48:32.563 35 info flutter.tools compiler message: file:///home/anton/Documents/software/flutter/flutter/packages/flutter/lib/src/material/text_field.dart:99:9: Context: Found this candidate, but the arguments don't match.
    10:48:32.563 36 info flutter.tools compiler message:   const TextField({
    10:48:32.563 37 info flutter.tools compiler message:         ^
    10:48:36.792 38 info flutter.tools Compiler failed on /home/anton/git/trace/lib/main.dart
    10:48:36.844 39 info flutter.tools 
    10:48:36.845 40 info flutter.tools FAILURE: Build failed with an exception.
    10:48:36.845 41 info flutter.tools 
    10:48:36.845 42 info flutter.tools * Where:
    10:48:36.845 43 info flutter.tools Script '/home/anton/Documents/software/flutter/flutter/packages/flutter_tools/gradle/flutter.gradle' line: 435
    10:48:36.845 44 info flutter.tools 
    10:48:36.851 45 info flutter.tools * What went wrong:
    10:48:36.851 46 info flutter.tools Execution failed for task ':app:flutterBuildDebug'.
    10:48:36.851 47 info flutter.tools > Process 'command '/home/anton/Documents/software/flutter/flutter/bin/flutter'' finished with non-zero exit value 1
    10:48:36.851 48 info flutter.tools 
    10:48:36.851 49 info flutter.tools * Try:
    10:48:36.851 50 info flutter.tools Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
    10:48:36.851 51 info flutter.tools 
    10:48:36.851 52 info flutter.tools * Get more help at https://help.gradle.org
    10:48:36.851 53 info flutter.tools 
    10:48:36.851 54 info flutter.tools BUILD FAILED in 18s
    
    opened by magick93 3
  • Support Dart 2.0

    Support Dart 2.0

    opened by mtcliatt 3
  • key.properties

    key.properties

    Hello

    When I try build I am getting the following error:

    trace/android/key.properties (No such file or directory)

    Apologies if this is an obvious issue. Can you tell me what content should be in this file? Is there a procedure for generating this, or do I write it by hand?

    Thanks

    opened by magick93 2
  • FileSystemException: Getting current working directory failed, path = '' (OS Error: Too many open files, errno = 24)

    FileSystemException: Getting current working directory failed, path = '' (OS Error: Too many open files, errno = 24)

    weibodeiMac:trace weibo$ flutter run
    Launching lib/main.dart on iPhone X in debug mode...
    Unhandled exception:
    FileSystemException: Getting current working directory failed, path = '' (OS Error: Too many open files, errno = 24)
    #0      _uriBaseClosure (dart:io-patch/directory_patch.dart:61)
    #1      Uri.base (dart:core-patch/dart:core/uri_patch.dart:20)
    #2      current (package:path/path.dart:82)
    #3      new Context (package:path/src/context.dart:31)
    #4      LocalFileSystem.path (package:file/src/backends/local/local_file_system.dart:26)
    #5      _ZipToolBuilder.createZip.<anonymous closure>.<anonymous closure> (package:flutter_tools/src/zip.dart:87)
    #6      _rootRunUnary (dart:async/zone.dart:1134)
    #7      _CustomZone.runUnary (dart:async/zone.dart:1031)
    #8      _FutureListener.handleValue (dart:async/future_impl.dart:129)
    #9      Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:633)
    #10     Future._propagateToListeners (dart:async/future_impl.dart:662)
    #11     Future._complete (dart:async/future_impl.dart:467)
    #12     _SyncCompleter.complete (dart:async/future_impl.dart:51)
    #13     _completeOnAsyncReturn (dart:async-patch/dart:async/async_patch.dart:292)
    #14     DevFSByteContent.contentsAsBytes (package:flutter_tools/src/devfs.dart:166)
    #15     new Future.microtask.<anonymous closure> (dart:async/future.dart:200)
    #16     _rootRun (dart:async/zone.dart:1126)
    #17     _CustomZone.run (dart:async/zone.dart:1023)
    #18     _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:949)
    #19     _microtaskLoop (dart:async/schedule_microtask.dart:41)
    #20     _startMicrotaskLoop (dart:async/schedule_microtask.dart:50)
    #21     _runPendingImmediateCallback (dart:isolate-patch/dart:isolate/isolate_patch.dart:113)
    #22     _RawReceivePortImpl._handleMessage (dart:isolate-patch/dart:isolate/isolate_patch.dart:166)
    
    opened by arden 2
  • Failing to build

    Failing to build

    Launching lib/main.dart on iPhone 11 Pro Max in debug mode... Warning: Missing build name (CFBundleShortVersionString). Warning: Missing build number (CFBundleVersion). Action Required: You must set a build name and number in the pubspec.yaml file version field before submitting to the App Store. Warning: Podfile is out of date This can cause a mismatched version of Flutter to be embedded in your app, which may result in App Store submission rejection or crashes. If you have local Podfile edits you would like to keep, see https://github.com/flutter/flutter/issues/24641 for instructions. To regenerate the Podfile, run: rm ios/Podfile

    Running Xcode build... Xcode build done. 15.3s [VERBOSE-2:ui_dart_state.cc(157)] Unhandled Exception: ServicesBinding.defaultBinaryMessenger was accessed before the binding was initialized. If you're running an application and need to access the binary messenger before runApp() has been called (for example, during plugin initialization), then you need to explicitly call the WidgetsFlutterBinding.ensureInitialized() first. If you're running a test, you can call the TestWidgetsFlutterBinding.ensureInitialized() as the first line in your test's main() method to initialize the binding. #0 defaultBinaryMessenger. (package:flutter/src/services/binary_messenger.dart:76:7) #1 defaultBinaryMessenger (package:flutter/src/services/binary_messenger.dart:89:4) #2 MethodChannel.binaryMessenger (package:flutter/src/services/platform_channel.dart:140:62) #3 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:314:35) #4 getApplicationDocumentsDirectory (package:path_provider/path_provi<…> Syncing files to device iPhone 11 Pro Max...

    opened by dgurudot 2
  • Fixed widget overflows and reduce Market Data update frequency

    Fixed widget overflows and reduce Market Data update frequency

    The market data is not updated everytime _getGeneralStats() is called, but in intervals of at least 15 minutes to reduce memory footprint.

    opened by rangel10 2
  • method 'setMockMethodCallHandler' isn't defined ; & The getter 'subhead' and 'body2' isn't defined for the class 'TextTheme'.

    method 'setMockMethodCallHandler' isn't defined ; & The getter 'subhead' and 'body2' isn't defined for the class 'TextTheme'.

    /C:/src/flutter/flutter/.pub-cache/hosted/pub.dartlang.org/shared_preferences-0.4.3/lib/shared_preferences.dart:146:15: Error: The method 'setMockMethodCallHandler' isn't defined for the class 'MethodChannel'.

    • 'MethodChannel' is from 'package:flutter/src/services/platform_channel.dart' ('/C:/src/flutter/flutter/packages/flutter/lib/src/services/platform_channel.dart'). Try correcting the name to the name of an existing method, or defining a method named 'setMockMethodCallHandler'. _kChannel.setMockMethodCallHandler((MethodCall methodCall) async { ^^^^^^^^^^^^^^^^^^^^^^^^ lib/tabs.dart:206:32: Error: The getter 'body2' isn't defined for the class 'TextTheme'.
    • 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('/C:/src/flutter/flutter/packages/flutter/lib/src/material/text_theme.dart'). Try correcting the name to the name of an existing getter, or defining a getter or field named 'body2'. .body2 ^^^^^ lib/tabs.dart:288:62: Error: The getter 'subhead' isn't defined for the class 'TextTheme'.
    • 'TextTheme' is from 'package:flutter/src/material/text_theme.dart' ('/C:/src/flutter/flutter/packages/flutter/lib/src/material/text_theme.dart'). Try correcting the name to the name of an existing getter, or defining a getter or field named 'subhead'. style: Theme.of(context).textTheme.subhead, ^^^^^^^
    opened by RajuNarula 0
  • Feature Request: Widgets

    Feature Request: Widgets

    It would be great to be able to put a widget on the home screen. Maybe similar to robinhood's, but add in your portfolio balance and the price per coin image (picture just found on google images, those aren't crypto, but the idea is the same)

    opened by Sparticuz 0
  • Include binance API sync

    Include binance API sync

    Add a portfolio sync with binance using binance api

    opened by TallGorilla 0
  • [Feature Request] Multiple Profiles/Portfolios

    [Feature Request] Multiple Profiles/Portfolios

    Hi,

    Would it be possible to implement multiple profiles/portfolios. Thinking of something like having different pages per profile to rapidly switch among them and compare.

    Thanks

    opened by amirseni 0
  • F-Droid release?

    F-Droid release?

    Will it be possible to release this app to F-Droid as well? The open source community will be so happy to have this app FOSS. Also because there's not many applications (I would even say "no applications") like this on the F-Droid repo.

    opened by Mattrazol 0
  • Missing coin

    Missing coin

    It missing Banano, pls add

    opened by vs3a 0
  • A lot of icons are missing

    A lot of icons are missing

    As a lot of new projects are rising almost a good 1/3 of the top 100 has no icons.

    As I guess the icons are simply taken from here https://github.com/spothq/cryptocurrency-icons I would suggest to update the icons and create a MR if wanted.

    opened by manuel2258 0
  • Support other valutas than USD

    Support other valutas than USD

    I'd love it if EUR was added.

    opened by aardbol 1
  • Google Play Protect Warning

    Google Play Protect Warning

    I've got a Google Play Protect warning when I tried to install the software. Any idea what is the cause?

    opened by damascene 1
Releases(v1.0.9)
A clean and modern note taking app built with Flutter.

Notes App A clean, simple and modern note taking app built with Flutter. Be sure to leave a star ?? Features Create notes: Create notes that store loc

Carlton Aikins 84 Jan 8, 2022
Nimbus is a beautiful portfolio design built using flutter

nimbus This is Nimbus (Portfolio & CV), a beautifully designed portfolio website built with flutter. It is inspired by Web Genius Lab Designs on Behan

David-Legend 148 Jan 16, 2022
Nakama is an open-source server designed to power modern games and apps

Nakama is an open-source server designed to power modern games and apps. Features include user accounts, chat, social, matchmaker, realtime multiplayer, and much more.

Allan Nava 38 Jan 3, 2022
A full, sound, modern and documented JS interop for Dart.

This is (or should be) a full JavaScript interop package using package:js bindings. The bindings are generated by machine-reading WebIDL files for typ

Jonathan Rezende 17 Dec 24, 2021
Lime client built using flutter

** This project ist OUT OF DATE and I am currently not able to maintain it ** What we are building Lime is a social media app, which allows you to pos

Sebastian Sellmair 356 Jan 11, 2022
Minimalist Flutter Todo App, built using BLoC pattern

Deer Minimalist Todo Planner app built around the idea of efficiency and clean aesthetic. Showcase Development Deer uses BLoC (Business Logic Componen

Aleksander WoΕΊniak 305 Jan 11, 2022
The 'Reply' Material Design case study built with Flutter.

Reply ❀️ Flutter Reply is an email app that uses Material Design components and Material Theming to create an on-brand communication experience. This

Frederik Schweiger 542 Jan 8, 2022
Pokedex app built with Flutter (with lots of animations) using Clean Architecture

Flutter Pokedex Pokedex app built with Flutter App preview Video demo Installation Add Flutter to your machine Open this project folder with Terminal/

Pham Sy Hung 1.3k Jan 19, 2022
Timy - open source mobile app for groups to communicate and organize themselves. Built with flutter.

Timy app An amazing open-source group messaging app build with flutter. ✨ Main Features Multiple groups (similar to Teams in Slack). Multiple open or

null 1.8k Jan 13, 2022
Fully functional Twitter clone built in flutter framework using Firebase realtime database and storage

Fwitter - Twitter clone in flutter A working Twitter clone written in Flutter using Firebase auth,realtime,firestore database and storage. Download Ap

Sonu Sharma 1.6k Jan 13, 2022
A task manager built with Flutter, Serverless, Postgres, Firebase

Tasky Mobile App A project management mobile app This project is an implementation of a Design i found on uigaints.com by Ashish Dhakal. The Backend w

Etornam Sunu 104 Jan 14, 2022
A quiz app built using Flutter

Quiz-App A quiz app built using Flutter. It currently covers programming topics such as (i.e. TypeScript, Angular, Firebase...) and others. Although t

Akash Dubey 39 Jan 11, 2022
Simple manga reader app for MangaSee, built with Flutter

MAPI Simple manga reader app for MangaSee. Mind that this is my very first attempt on using Flutter. Why I wanted to try out Flutter, and i needed an

Simone 13 Jan 11, 2022
Multi-platform project built with Flutter and Golang that will help you save what is most important - time.

Articles Time Saver. Save what's most valuable - Time Contribute Β· Discord Β· Documentation What is ArTiver? It is an idea that came to my mind, when I

Wiktor ZajΔ…c 19 Dec 25, 2021
An app built using Flutter that performs conversion of bitcoin price with other currencies and displays it to user.

bitcoin_ticker A new Flutter application. Getting Started This project is a starting point for a Flutter application. A few resources to get you start

dev_allauddin 4 Nov 17, 2021
An android app built using flutter that displays and forecast the specific city Weather and Climate for dynamic time event by collecting the data from API that is provided for free by OPENWEATHER site.

clima_weather_reporter A new Flutter application. Getting Started This project is a starting point for a Flutter application. A few resources to get y

dev_allauddin 4 Nov 17, 2021
A remote app built using Flutter that creates the users of the specific wordpress website.

wp_users A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if this

dev_allauddin 4 Nov 17, 2021
An app built using flutter for ResearchNeeda medical Startup as part of Hackathon 2020 conducted by Deshpande startups

research_final A new Flutter application. Getting Started This project is a starting point for a Flutter application. A few resources to get you start

dev_allauddin 4 Nov 17, 2021
QuizApp Built with Flutter & Firebase

QuizApp Generated by the Very Good CLI ?? Getting Started ?? This project contains 2 flavors: development production To run the desired flavor either

Fireship 58 Jan 16, 2022