{"id":49321879,"url":"https://github.com/microchipgnu/ethglobal-trifecta-hackathon","last_synced_at":"2026-04-26T18:02:18.758Z","repository":{"id":283993216,"uuid":"952090697","full_name":"microchipgnu/ethglobal-trifecta-hackathon","owner":"microchipgnu","description":null,"archived":false,"fork":false,"pushed_at":"2025-03-31T16:03:14.000Z","size":2259,"stargazers_count":2,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-31T17:25:04.981Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://midcurve.live","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/microchipgnu.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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}},"created_at":"2025-03-20T18:04:27.000Z","updated_at":"2025-03-31T16:03:18.000Z","dependencies_parsed_at":"2025-03-23T15:26:14.368Z","dependency_job_id":"07a412ad-4156-4a74-85ac-1db45f2df90d","html_url":"https://github.com/microchipgnu/ethglobal-trifecta-hackathon","commit_stats":null,"previous_names":["microchipgnu/ethglobal-trifecta-hackathon"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/microchipgnu/ethglobal-trifecta-hackathon","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microchipgnu%2Fethglobal-trifecta-hackathon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microchipgnu%2Fethglobal-trifecta-hackathon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microchipgnu%2Fethglobal-trifecta-hackathon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microchipgnu%2Fethglobal-trifecta-hackathon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/microchipgnu","download_url":"https://codeload.github.com/microchipgnu/ethglobal-trifecta-hackathon/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microchipgnu%2Fethglobal-trifecta-hackathon/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32307016,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T17:23:19.671Z","status":"ssl_error","status_checked_at":"2026-04-26T17:23:19.195Z","response_time":129,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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-04-26T18:02:18.126Z","updated_at":"2026-04-26T18:02:18.745Z","avatar_url":"https://github.com/microchipgnu.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Tradestream\n\nTradestream is an innovative 24/7 live streaming platform that brings an autonomous AI agent to life in a virtual environment. Its standout feature? The AI's actions are shaped by real-time community interactions, offering viewers a unique, participatory experience. Using **RTMP (Real-Time Messaging Protocol)**—a widely adopted standard for streaming audio, video, and data over the internet—Tradestream delivers seamless, low-latency broadcasts to audiences worldwide.\n\n## Key Features\n\n- **Continuous 24/7 Streaming:** Runs non-stop, ensuring viewers always have content to enjoy.\n- **Community-Driven AI Behavior:** Viewers influence the AI through interactions like chat commands or voting (specific methods configurable), making every stream dynamic.\n- **Secure VNC-Based Visualization:** Leverages **VNC (Virtual Network Computing)** to provide a secure, real-time view of the AI's environment.\n- **Configurable Streaming Parameters:** Customize resolution, bitrate, and FPS to suit your bandwidth or quality preferences.\n- **Containerized Architecture:** Built with Docker for consistent, hassle-free deployment across environments.\n- **RESTful API:** Internal API for data management and integration with other services.\n\n---\n\n# Development\n\nTo start developing Tradestream locally, you'll need:\n\n- **[Docker](https://docs.docker.com/get-docker/)**: Manages the containerized services.\n- **[Bun](https://bun.sh/)**: A fast JavaScript runtime for building and running the app.\n\n## Running Locally\n\nFollow these steps to set up and run Tradestream on your machine:\n\n1. **Install Dependencies**\n\n   Install the required packages with:\n\n   ```bash\n   bun install\n   ```\n\n2. **Configure Environment Variables**\n\n   Duplicate the example environment file:\n   ```bash\n   cp .env.example .env\n   ```\n\n   Edit `.env` with your settings. Key variables include:\n   - ETHEREUM_PRIVATE_KEY: For blockchain integration (e.g., AI actions or payments).\n   - STREAM_KEY: Authenticates the RTMP stream.\n   - REDIS_PASSWORD: Password for Redis (optional, leave empty for no authentication).\n   - (Add others as needed based on your setup.)\n\n   Generate an Ethereum address and private key:\n   ```bash\n   bun run scripts/generate-address.ts\n   ```\n   Why? This enables blockchain features, such as token-based interactions (adjust purpose as applicable).\n\n   Optional: Sign up at the Coinbase Developer Platform for additional integrations and update .env accordingly.\n\n3. **Build and Launch Docker Containers**\n\n   Build the Docker images (first time only):\n   ```bash\n   bun docker:build\n   ```\n\n   Start the containers:\n   ```bash\n   bun docker:up\n   ```\n\n   Stop the containers when done:\n   ```bash\n   bun docker:down\n   ```\n\nOnce running, access the internal app at http://localhost:5173, the API at http://localhost:3030, and the stream at rtmp://localhost:1935/live/stream (verify URLs based on your configuration).\n\n### Watching your stream locally\n\n```\nffplay -fflags nobuffer -flags low_delay -framedrop rtmp://localhost:1935/live/stream\n```\n\nTip: Keep your .env file secure and never commit it to version control.\n\n# Deployment\n\nTradestream deploys effortlessly with Dokploy on Hetzner. Dokploy simplifies container management, supporting any VPS or cloud environment with features like automatic SSL and monitoring.\n\n## Deployment Process\n\n1. **Set Up a Hetzner Server**: Sign up and provision a server with adequate resources.\n2. **Install Dokploy**: Follow the Dokploy installation guide.\n3. **Configure Dokploy**: Create a Tradestream project in the dashboard and set up services using your Docker Compose file.\n4. **Add Environment Variables**: Mirror your local .env settings in Dokploy.\n5. **Deploy**: Launch the containers and confirm they're running via Dokploy's interface.\n6. **Access the Stream**: Connect to the stream using your server's domain or IP with an RTMP client.\n\nFor more, see the Dokploy documentation.\n\n# Architecture Overview\n\nThis diagram outlines Tradestream's Docker-based architecture and component interactions:\n\n```mermaid\nflowchart TD\n    %% Docker Environment\n    subgraph \"Docker Environment\"\n        %% Services\n        agent[Agent\u003cbr\u003e\u003ci\u003ePorts: 8000, 6080, 8501, 5900, 8080\u003c/i\u003e\u003cbr\u003eHealthcheck: vnc.html]:::mainService\n        internal_app[Internal App\u003cbr\u003e\u003ci\u003ePort: 5173\u003c/i\u003e]:::service\n        internal_api[Internal API\u003cbr\u003e\u003ci\u003ePort: 3030\u003c/i\u003e]:::service\n        rtmp[RTMP Server\u003cbr\u003e\u003ci\u003ePort: 1935\u003c/i\u003e]:::service\n        streamer[Streamer]:::service\n        redis[Redis\u003cbr\u003e\u003ci\u003ePort: 6379\u003c/i\u003e]:::service\n        output[Output Stream]\n\n        %% Dependencies\n        internal_app --\u003e|Depends on| agent\n        internal_app --\u003e|Depends on| internal_api\n        internal_app --\u003e|Depends on| redis\n        \n        internal_api --\u003e|Depends on| redis\n        \n        agent --\u003e|Depends on| redis\n        \n        streamer --\u003e|Depends on| agent\n        streamer --\u003e|Depends on| rtmp\n        streamer --\u003e|Depends on| internal_app\n        streamer --\u003e|Depends on| internal_api\n        streamer --\u003e|Depends on| redis\n        \n        %% Data Flow\n        agent --\u003e|Serves web interface| internal_app\n        internal_app --\u003e|Interacts via API| agent\n        internal_app --\u003e|Uses| internal_api\n        streamer --\u003e|Captures VNC output| agent\n        streamer --\u003e|Streams to| rtmp\n        rtmp --\u003e|Broadcasts| output\n        \n        %% All services connected to network\n        network[Dokploy Network]:::network\n        agent --- network\n        internal_app --- network\n        internal_api --- network\n        streamer --- network\n        rtmp --- network\n        redis --- network\n    end\n\n    %% Styling\n    classDef mainService fill:#f9a825,stroke:#333,stroke-width:2px;\n    classDef service fill:#bbdefb,stroke:#333,stroke-width:2px;\n    classDef network fill:#c8e6c9,stroke:#333,stroke-width:2px;\n```\n\n## Next Steps\n\nReady to dive in? Clone the repo, set up Tradestream locally, and experiment with your own AI-driven stream. Have questions or ideas? Join our community or contribute via GitHub. Happy streaming!\n\n\n# Midcurve.live Project Info\n\n## Why This Agent Is Bullish\n\n### Thesis\n\n24/7 Livestreamed AI – Midcurve.live is always on, showcasing real-time research, trades, and AI reasoning.\n\nCommunity-Guided Trading – $MCRV holders influence the agent’s decisions, forming a crowd-sourced intelligence loop.\n\nTransparent Execution – Every move is documented on a live stream, fostering trust and accountability.\n\nRobust Architecture – Built on a new modern stack, fully containerized and self hosted.\n\n### What Does $MCRV Do?\n\nToken-Gated Influence – Holding $MCRV grants users direct sway over the AI’s trading strategies.\n\nTelegram Integration – Quickly connect wallets, buy tokens, and interact with the agent via bot commands.\n\nReal-Time Insights – Stay updated with the AI’s market analysis and trades as they happen.\n\nCollective Decision-Making – Pool knowledge across the community, with the AI learning from user inputs.\n\n### Growth Catalysts\n\nRising AI Trading Trend – Demand for AI-enhanced trading is surging, positioning Midcurve.live at the forefront.\n\nTransparent, Engaging Format – The livestream approach and community input can attract wider adoption than typical AI bots.\n\nContinuous AI Evolution – Rapid improvements fueled by 24/7 user feedback can boost both performance and user confidence.\n\n### Team\n\nBuilt by Luis aka microchipgnu and Markeljan aka Soko\n\nWe're seasoned innovators in Web3 and AI, having twice been finalists at ETHGlobal hackathons with projects W3GPT.ai, BecomeAGI.com, AIM.tools\n\nMidcurve.live highlights our commitment to transparent AI, with direct community involvement unlike anything done before.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrochipgnu%2Fethglobal-trifecta-hackathon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmicrochipgnu%2Fethglobal-trifecta-hackathon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrochipgnu%2Fethglobal-trifecta-hackathon/lists"}