β˜•οΈ BeatPrints ============== .. raw:: html

BeatPrints: Quick, stylish posters for your favorite tracks and albums! πŸŽ·β˜•οΈ

Create eye-catching, pinterest-style music posters effortlessly.
BeatPrints integrates with Deezer and LRClib API to help you design custom posters for your favorite tracks or albums. πŸ€

Maintenance GitHub Repo stars Downloads Code Formatter Static Badge

.. image:: https://i.imgur.com/PDcc2Qp.jpeg :alt: examples .. centered:: πŸ“” Check out the `documentation `_! πŸ“¦ Installation --------------- You can install BeatPrints via: .. code-block:: bash # For pip users pip install BeatPrints # For poetry users poetry add BeatPrints Or if you prefer using just the CLI: .. code-block:: bash pipx install BeatPrints This will install the CLI, making it ready for you to use. For more information, check out `pipx `_. πŸš€ Quick Start -------------- Here's how you can create your first **track / album** poster. 🎡 Track ~~~~~~~~~ .. code-block:: python from BeatPrints import deez, lyrics, poster # Initialize components dz = deez.Deezer() ps = poster.Poster("./") # Save the poster in the current directory # Search for the track and fetch metadata search = dz.search(query="Apples - Rocco", stype="track", limit=1) # Grab the Track ID from the first result id = search[0]["id"] # Fetch full track metadata metadata = dz.get_track(id) # Get lyrics and check if the track is instrumental lrc = lyrics.Lyrics(metadata).get_lyrics() # Use a placeholder for instrumentals; otherwise pick specific lines lyrics = ( "It's an instrumental track :>" if lrc.check_instrumental(metadata) else lrc.select_lines("11-14") ) # Generate and save the poster ps.track(metadata=metadata, lyrics=lyrics, accent=False, theme="Light") πŸ’Ώ Album ~~~~~~~~~ .. code-block:: python from BeatPrints import poster, deez # Initialize components dz = deez.Deezer() ps = poster.Poster("./") # Save the poster in the current directory # Search for the album and fetch metadata search = dz.search(query="Charm - Clairo", stype="album", limit=1) # Grab the Album ID from the first result id = search[0]["id"] # Fetch full album metadata metadata = dz.get_album(id) # Generate and save the poster ps.album(metadata=metadata, indexing=False, accent=True, theme="Light") Here's what the posters look like: .. list-table:: :widths: 50 50 :header-rows: 1 * - **Track: Apples by Rocco** - **Album: Charm by Clairo** * - .. image:: https://i.imgur.com/09ExFbx.jpeg :alt: Track Example - .. image:: https://i.imgur.com/MUkQAb6.jpeg :alt: Album Example πŸ₯ž CLI ------ Here's a short video showing how to generate posters using the CLI. For more information refer to the `documentation `_. .. video:: https://github.com/user-attachments/assets/3efb7028-c533-4bf4-880b-da3a71f8a3db :width: 700 🎨 Themes --------- BeatPrints currently offers you **6 additional themes** to use! .. raw:: html

Dark Catppuccin Gruvbox Nord RosΓ©pine Everforest

For more examples, check out the `examples directory `_. ✨ Features ----------- .. list-table:: :widths: 5 30 65 :header-rows: 1 * - - Feature - Description * - πŸ“· - **Polaroid filter for covers** - Give your track or album covers a vintage Polaroid aesthetic. * - 🌐 - **Multi-language support** - Supports Latin, Hindi, Bengali, Russian, Japanese, Chinese, and Korean. * - πŸ–ΌοΈ - **Custom cover art** - Use your own images instead of the default track or album artwork. * - 🎨 - **Theme customization** - Switch between multiple built-in themes to match your style. 🀝 Contributors --------------- Thank you to all contributors for making BeatPrints better! .. raw:: html

πŸ’‘ Why BeatPrints? ------------------ I created this project after finding out that people sell these posters on `Etsy `_ at high prices, offering only digital downloads instead of shipping actual posters. I wanted to make it free for everyone to print themselves, as I believe my posters are simpler, cleaner, and prettier. ❀️ Special Thanks ----------------- - A big thanks to `Spotify Poster Generator `_ by `@AnveshakR `_ for inspiring BeatPrints with amazing ideas! - Shoutout to `@Magniquick `_, `@itsnotrin `_, `@wenbang24 `_ and `@cherriae `_ for their awesome contributions! πŸ“œ License ---------- BeatPrints is distributed under the **Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License**: .. list-table:: :widths: 25 75 :header-rows: 1 * - Term - Details * - **Use** - Free to share and adapt. * - **Attribution** - Provide credit and a link to the license. * - **NonCommercial** - Not for commercial use. * - **ShareAlike** - Adaptations must follow the same license. Read the full license `here `_. .. centered:: Made with πŸ’œ .. centered:: elysianmyst, 2026 πŸ“‹οΈ Table --------- .. toctree:: :maxdepth: 1 guidebook/index reference/index misc/index