# sudhakar-2005/sharrows_sima architecture

> Architecture diagram of the GitHub repository sudhakar-2005/sharrows_sima, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-10-03). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/sudhakar-2005/sharrows_sima
- Repository: https://github.com/sudhakar-2005/sharrows_sima

## Overview

Sharrow is a simulated-market intelligence dashboard: market data is loaded and updated, then an intelligence cycle derives market context, asset signals, conviction, predictions, insights and learning records for the UI. Users explore these results across market, portfolio, research, watchlist, prediction and evolution views. The README calls it an AI-powered, self-improving stock-market agent; the sampled implementation labels research data simulated. Several feature pages and services are represented from the tree and source index, but their internal wiring was not sampled, so unverified links are omitted.

Main entry points: [`Sharrow/src/App.tsx`](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/App.tsx) (App Router), [`Sharrow/src/engine/cycle.ts`](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/cycle.ts) (Analysis Cycle), [`Sharrow/src/store/intelligence-store.ts`](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/store/intelligence-store.ts) (Intelligence Store), [`Sharrow/src/pages/ResearchPage.tsx`](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/ResearchPage.tsx) (Research)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_app["Application"]
  node_app["App Router<br/>[App.tsx]"]
  node_shell["App Shell<br/>[AppShell.tsx]"]
end

subgraph group_market["Market Data"]
  node_tick["Tick Engine<br/>[tick-engine.ts]"]
  node_quotes["Quote Service<br/>[quotes.ts]"]
  node_marketdata["Market Data Service"]
end

subgraph group_analysis["Intelligence Engine"]
  node_cycle["Analysis Cycle<br/>[cycle.ts]"]
  node_indicators["Technical Indicators<br/>[indicators.ts]"]
  node_regime["Regime Assessment<br/>[regime.ts]"]
  node_signals["Signal Analysis<br/>[signals.ts]"]
  node_conviction["Conviction Scoring<br/>[conviction.ts]"]
  node_predictions["Scenario Evaluation<br/>[predictions.ts]"]
  node_learning["Learning Engine<br/>[learning.ts]"]
end

subgraph group_state["Application State"]
  node_marketstore["Market Store<br/>[market-store.ts]"]
  node_intelstore["Intelligence Store"]
  node_uistore["UI State<br/>[ui-store.ts]"]
end

subgraph group_views["User Workspaces"]
  node_overview["Overview<br/>[OverviewPage.tsx]"]
  node_markets["Markets<br/>[MarketsPage.tsx]"]
  node_watchlist["Watchlist<br/>[WatchlistPage.tsx]"]
  node_portfolio["Portfolio<br/>[PortfolioPage.tsx]"]
  node_research["Research<br/>[ResearchPage.tsx]"]
  node_predictionspage["Predictions"]
  node_intelligencepage["Intelligence"]
  node_evolution["Evolution<br/>[EvolutionPage.tsx]"]
  node_asset["Asset Detail<br/>[AssetPage.tsx]"]
  node_alerts["Alerts<br/>[AlertsPage.tsx]"]
  node_settings["Settings<br/>[SettingsPage.tsx]"]
  node_onboarding["Onboarding<br/>[OnboardingPage.tsx]"]
  node_researchdata["Research Data<br/>[research-data.ts]"]
end

node_user(("Investor"))

node_user -->|"uses"| node_shell
node_app -->|"routes through"| node_shell
node_app -->|"loads market data"| node_marketstore
node_app -->|"initializes; cycles"| node_intelstore
node_app -->|"reads motion setting"| node_uistore
node_app -->|"routes to"| node_overview
node_app -->|"routes to"| node_markets
node_app -->|"routes to"| node_watchlist
node_app -->|"routes to"| node_portfolio
node_app -->|"routes to"| node_predictionspage
node_app -->|"routes to"| node_intelligencepage
node_app -->|"routes to"| node_evolution
node_app -->|"routes to"| node_research
node_app -->|"routes to"| node_alerts
node_app -->|"routes to"| node_settings
node_app -->|"routes to"| node_asset
node_app -->|"routes to"| node_onboarding
node_tick -->|"ticks prices"| node_quotes
node_intelstore -->|"builds snapshots and analysis"| node_cycle
node_intelstore -->|"creates and evaluates"| node_predictions
node_intelstore -->|"converts price series"| node_indicators
node_intelstore -->|"reads quotes and news"| node_marketstore
node_cycle -->|"assesses regime"| node_regime
node_cycle -->|"derives signals"| node_signals
node_cycle -->|"scores conviction"| node_conviction
node_cycle -->|"computes indicators"| node_indicators
node_cycle -->|"reads price series"| node_marketdata
node_regime -->|"uses indicators"| node_indicators
node_signals -->|"uses indicators"| node_indicators
node_research -->|"reads intelligence state"| node_intelstore
node_research -->|"reads market news"| node_marketstore
node_research -->|"filters and summarizes"| node_researchdata

