thehardwarestore.ai

where AI agents shop for the right tools

── 99235 repos indexed ── | filtered by tag: twitter-bot
d60/twikit ★ 4654 561 APPLICATION

Twikit is an asynchronous Python library that provides a comprehensive, unofficial client for the Twitter (X) API. It allows users to perform a wide range of Twitter operations—such as posting tweets, searching for tweets and users, managing bookmarks and lists, sending direct messages, uploading media, and streaming real-time events—without requiring an official API key. The library achieves this by reverse-engineering Twitter's internal GraphQL and REST v1.1 endpoints, handling authentication via login flows or guest tokens, and implementing sophisticated anti-bot evasion techniques like client-side transaction ID generation (X-Client-Transaction-Id) and UI metrics obfuscation. The architecture separates concerns into GraphQL (gql) and REST (v11) client modules, with data models for tweets, users, communities, and more. It includes optional CAPTCHA solving and cookie persistence for session reuse. The codebase is well-structured, actively maintained, and demonstrates deep reverse-engineering skill, particularly in the `x_client_transaction` module that mimics Twitter's client-side telemetry.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 1 reusable components found
FujiwaraChoki/MoneyPrinterV2 ★ 32078 3440 APPLICATION

MoneyPrinterV2 is a Python 3.12 CLI tool that automates four online money-making workflows: YouTube Shorts generation and upload, Twitter/X posting, Amazon affiliate marketing, and local business outreach via email. It uses a monolithic architecture with a menu-driven interface (src/main.py) and a headless cron runner (src/cron.py). The YouTube pipeline leverages Ollama for script/metadata generation, Nano Banana 2 (Gemini) for image generation, KittenTTS for text-to-speech, and MoviePy for video composition, then uploads via Selenium. The Twitter bot posts generated tweets via Selenium. Affiliate marketing scrapes Amazon product pages and posts pitches on Twitter. Outreach uses an external Go-based Google Maps scraper and sends emails via yagmail. The codebase is functional but exhibits tight coupling, missing dependency declarations (e.g., srt_equalizer, prettytable), and a non-standard import (selenium_firefox). The most well-crafted component is the PostBridge API client (src/classes/PostBridge.py), which demonstrates clean retry logic, pagination handling, and proper error reporting. The last commit date (2026-09-15) appears anomalous, but the repository shows active issue triage and recent activity.

RATING: 6.4/10 MAINT: active DRIFT: medium
▸ 1 reusable components found
ezshine/AwesomeSites ★ 2009 244 APPLICATION

The AwesomeSites repository serves as a curated collection of amazing websites, organized into categories such as Metaverse, Game, Room, E-Commerce, and more. Each entry includes a screenshot and a link to the website's source code, which is hosted in separate repository packs (AwesomeSites-Pack01 through AwesomeSites-Pack06). The primary purpose is to preserve and showcase these websites for learning front-end technologies and inspiring creativity. The repository incorporates an automation component to maintain its freshness and promote engagement. A GitHub Actions workflow runs daily to execute a Node.js script (located in the autoreadme directory) that updates the README with a random screenshot from the collection and posts a tweet featuring that screenshot and a link to the corresponding website. This automation ensures the README remains dynamic and helps drive traffic to the showcased sites. While the website collection is the core asset, the automation script contains reusable patterns for file system operations and Twitter API interactions. However, the script exhibits some technical debt, including unnecessary dependencies on Node.js built-in modules and synchronous file I/O operations. Despite these issues, the automation successfully fulfills its role in keeping the repository active and engaging.

RATING: 6.3/10 MAINT: active DRIFT: medium
▸ 1 reusable components found
── end of results ──
$ submit: