Skip to content

TaoPulse

An AI-powered mobile app for Bittensor that provides timely, relevant insights and alerts to help users stay on top of important ecosystem signals.

Vision

Bittensor is difficult to understand and follow in realtime. The ecosystem moves quickly, information is fragmented, and important signals are easy to miss.

TaoPulse aims to surface the most relevant signals, explain why they matter, and help users stay informed through intelligent feeds, alerts, and AI-powered insights.

It should stay clear, calm, and mobile-first: not ad-like, not popup-heavy, and not overloaded with dashboard noise.

Features

Live Feed

AI-backed live feed that surfaces the most relevant Bittensor signals for your interests, whether you are evaluating subnets, staking, or mining.

Live Feed Live Feed detail

Subnets

Helps users understand, compare, and follow Bittensor subnets with concise descriptions, key metrics, and deeper context.

Subnets Subnets detail

Ask AI

Helps users understand Bittensor activity through plain-language questions and concise AI explanations.

Ask AI Ask AI detail

Alerts

Helps users stay on top of important subnet events and control which activity triggers notifications.

Alerts Alerts detail

Settings

Helps users manage subnet watchlists, alert settings, AI preferences, profile settings, and appearance in one place.

Settings Settings detail

Roadmap

  1. Feed & Signal Quality: Improve live feed relevance, prioritization, and signal quality.
  2. Subnets: Expand subnet coverage and improve subnet metadata and comparison signals.
  3. AI & Insights: Strengthen Ask AI context awareness, explanations, and source-aware responses.
  4. Alerts & Watchlists: Improve alert prioritization, watchlist workflows, and notification clarity.
  5. Mobile UX: Improve mobile-first usability, responsiveness, and information clarity.
  6. Infrastructure & Backend: Evolve the backend from mock-driven development toward more production-ready data pipelines and ingestion workflows.

Architecture

TaoPulse uses a feature-first Flutter app structure with shared app, core, and UI layers.

lib/
├── api/                  # ApiClient (dio) and the apiClientProvider
├── app/                  # root widget and typed go_router routes
├── constants/            # app-wide constant values
├── theme/                # colors, spacing, radius, typography, gradients
├── widgets/              # shared, feature-agnostic widgets
├── features/
│   └── <feature>/
│       ├── data/         # repositories: interface + Api*/Mock* impls + mappers
│       ├── models/       # immutable feature models
│       ├── view_models/  # Riverpod notifiers + immutable view states
│       └── views/        # screens and widgets
└── main.dart

Most product areas follow the same pattern: feature data lives in data/, state lives in view_models/, UI lives in views/, and reusable app-wide pieces live in widgets/, theme/, or constants/.

Dependency flow:

View (widget) -> ViewModel (Notifier) -> Repository -> ApiClient / Mock

Riverpod is used to inject app routing, repositories, and feature state.

For the full architecture, state management, repository, navigation, theming, and naming conventions, see .github/CODE_GUIDELINES.md.

Contributing

See CONTRIBUTING.md for contribution guidelines and development setup.

License

This project is licensed under the GNU AGPL-3.0.

Copyright (c) 2026 cogniax.

About

Helps Bittensor users know what changed, why it matters, and what needs attention.

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages