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
Comments
  • 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
  • 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
  • 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
  • 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
  • Application isn't working any more not pulling data from source

    Application isn't working any more not pulling data from source

    Hello, I remember using the App a year ago but now I'm not getting any currencies on screen. just "now results found". I'm using Android 10.

    opened by damascene 1
  • Typo on Change's asset name

    Typo on Change's asset name

    Hey @trentpiercy,

    Thank you for merging Change's logo. But apparently, I made a typo, I just realised it after you merged it.

    Thanks.

    P.S. With new API, Change does not appear in the list anyway.

    opened by mustafatufan 0
  • Error: The method 'setMockMethodCallHandler' isn't defined for the class 'MethodChannel'.

    Error: The method 'setMockMethodCallHandler' isn't defined for the class 'MethodChannel'.

    /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 { ^^^^^^^^^^^^^^^^^^^^^^^^
    opened by RajuNarula369 0
  • 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 RajuNarula369 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
  • [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
Releases(v1.0.9)
Radiao - a radio explorer app that lets you listen to several stations of various countries

radiao Radiao is a radio explorer app that lets you listen to several stations of various countries. features trending stations popular stations liste

null 4 Apr 20, 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 196 Dec 26, 2022
Simple and modern news app that incorporates REST API (newsapi.org), all built entirely with Flutter.

A simple news app with a minimalistic and clean UI that incorporates the newsapi.org api all built entirely with Flutter. Be sure to leave a star ??

Carlton Aikins 73 Dec 1, 2022
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 111 Dec 31, 2022
Modern UI for Messaging/Chatting App, with Signup/Login Pages and Awesome animation, built with flutter v2.5.2.

instantChat_app_ui Modern UI for Messaging/Chatting App, with Signup/Login Pages and Awesome animation, built with flutter v2.5.2. The package/plugin

Kamran Jalil 1 Oct 25, 2021
A simple crypto tracker Flutter app with cero third party package

Crypto Tracker A simple crypto tracker Flutter app with cero third party package, that incorparates the Nomics api. This application collects the hist

null 28 Oct 10, 2022
Flutter representation of a Crypto app Concept

?? ?? Flutter Cryptocurrency app Concept Flutter representation of a Crypto app Concept from Uplabs. Star โญ the repo if you like what you see ?? . Ima

Festus Olusegun 185 Dec 29, 2022
Flutter Crypto App (API+UI) with support for dark and light mode

Flutter Crypto App (API+UI) with support for dark and light mode. Flutter 2.10.3 Null Safety (2022) Beautiful Crypto App (API+UI) with support for dar

Martin Gogoล‚owicz 12 Nov 1, 2022
crypto coin potfolio manager

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

Joseph W DeWeese 0 Oct 26, 2021
Crypto Profit Calculator using CLEAN Architecture and BLoC or Cubit, for learning purposes

Hysto | Crypto Profit Calculator Calculate and save your profits with Hysto ?? ?? ?? DIAMOND HANDS BABY ?? ?? ?? Requirements Flutter v2.10.2 Find ava

Jose Jaime Bisuรฑa 3 Apr 29, 2022
A music content app for my portfolio showcase

sol A music palying app for showcase on my portfolio Dev Instructions This project was built with flutter, the google sdk for building mobile apps I'M

Josuรฉ Bokobosso 1 May 4, 2022
DoubtBin is a doubt solving and resources sharing portfolio.

DoubtBin is a doubt solving and resources sharing portfolio. It includes implemenation of concepts of Object Oriented Programming, Front-end Development and Back-end Development.

null 17 Oct 14, 2022
A simple, modern AppImageHub Client, powered by flutter.

AppImagePool Simple AppImageHub Client Main Features FLOSS and non profit app Simple categories Download from github directly, no extra-server involve

Prateek SU 490 Jan 1, 2023
a modern games app UI made with flutter

games_mix A game app UI made using flutter. Inspiration https://github.com/developedbyed/glass-website Screenshot Support If you like what we do, and

null 2 Oct 14, 2021
Modern and elegant test framework for Flutter, inspired by Cypress

flutter_modern_test: Modern, elegant and productive test framework for Flutter, inspired by Cypress GitHub: https://github.com/fzyzcjy/flutter_modern_

fzyzcjy 14 Oct 19, 2022
Amazing task management application with fluid, minimal and modern UI using Flutter! One of The Winner Apps for Google DevFest 2021!

Orb "Let your task orbit!" ?? Description Orb is an easy-to-use task manager app that help you manage your daily struggles to get your things done eff

Tom Huynh 9 Oct 28, 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 85 Dec 30, 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 36 Dec 15, 2022