beatprints.js
Version:
A Node.js version of the original Python BeatPrints project (https://github.com/TrueMyst/BeatPrints/) by TrueMyst. Create eye-catching, Pinterest-style music posters effortlessly. BeatPrints integrates with Spotify and LRClib API to help you design custom
68 lines (67 loc) • 2.02 kB
JavaScript
import { dirname, join } from "node:path";
import { fileURLToPath } from "node:url";
export const __filename = fileURLToPath(import.meta.url);
export const __dirname = dirname(__filename);
export var Size;
(function (Size) {
// Heading's Width (Max)
Size.HEADING_WIDTH = 1760;
// Resolution Size
Size.COVER = [2040, 2040];
Size.SCANCODE = [660, 170];
// Track/Album Metadata
Size.TRACKS = 83;
Size.HEADING = 160;
Size.ARTIST = 110;
Size.DURATION = 90;
Size.LYRICS = 95;
Size.LABEL = 60;
// Album's Tracklist
Size.MAX_ROWS = 5;
Size.MAX_WIDTH = 2040;
// Space between texts
Size.SPACING = 70;
// Color Palette
Size.PL_WIDTH = 340;
Size.PL_HEIGHT = 85;
})(Size || (Size = {}));
export var Position;
(function (Position) {
Position.COVER = [120, 120];
Position.HEADING = [120, 2400];
Position.ARTIST = [120, 2575];
Position.LYRICS = [120, 2750];
Position.TRACKS = [120, 2750];
Position.LABEL = [2160, 3230];
Position.DURATION = [2160, 2550];
Position.PALETTE = [120, 2240];
Position.ACCENT = [0, 3440, 2280, 3480];
Position.SCANCODE = [90, 3220];
})(Position || (Position = {}));
export var Color;
(function (Color) {
// Default Themes
Color.DARK = [193, 189, 178];
Color.LIGHT = [50, 47, 48];
// Extra Themes
Color.CATPPUCCIN = [205, 214, 244];
Color.GRUVBOX = [221, 199, 161];
Color.NORD = [216, 222, 233];
Color.ROSEPINE = [224, 222, 244];
Color.EVERFOREST = [211, 198, 170];
// Spotify Scancode
Color.WHITE = [255, 255, 255, 255];
Color.TRANSPARENT = [0, 0, 0, 0];
})(Color || (Color = {}));
export var ThemesSelector;
(function (ThemesSelector) {
ThemesSelector.THEMES = {
Light: Color.LIGHT,
Dark: Color.DARK,
Catppuccin: Color.CATPPUCCIN,
Gruvbox: Color.GRUVBOX,
Nord: Color.NORD,
RosePine: Color.ROSEPINE,
Everforest: Color.EVERFOREST,
};
})(ThemesSelector || (ThemesSelector = {}));