click node_app "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/App.tsx"
click node_shell "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/components/shell/AppShell.tsx"
click node_marketstore "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/store/market-store.ts"
click node_intelstore "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/store/intelligence-store.ts"
click node_uistore "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/store/ui-store.ts"
click node_tick "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/services/market-data/tick-engine.ts"
click node_quotes "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/services/market-data/quotes.ts"
click node_marketdata "https://github.com/sudhakar-2005/sharrows_sima/tree/main/Sharrow/src/services/market-data"
click node_cycle "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/cycle.ts"
click node_indicators "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/indicators.ts"
click node_regime "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/regime.ts"
click node_signals "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/signals.ts"
click node_conviction "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/conviction.ts"
click node_predictions "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/predictions.ts"
click node_learning "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/learning.ts"
click node_overview "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/OverviewPage.tsx"
click node_markets "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/MarketsPage.tsx"
click node_watchlist "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/WatchlistPage.tsx"
click node_portfolio "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/PortfolioPage.tsx"
click node_research "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/ResearchPage.tsx"
click node_predictionspage "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/PredictionsPage.tsx"
click node_intelligencepage "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/IntelligencePage.tsx"
click node_evolution "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/EvolutionPage.tsx"
click node_asset "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/AssetPage.tsx"
click node_alerts "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/AlertsPage.tsx"
click node_settings "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/SettingsPage.tsx"
click node_onboarding "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/OnboardingPage.tsx"
click node_researchdata "https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/research/research-data.ts"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_app,node_shell toneBlue
class node_tick,node_quotes,node_marketdata toneAmber
class node_cycle,node_indicators,node_regime,node_signals,node_conviction,node_predictions,node_learning toneMint
class node_marketstore,node_intelstore,node_uistore toneRose
class node_overview,node_markets,node_watchlist,node_portfolio,node_research,node_predictionspage,node_intelligencepage,node_evolution,node_asset,node_alerts,node_settings,node_onboarding,node_researchdata,node_user toneIndigo
```

## Components

### Application

- [App Router](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/App.tsx): `Sharrow/src/App.tsx`
- [App Shell](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/components/shell/AppShell.tsx): `Sharrow/src/components/shell/AppShell.tsx`

### Market Data

- [Tick Engine](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/services/market-data/tick-engine.ts): `Sharrow/src/services/market-data/tick-engine.ts`
- [Quote Service](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/services/market-data/quotes.ts): `Sharrow/src/services/market-data/quotes.ts`
- [Market Data Service](https://github.com/sudhakar-2005/sharrows_sima/tree/main/Sharrow/src/services/market-data): `Sharrow/src/services/market-data`

### Intelligence Engine

- [Analysis Cycle](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/cycle.ts): `Sharrow/src/engine/cycle.ts`
- [Technical Indicators](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/indicators.ts): `Sharrow/src/engine/indicators.ts`
- [Regime Assessment](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/regime.ts): `Sharrow/src/engine/regime.ts`
- [Signal Analysis](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/signals.ts): `Sharrow/src/engine/signals.ts`
- [Conviction Scoring](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/conviction.ts): `Sharrow/src/engine/conviction.ts`
- [Scenario Evaluation](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/predictions.ts): `Sharrow/src/engine/predictions.ts`
- [Learning Engine](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/engine/learning.ts): `Sharrow/src/engine/learning.ts`

### Application State

- [Market Store](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/store/market-store.ts): `Sharrow/src/store/market-store.ts`
- [Intelligence Store](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/store/intelligence-store.ts): `Sharrow/src/store/intelligence-store.ts`
- [UI State](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/store/ui-store.ts): `Sharrow/src/store/ui-store.ts`

### User Workspaces

- [Overview](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/OverviewPage.tsx): `Sharrow/src/pages/OverviewPage.tsx`
- [Markets](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/MarketsPage.tsx): `Sharrow/src/pages/MarketsPage.tsx`
- [Watchlist](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/WatchlistPage.tsx): `Sharrow/src/pages/WatchlistPage.tsx`
- [Portfolio](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/PortfolioPage.tsx): `Sharrow/src/pages/PortfolioPage.tsx`
- [Research](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/ResearchPage.tsx): `Sharrow/src/pages/ResearchPage.tsx`
- [Predictions](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/PredictionsPage.tsx): `Sharrow/src/pages/PredictionsPage.tsx`
- [Intelligence](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/IntelligencePage.tsx): `Sharrow/src/pages/IntelligencePage.tsx`
- [Evolution](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/EvolutionPage.tsx): `Sharrow/src/pages/EvolutionPage.tsx`
- [Asset Detail](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/AssetPage.tsx): `Sharrow/src/pages/AssetPage.tsx`
- [Alerts](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/AlertsPage.tsx): `Sharrow/src/pages/AlertsPage.tsx`
- [Settings](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/SettingsPage.tsx): `Sharrow/src/pages/SettingsPage.tsx`
- [Onboarding](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/OnboardingPage.tsx): `Sharrow/src/pages/OnboardingPage.tsx`
- [Research Data](https://github.com/sudhakar-2005/sharrows_sima/blob/main/Sharrow/src/pages/research/research-data.ts): `Sharrow/src/pages/research/research-data.ts`

### Other components

- **Investor**

## Connections

- Investor → App Shell: uses
- App Router → App Shell: routes through (evidence: `Sharrow/src/App.tsx`)
- App Router → Market Store: loads market data (evidence: `Sharrow/src/App.tsx`)
- App Router → Intelligence Store: initializes; cycles (evidence: `Sharrow/src/App.tsx`)
- App Router → UI State: reads motion setting (evidence: `Sharrow/src/App.tsx`)
- App Router → Overview: routes to (evidence: `Sharrow/src/App.tsx`)
- App Router → Markets: routes to (evidence: `Sharrow/src/App.tsx`)
- App Router → Watchlist: routes to (evidence: `Sharrow/src/App.tsx`)
- App Router → Portfolio: routes to (evidence: `Sharrow/src/App.tsx`)
- App Router → Predictions: routes to (evidence: `Sharrow/src/App.tsx`)
- App Router → Intelligence: routes to (evidence: `Sharrow/src/App.tsx`)
- App Router → Evolution: routes to (evidence: `Sharrow/src/App.tsx`)
- App Router → Research: routes to (evidence: `Sharrow/src/App.tsx`)
- App Router → Alerts: routes to (evidence: `Sharrow/src/App.tsx`)
- App Router → Settings: routes to (evidence: `Sharrow/src/App.tsx`)
- App Router → Asset Detail: routes to (evidence: `Sharrow/src/App.tsx`)
- App Router → Onboarding: routes to (evidence: `Sharrow/src/App.tsx`)
- Tick Engine → Quote Service: ticks prices (evidence: `Sharrow/src/services/market-data/tick-engine.ts`)
- Intelligence Store → Analysis Cycle: builds snapshots and analysis (evidence: `Sharrow/src/store/intelligence-store.ts`)
- Intelligence Store → Scenario Evaluation: creates and evaluates (evidence: `Sharrow/src/store/intelligence-store.ts`)
- Intelligence Store → Technical Indicators: converts price series (evidence: `Sharrow/src/store/intelligence-store.ts`)
- Intelligence Store → Market Store: reads quotes and news (evidence: `Sharrow/src/store/intelligence-store.ts`)
- Analysis Cycle → Regime Assessment: assesses regime (evidence: `Sharrow/src/engine/cycle.ts`)
- Analysis Cycle → Signal Analysis: derives signals (evidence: `Sharrow/src/engine/cycle.ts`)
- Analysis Cycle → Conviction Scoring: scores conviction (evidence: `Sharrow/src/engine/cycle.ts`)
- Analysis Cycle → Technical Indicators: computes indicators (evidence: `Sharrow/src/engine/cycle.ts`)
- Analysis Cycle → Market Data Service: reads price series (evidence: `Sharrow/src/engine/cycle.ts`)
- Regime Assessment → Technical Indicators: uses indicators (evidence: `Sharrow/src/engine/regime.ts`)
- Signal Analysis → Technical Indicators: uses indicators (evidence: `Sharrow/src/engine/signals.ts`)
- Research → Intelligence Store: reads intelligence state (evidence: `Sharrow/src/pages/ResearchPage.tsx`)
- Research → Market Store: reads market news (evidence: `Sharrow/src/pages/ResearchPage.tsx`)
- Research → Research Data: filters and summarizes (evidence: `Sharrow/src/pages/ResearchPage.tsx`)
