#color-scheme #color-themes #base-16 #themes #tinted-theming #generate

tinted-scheme-extractor

A tool to create a Tinted Theming scheme based on a provided image

9 releases (4 breaking)

0.5.0 Oct 5, 2024
0.4.0 Sep 23, 2024
0.3.2 Jul 12, 2024
0.2.2 Jun 18, 2024
0.1.0 Jun 16, 2024

#258 in Images

Download history 30/week @ 2024-08-18 7/week @ 2024-08-25 4/week @ 2024-09-01 1/week @ 2024-09-08 26/week @ 2024-09-15 283/week @ 2024-09-22 174/week @ 2024-09-29 178/week @ 2024-10-06 25/week @ 2024-10-13 20/week @ 2024-10-20 3/week @ 2024-10-27 10/week @ 2024-11-10 29/week @ 2024-11-17 4/week @ 2024-11-24 9/week @ 2024-12-01

52 downloads per month
Used in tinty

MPL-2.0 license

32KB
650 lines

Tinted Scheme Extractor

Matrix Chat Crates.io LICENSE

tinted-scheme-extractor is a Tinted Theming Rust library which generates a Base16 theme based a provided image.

Note: This is early stages so the API is subject to change.

Install

cargo add tinted-scheme-extractor

Usage

use std::path::PathBuf;
use tinted_scheme_extractor::{create_scheme_from_image, SchemeParams, System, Variant};

fn main() {
    let image_path = PathBuf::from("./path/to/file.png");
    let name = "Your scheme name".to_string();
    let slug = "your-scheme-slug".to_string();
    let description = Some("Optional description".to_string());
    let variant = Variant::Dark;
    let system = System::Base16;
    let verbose = false;
    let author = "Your name".to_string();

    let scheme = create_scheme_from_image(SchemeParams {
        image_path,
        author,
        description,
        name,
        slug,
        system,
        verbose,
        variant,
    }).unwrap();

    println!("{}", &scheme);
}

Inspiration

Initially I wasn't sure if I wanted to continue Flavours development or to build something new. I brought this up with Misterio77 and he suggested building something new from scratch. This project is a part of rebuilding the Flavours functionality in Tinty.

Dependencies

~12–24MB
~317K SLoC