TrendTags is a real-time tag generator powered by YouTube trends, built with Flask and a clean, responsive frontend.
- π₯ Real-time tag generation from YouTube trending videos
- πͺ One-click βcopy all tagsβ functionality
- π± Clean, responsive, and modern interface
- β‘ Fast Flask-powered backend
- π‘οΈ Auto-updating tag database
- π¨βπ» Python linting, CodeQL security scanning via GitHub Actions
- Python >=3.12
- A YouTube API key (get one from Google Cloud Console)
-
Clone the repository and navigate to it:
git clone https://github.com/imDarshanGK/TrendTags.git cd TrendTags -
Create a
.envfile:cp .env.example .env nano .env # Add your actual API keysEdit
.envto set your Youtube API key. The Youtube API key is required, but you may optionally specify a Rapid API key, as well as the port the application will run on and the debug mode. When deploying to product, debug mode should be disabled.Preliminary validation will be ran on your API keys prior to the app fully launching. If you receive an error, inspect the log file to identify what may resolve your issue.
-
Install dependencies:
pip install -r requirements.txt # or, if using something like uv uv sync -
Run the application:
python app.py # or, if using something like uv uv run app.py
- Enter your video topic (e.g., "cooking", "tech reviews")
- Select the number of tags (10β30)
- Click "Generate Tags"
- Copy tags with a single click
TrendTags/
βββ .github/ # CI/CD workflows
β βββ workflows/ # GitHub Actions
βββ config/ # Configuration files
β βββ logging_config.json # Logging configuration file
βββ logs/ # Source code
β βββ debug_log.log # Logging file
βββ src/ # Source code
β βββ config.py # Configuration
β βββ ... # Other modules
βββ static/ # Frontend assets
β βββ css/ # Stylesheets
β βββ js/ # JavaScript
βββ templates/ # HTML templates
βββ tests/ # Pytest tests
β βββ integration/ # Integration level tests
β βββ unit/ # Unit level tests
βββ env.example # Example environment file
βββ app.py # Main Flask application
βββ requirements.txt # Python dependencies
βββ LICENSE # MIT License
βββ README.md # This filePython code style and tests:
flake8 src tests app.py
black --check src tests app.py
pytestTrendTags uses CodeQL for code scanning via GitHub Actions. You can view βCode scanning resultsβ and security alerts in the Security tab of your repository.
We welcome contributions! Please see our CONTRIBUTING.md for:
- How to report issues
- Code style guidelines
- Pull request process
- Commit message standards
This project is licensed under the MIT License. See the LICENSE file for details.