Skip to content

Thomas-Fernandes/GTFR-CG

Repository files navigation

📜 Genius traductions françaises Content Generator 🎞️

Description   |   Requirements   |   Usage   |   Changelog

 

The technical stack at play: Python Flask React Vite TScript  | formerly:  GIMP Premiere

 

Python version Last version released GitHub last commit
GitHub stars GitHub issues GitHub contributors GitHub repository size

 

📝 Description

GTFR-CG is a React-Python web application that generates content serving the creation and publication of Genius traductions françaises YouTube videos.

  • Generate artwork, lyrics cards and YouTube descriptions that can then be edited into translation videos.
  • Save time by interacting with the APIs of iTunes and Genius to automate parts of the edition process!
  • One day, maybe one day, this application maybe even be able to generate whole videos by itself...

qdmtf The application was thought, designed, programmed and crafted by Frenchmen 🇫🇷 @Thomas-Fernandes and @QuentindiMeo.

Disclaimer: the creators of this application do not claim any rights on the brands at play. All rights belong to their respective owners.

 

⚙️ Requirements

This application was tested on, and designed for Windows 11 and Ubuntu 22.04.
All the required back end modules are listed in the requirements file. They will be installed upon launch of the back end.
All the required front end software and modules can be installed by running the installer file with Python.

Caution

GTFR-CG's back end is written in Python 3.11. It is compatible with later versions, but not with anterior versions.
You can check your Python version by running python --version in your terminal.

Important

In order for GTFR-CG's lyrics fetch feature to work, you need to declare a GENIUS_API_TOKEN variable in the .env file at the root of the repository.
Find more information about it by reading through the tutorial .env file.
Without this token, the GTFR-CG application will still run, but the lyrics fetch feature will be disabled.

 

🎥 Usage

   🗜️  Build

python installer.py # will install back end modules, front end software & modules

 

   🚀  Launch

Back end:

python launcher.py # will check needed modules and install, then launch the application

Front end:

cd front-end/ && npm run dev # will launch the front end of the application

 

   📑  General Information

  • By default, the application runs locally on ports 8000 (back) and 4242 (front).
  • The application features 6 major pages:
    • Home: the main page, where your statistics are displayed and you can navigate to Artwork Generation and Lyrics.
    • Tests : the unit tests page, to check the application's integrity.
    • Artwork Generation: the page where you can generate artwork from a local file or an iTunes search.
      • Processed Images: the page where you can download a background image and a YouTube thumbnail.
    • Lyrics: the page where you can fetch lyrics from Genius and convert them to lyrics blocks.
      • Cards Generation: the page where cards are generated from the Lyrics text blocks.
  • The application features a toast notification system that will give you feedback upon actions.
  • Most of the application's back end actions and reactions will be logged in the terminal via Python.
    • You can define a minimum severity level in the .env file, choosing the logger verbosity's. Check out .env.example for more information.
  • Your user statistics are stored at the root of the repository in a file named stats.json.
  • If you encounter external Python module issues, try running pip install -r requirements.txt --force-reinstall for a complete reinstall.

Note

Report any kind of malfunction or request a feature by opening an issue!

 

🗃️ Changelog

  • [1.0.0] May 09 2024: Hello World! — Project creation.
  • [1.1.0] Jun 23 2024: Welcome — Project now supports artwork generation from a local file.
    • [1.1.1] Jun 24 2024: Project gets a new visual appearance. #005
  • [1.2.0] Jun 27 2024: Thumbnails — Project now supports artwork generation from iTunes. #010
    • [1.2.1] Jun 29 2024: Project now generates thumbnails with 9 possible logo positions. #022
    • [1.2.2] Jul 04 2024: Project now has a Python logger, navigation, better GitHub QoL. #046
    • [1.2.3] Jul 06 2024: Project now supports artwork generation without center artwork, has statistics and gets reworked... #059
      • routes are reworked and redirection is implemented
      • toasts are implemented as a feedback system of web actions
      • requirements.txt and this README are created
    • [1.2.4] Jul 20 2024: Project now supports artwork generation from a YouTube link, gets some more reworks. #086
      • a loading spinner now comes alongside action buttons
      • documentation strings are added to the codebase
      • the artwork generation page is reworked to welcome YT section and better UX
      • the logger system is reinforced to log more actions and be customizable
  • [1.3.0] Aug 19 2024: Lyrics Fetch — Project now supports lyrics fetching from Genius and their conversion to lyrics blocks. #089
    • [1.3.1] Aug 19 2024: Project's front end is fully migrated to React Typescript with Vite. #088
    • [1.3.2] Sep 14 2024: Project now has a unit tests page, better .env handling with a tutorial file. #092
  • [1.4.0] Sep 17 2024: Lyrics Cards — Project now supports automatic cards generation from text blocks. #093
    • [1.4.1] Sep 29 2024: Cards can now be generated manually, improved QoL in card content creation. #120
    • [1.4.2] Oct 24 2024: The API is now fully documented with Flask-RESTx & Swagger. #139
    • [1.4.3] Oct 26 2024: Cards can now be generated with full customization and edited in real time. #140
    • [1.4.4] Oct 29 2024: All major European and Asian fonts are now handled, back end functional logic is reinforced. #152
  • [1.5.0] Coming later...: Boost! — Project will see its existing functionalities sharpened. #???
  • [1.6.0] Coming later...: Koh-Lanta — Project will be unified in an all-in-one application. #???
  • [2.0.0] Coming later...: Endgame — Project will feature automated video edition with AI sync. #???

Back to top

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published