- 📍 Overview
- 📦 Features
- 📂 Structure
- 💻 Installation
- 🏗️ Usage
- 🌐 Hosting
- 📄 License
- 👏 Authors
This repository contains a Minimum Viable Product (MVP) that automates the collection of Twitter data and stores it in a structured Markdown format on GitHub, leveraging Google's Gemini AI for content processing. This addresses the need for researchers and developers to efficiently collect and organize relevant Twitter content.
Feature | Description | |
---|---|---|
1 | Twitter Authentication & Scraping | Authenticates with the Twitter API v2 and scrapes tweets based on specified keywords or hashtags. Handles rate limits and errors. |
2 | Gemini AI Content Generation | Uses Google's Gemini API to convert scraped tweet data into well-formatted Markdown files. |
3 | GitHub Repository Management | Interacts with a designated GitHub repository to commit the generated Markdown files to a specified folder. Handles rate limits and errors. |
4 | Automated Timely Execution | Automates the entire process using Node-cron to run at specified time. Includes error handling and discord webhook notifications. |
- Node.js v16+
- npm 8+
- MongoDB
- A Google Cloud Project with the Gemini API enabled
- A GitHub account and Personal Access Token
- Twitter account credentials
- Clone and install:
git clone https://github.com/Drix10/Twitter-Gemini-GitHub-MVP.git
cd Twitter-Gemini-GitHub-MVP
npm install
- Create a
.env
file with the following configuration:
GITHUB_PAT= # The GitHub personal access token
GEMINI_API_KEY= # The Gemini API key
MONGODB_URI= # The MongoDB URI
TWITTER_USERNAME= # Your Twitter username
TWITTER_PASSWORD= # Your Twitter password
DISCORD_WEBHOOK_URL= # Your Discord webhook URL
GITHUB_REPO=userName/repoName # The repository where the tweets will be saved
GITHUB_FOLDER_ONE= # The folder where the tweets will be saved
GITHUB_FOLDER_TWO= # The folder where the tweets will be saved
GITHUB_FOLDER_THREE= # The folder where the tweets will be saved
CRON_SCHEDULE=0 */5 * * * # The cron schedule to run the backend
- Start the server:
npm run start
- The application will run on port 3000 with hourly cron jobs by default.
This Minimum Viable Product (MVP) is licensed under the GNU AGPLv3 license.
This MVP was entirely generated using artificial intelligence through CosLynx.com.
No human was directly involved in the coding process of the repository: Twitter-Gemini-GitHub-MVP
Note: A final version was finished and pushed via a human due to a special case.
For any questions or concerns regarding this AI-generated MVP, please contact CosLynx at:
- Website: CosLynx.com
- Twitter: @CosLynxAI
Create Your Custom MVP in Minutes With CosLynxAI!