Skip to content

Latest commit

 

History

History
32 lines (23 loc) · 1.35 KB

File metadata and controls

32 lines (23 loc) · 1.35 KB

Stack

MVP stack

  • Python 3.11+ - backend runtime.
  • pydantic-settings - typed configuration from environment variables and .env.
  • httpx - async HTTP client for marketplace APIs and Telegram.
  • Typer - CLI entrypoint: doctor, scan, worker.
  • SQLite - MVP storage for market quotes and sent signal journal.
  • aiosqlite - async SQLite access.
  • Docker + Docker Compose - repeatable runtime environment.
  • pytest - unit and contract tests.
  • ruff - linting and import sorting.
  • mypy - strict static type checking.

Why this stack

Python is a strong fit for market data collection, API integrations, analytics and Telegram automation. The MVP deliberately avoids a web UI and heavy service split until the data pipeline and signal quality are proven.

SQLite is enough for the first read-only version because the system writes compact quote snapshots and signal records. The persistence boundary is isolated, so PostgreSQL can replace it later without changing domain logic.

Production direction

Future production hardening can add:

  • PostgreSQL for multi-user or high-volume storage.
  • Redis for distributed rate limits and caching.
  • FastAPI for a dashboard/API layer.
  • OpenTelemetry/Prometheus for metrics.
  • Separate collector, analytics and alert workers.

These are intentionally not in the first MVP to keep the core reliable and testable.