{"id":46638259,"url":"https://github.com/tetherto/m-sdk-be","last_synced_at":"2026-03-08T02:13:21.461Z","repository":{"id":335207793,"uuid":"1142008098","full_name":"tetherto/m-sdk-be","owner":"tetherto","description":null,"archived":false,"fork":false,"pushed_at":"2026-02-17T10:29:17.000Z","size":14,"stargazers_count":0,"open_issues_count":0,"forks_count":2,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-17T15:51:46.741Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tetherto.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-25T20:01:55.000Z","updated_at":"2026-02-17T10:29:21.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/tetherto/m-sdk-be","commit_stats":null,"previous_names":["tetherto/m-sdk-be"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/tetherto/m-sdk-be","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tetherto%2Fm-sdk-be","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tetherto%2Fm-sdk-be/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tetherto%2Fm-sdk-be/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tetherto%2Fm-sdk-be/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tetherto","download_url":"https://codeload.github.com/tetherto/m-sdk-be/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tetherto%2Fm-sdk-be/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30242406,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-08T00:58:18.660Z","status":"online","status_checked_at":"2026-03-08T02:00:06.215Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-03-08T02:13:20.543Z","updated_at":"2026-03-08T02:13:21.446Z","avatar_url":"https://github.com/tetherto.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# MiningSDK \n**Open, Modular Infrastructure for Bitcoin Mining at Any Scale**\n\n---\n\n## About MiningSDK\n\nThe Bitcoin mining industry has long been constrained by **closed systems, proprietary tooling, and vendor lock-in**. MiningSDK changes that.\n\nMiningSDK introduces **openness, transparency, and modularity** into mining infrastructure. Built on open protocols and a composable architecture, it empowers operators and developers to build, operate, and scale mining operations with full control.\n\nMiningSDK delivers a modern, professional mining software stack with:\n- Intuitive operational workflows\n- Real-time monitoring and control\n- Production-grade scalability  \n- Full transparency into system behavior  \n\nFrom a **single device** to **gigawatt-scale facilities**, MiningSDK adapts without architectural rewrites.\n\n---\n\n## What is MiningSDK?\n\nMiningSDK is a **JavaScript-based backend SDK** that provides a modular, extensible foundation for:\n- Monitoring mining infrastructure\n- Controlling devices and containers\n- Collecting telemetry and operational data\n- Building custom mining applications and integrations\n\nMiningSDK acts as a **common operating layer** for the mining industry.\n\n---\n\n## Core Characteristics\n\n| Capability                | Description                                                                 |\n|---------------------------|-----------------------------------------------------------------------------|\n| **Portability**           | Runs on Windows, macOS, and Linux                                            |\n| **Device Agnostic**       | Supports miners, containers, sensors, power meters, and more                |\n| **Real-Time Monitoring**  | Sub-minute data collection and alerting                                     |\n| **Persistent Storage**    | Time-series storage using Hyperbee                                          |\n| **Scalable by Design**    | From a single miner to thousands of devices                                 |\n| **Open Source**           | Apache 2.0 licensed — no vendor lock-in                                     |\n\n---\n\n## Core Philosophy\n\nMiningSDK establishes a **lean, stable core** with **unbounded extensibility**.\n\nInstead of shipping a monolithic, closed system, MiningSDK provides:\n- A minimal, reliable foundation\n- Well-defined extension points\n- Modular components that evolve independently\n\nThis allows the ecosystem to grow organically while maintaining operational reliability.\n\n---\n\n## Vision\n\nMiningSDK is designed to be the **backbone of an open mining ecosystem**.\n\nBy standardizing the foundation of mining software, MiningSDK enables:\n- Long-term sustainability of mining infrastructure\n- Community-driven innovation\n- Decentralized ownership of operational tooling\n\nMiningSDK aligns mining infrastructure with Bitcoin’s core values: **openness, resilience, and decentralization**.\n\n---\n\n## Why MiningSDK?\n\n### The Problem\n\nToday’s mining software ecosystem is:\n\n- **Fragmented** — isolated, non-interoperable systems\n- **Opaque** — closed-source tooling with limited visibility\n- **Rigid** — difficult to customize or extend\n- **Locked-in** — high switching costs and vendor dependence\n\n### The MiningSDK Solution\n\n#### Transparency\n- Fully open-source (Apache 2.0)\n- Complete visibility into system behavior\n- No hidden logic or proprietary control paths\n\n#### Comprehensiveness\n- One platform for all mining infrastructure\n- Multi-vendor, multi-device support\n- Unified monitoring and control model\n\n#### Robustness\n- Proven in Tether’s production mining operations\n- Distributed architecture with no single point of failure\n- Durable, persistent storage for operational data\n\n#### Extensibility\n- Modular architecture for new device support\n- Plugin-friendly design for custom integrations\n- Community-first development model\n\n### Industry Standard\n\nMiningSDK aims to become the **industry standard** for Bitcoin mining operations—similar to how Linux standardized operating systems.\n\n---\n\n## Who is MiningSDK For?\n\nMiningSDK is built for **everyone who mines Bitcoin**.\n\n| User Type             | Primary Use Case                                              |\n|-----------------------|---------------------------------------------------------------|\n| **Home Miners**       | Simple monitoring and control for a few devices               |\n| **Small Operations**  | Manage multiple miners across locations                       |\n| **Industrial Sites**  | Orchestrate thousands of ASICs with fault tolerance           |\n| **Developers**        | Build custom mining tools and integrations                    |\n| **Service Providers** | Deliver hosted mining management platforms                    |\n\n---\n\n## What You Can Build\n\n- **Operational dashboards** (hashrate, power, temperature)\n- **Pool management tools**\n- **Infrastructure control systems** (containers, cooling, power)\n- **Analytics and reporting pipelines**\n- **Automation and optimization workflows**\n\n---\n\n## Example usage\nMiningSDK allows you to register and connect to a mining device with just a few lines of code:\n\n#### Install MiningSDK:\n```bash\nnpm install @tether/mining-sdk\n```\n#### Start reading miner data using MiningSDK:\n```bash\nconst miningSdk = require(\"@tether/mining-sdk\")\n\n//initialize a library for any miner model (example: Whatsminer m56s)\nconst wm56 = new miningSdk.WM_M56S()\n\n//register a new miner\nconst miner = wm56.registerMiner({\n  ip: \"127.0.0.1\",\n  port: 8080,\n  serialNumber: \"WM001\"\n})\n\n//connect to actual device\nawait miner.connectToDevice()\n\n//read miner stats\nconst stats = await miner.getStats()\n\n```\n\n---\n\n\n## Deployment Modes\n\nMiningSDK introduces a **flexible deployment model** that allows application to run as:\n\n- A **single embedded process** (ideal for small sites and development)\n- A **set of independent microservices** (ideal for large-scale production)\n\nThis is achieved by **decoupling device logic from runtime and deployment concerns**.\n\n| Deployment Mode        | Target Users    | Benefits                                      |\n|------------------------|-----------------|-----------------------------------------------|\n| **Single Process**     | Small sites     | Minimal setup, low resource overhead          |\n| **PM2 Microservices**  | Medium sites    | Process isolation, controlled scaling         |\n| **Docker / Kubernetes**| Large sites     | Enterprise orchestration, fault tolerance     |\n\n---\n\n## Key Capabilities\n\n- **Single Install, Unified API** for small deployments  \n- **Microservice Compatibility** for large-scale operations  \n- **Deployment Flexibility** via PM2, Docker, or Kubernetes  \n\n---\n\n## Business Impact\n\n- Faster onboarding and reduced time-to-deploy\n- Lower operational and support costs\n- Preservation of existing production workflows\n- Seamless growth from small to large deployments\n- Reduced architectural risk over time\n\n---\n\n## Strategic Value\n\n- One architecture for all customer sizes\n- Lower total cost of ownership (TCO)\n- Strong developer adoption and ecosystem growth\n- Future-proof foundation for new device types and services\n\n---\n\n## Summary\n\n**MiningSDK** is a single, unified backend SDK that combines:\n\n- Open-source transparency\n- Modular architecture\n- Flexible deployment models\n- Production-grade scalability\n\nIt enables Bitcoin mining operations to start small, scale smoothly, and remain in full control — without lock-in, rewrites, or hidden complexity.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftetherto%2Fm-sdk-be","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftetherto%2Fm-sdk-be","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftetherto%2Fm-sdk-be/lists"}