Changelog
what changed, and how to update.
Version 2.0.0 is a complete rebuild of Cryptocurrency Tracker: a new Flutter app for Android and iOS in the new Obsidian design, a Firebase backend and an operator console.
012.0.0 · 2026-10 — complete rebuild in Flutter, with an operator console
Version 2.0.0 replaces the previous Kotlin Android app of this item with a new code base, written from scratch: a Flutter app for Android and iOS (plus a web demo), a Firebase backend and an operator console. The old app's data sources had stopped working (its price API now requires a paid key, its news API ended its free plan); the new version uses CoinGecko with CoinMarketCap as a fallback and free RSS news feeds, all called from your server, so no key ships inside the app.
For users
- Markets: global stats, trending, categories, sorting and search, 7-day sparklines, automatic refresh, many fiat currencies.
- Coin pages: interactive charts (1H, 24H, 7D, 30D, 90D, 1Y, ALL), stats, ATH, supply, links, exchanges and pairs.
- Watchlist; portfolios with buy, sell and transfer transactions, average-cost profit and loss (realised and unrealised), allocation chart, CSV import and export.
- Price alerts (above, below, percent up or down; once or daily) evaluated on the server every 5 minutes and sent as push notifications.
- Home-screen widgets on Android and iOS (watchlist and portfolio), refreshing themselves.
- Read-only wallet tracking by public address on Ethereum, Base, Arbitrum, Optimism, Polygon, BNB Smart Chain, Avalanche, Solana and Bitcoin; only tokens CoinGecko lists for that chain are shown, spam tokens are hidden.
- Crypto news from RSS feeds (CoinDesk, Decrypt, Cointelegraph, The Block — configurable), linking to the publishers.
- Currency converter (crypto to fiat and crypto to crypto).
- Market summary and per-coin reports: AI-generated with the operator's own key (Anthropic, OpenAI or an OpenAI-compatible provider), or a labelled automatic summary without a key. Never investment advice.
- "Obsidian" design: near-black layered surfaces with hairline strokes (and an equally polished light theme), the console's brand accent plus a lime highlight, bundled variable fonts (Space Grotesk for prices and titles, Inter for the interface, SIL OFL 1.1) with tabular figures; a floating glass navigation bar, segmented pill tabs, rounded token avatars, large prices with change pills, statistics tiles, watchlist cards, news cards with source monograms (no publisher images) and a "Monitored addresses" wallet list with copy buttons.
- Coin pages: Overview · Markets · News · About tabs; line or candlestick chart (CoinGecko OHLC, from 24H) with a drag/hover crosshair, OHLC tooltip, last-price tag and range pills; 1H/24H/7D/ATH performance strip; community sentiment (CoinGecko votes, labelled "not a forecast").
- Markets: total market cap hero, the Crypto Fear & Greed index from Alternative.me (credited; can be switched off in the console).
- Portfolio: hero card with the 7-day value of the current holdings, P&L and cost basis.
- Motion: rolling price digits and price flashes, chart draw-in and range morphing, haptic crosshair ticks, count-up totals, a slow aurora glow on hero cards, staggered list entrances, spring press, avatar and price hero flight from a markets row to the coin page, shimmer loaders, fade-through page transitions — all switched off when the system asks to reduce motion.
- Every screen in the same design: Pro paywall with plan cards and a benefits list, grouped Settings (account, sign-in methods, widgets notice, account deletion), alert cards with a bell toggle and an editor with a live "fires at" preview, a swap-card converter, reading layouts for the market brief and coin reports (labelled, numbered sections, share), and rebuilt search, sign-in, wallet holdings and legal pages.
- Onboarding redone, dark and light themes, 9 languages (English, German, Spanish, French, Portuguese, Arabic with RTL, Hindi, Indonesian, Turkish), optional sign-in to sync data across devices, account deletion.
For the operator
- New API endpoints:
GET /v1/coins/{id}/ohlc(candles, cached, inside the CoinGecko budget) andGET /v1/feargreed(Alternative.me, cached, attribution in the response); coin detail carries the community sentiment. - Operator console on the MIKODES Admin Kit: brand, legal texts and labels, features (including the Fear & Greed card), sign-in methods (Google, Apple, e-mail), market defaults, data providers and keys (write-only), budgets and caching, news sources, AI provider and limits, ads, Pro and store products, affiliates, sponsored slots, wallet chains and RPC endpoints; users, alerts, push campaigns, news, provider usage and live status checks. Owners, managers and viewers; every change audited.
- Ways to earn, each off by default: ads with AdMob, AppLovin MAX, Unity Ads or ironSource LevelPlay (app open, banners, native ads in lists, interstitials with a minimum gap, rewarded ads that unlock an AI report); Pro subscription (monthly, yearly) and lifetime Pro; remove-ads and AI report pack purchases verified on the server; exchange affiliate links on coin pages and the Buy button (labelled); sponsored coins and sponsored news (labelled "Sponsored", scheduled, with impressions and clicks).
- Revenue centre with measured figures only: verified store purchases, sponsor bookings and partner payouts you record with a reference, and ad revenue when you connect a reporting API.
Requirements
- Flutter 3.41 or newer, Android compileSdk/targetSdk 36 (minSdk 24), iOS 15.0+, Node.js 22, Firebase Blaze plan. Full list: Requirements.
Migration from 1.x
- 2.0.0 is a new code base; there is no data migration from the Kotlin app. Publish it as an update of your existing store listing by keeping your application id, or as a new app. See Upgrading from 1.x.
This entry is the same as CHANGELOG.md in the package.
02Updating from 1.x
2.0.0 is a new project, not a patch. The full guide, with what changed in configuration and data, is Upgrading from 1.x. In short: set it up like a new install (Installation), then:
- Same store listing: to publish 2.0 as an update of your existing Android app, use your 1.x application id (Rebranding), sign with the same upload key, and use a higher version code than your last release (2.0.0 ships with build number 200).
- User data is not migrated. 2.0 does not read anything the 1.x app stored. Tell your users in the release notes that they need to add their coins again.
- Remove any API keys or tokens you added to the 1.x code from your own copies, and revoke them with the provider.
03Applying future 2.x updates
- Read this changelogEach version lists what changed in the app, the backend and the console.
- Keep your changes separateUse git: commit your configured copy, then unpack the update in a separate folder and merge it in. Your
lib/firebase_options.dart,.env, keystores and native ids stay yours. - Deploy in orderBackend first (
firebase deploy --only firestore:rules,firestore:indexes,functions), then the console (npm ci, restart), then build and publish the app.