npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@visualkit/theming

v0.0.15

Published

VisualKit Theming est un package qui permet de gerer des variables CSS de couleurs avec une palette et ton de couleur.

Downloads

49

Readme

VisualKit Theming

VisualKit Theming est un package qui permet de gerer des variables CSS de couleurs avec une palette et ton de couleur.

Concept

Le concept de @visualkit-theming est de créer un thème avec ses propriétés. Si ses propriétés comporte des couleurs, des variantes de couleurs et des variantes d'opacités seront créées. A ceci le concept de @visualkit qui est d'avoir des propriétés de palettes, de tons et autres propriétés.

Palette de couleurs

Une palette de couleur est une composition de 5 couleurs qui sont nommé de la manière suivante :

  • one : slot 1
  • two : slot 2
  • three : slot 3
  • four : slot 4
  • five : slot 5
  • error : Couleur représentant le danger
  • error-text : Couleur du texte représentant le danger
  • warning : Couleur représentant l'avertissement
  • warning-text : Couleur du texte représentant l'avertissement
  • success : Couleur représentant le succès
  • success-text : Couleur du texte représentant le succès

Ton

Un ton est la couleur d'arrière plan et dérivé.

  • layer : Couleur de l'arrière plan de base
  • high : Couleur de l'arrière plan foncé
  • text : Couleur du texte
  • dark : Couleur sombre dans le ton
  • light : Couleur clair dans le ton
  • white : Couleur arbitraire représentant la couleur blanche
  • black : Couleur arbitraire représentant la couleur noir

Autres propriétés

  • --theme-radius
  • --theme-border-width
  • --theme-border-color
  • --theme-border-style
  • ...

Usages

Créer un thème

Exemple : On ajout une propriété de type donnée

const myTheme =  theming({ identifier:  'example-id'  })
const property = themingSlot()
    .name('border-radius')
    .value('7px')
    .type(ThemeTypes.Data)
    .series(ThemeSeries.Property)
    
themeProps
    .slot(property)
    .render()

Exemple : On ajout une propriété de type couleur

const myTheme =  theming({ identifier:  'example-id'  })
const property = themingSlot()
    .name('border-color')
    .value('#777777')
    .type(ThemeTypes.Color)
    .series(ThemeSeries.Property)
    
themeProps
    .slot(property)
    .render()

Exemple : On ajout une couleur dans la palette

const myTheme =  theming({ identifier:  'example-id'  })
const property = themingSlot()
    .name('one')
    .value('7px')
    .type(ThemeTypes.Color)
    .series(ThemeSeries.Palette)
    
themeProps
    .slot(property)
    .render()

Exemple : On ajout une couleur dans le ton

const myTheme =  theming({ identifier:  'example-id'  })
const property = themingSlot()
    .name('layer')
    .value('7px')
    .type(ThemeTypes.Color)
    .series(ThemeSeries.Tone)
    
themeProps
    .slot(property)
    .render()

Utiliser un thème

On souhaite activer le thème avec l'identité example-id

<html theme:palette="example-id" theme:tone="example-id" >
    <head>
    ...
    </head>
    ...

On souhaite utiliser les propriétés dans un fichier de style CSS

body{
    background-color: var(--theme-layer)
}

On utilise donc les variable CSS avec le préfixe --theme- et nom de la propriété layer

Variables de Palette conseillés

| Nom |Variable CSS | Définition | |----------------|-------------------------------|-----------------------------| |one | --theme-one | Couleur 1 du thème | |two | --theme-two | Couleur 2 du thème | |three | --theme-three | Couleur 3 du thème | |four | --theme-four | Couleur 4 du thème | |five | --theme-five | Couleur 5 du thème | |error | --theme-error | Couleur représentant le danger | |error-text | --theme-error-text | Couleur du texte représentant le danger | |warning | --theme-warning | Couleur représentant l'avertissement | |warning-text | --theme-warning-text | Couleur du texte représentant l'avertissement | |success | --theme-success | Couleur représentant le succès | |success-text | --theme-five | Couleur du texte représentant le succès |

Variables de Ton conseillés

| Nom |Variable CSS | Définition | |----------------|-------------------------------|-----------------------------| |layer | --theme-layer | Couleur de l'arrière plan de base | |high | --theme-high | Couleur de l'arrière plan foncé | |text | --theme-text | Couleur du texte | |dark | --theme-dark | Couleur sombre dans le ton | |light | --theme-light | Couleur clair dans le ton | |white | --theme-white | Couleur arbitraire représentant la couleur blanche | |black | --theme-black | Couleur arbitraire représentant la couleur noir |


Créer un thème avec les balises meta.kit:theming

Déclaration

<html 
    theme:palette="default" theme:tone="default" > 
<head>
    ...
    <meta 
	    name="kit:theming" 
	    property="NOM_PROPRIETE" 
	    content="VALEUR_PROPRIETE" 
	    theme:palette="LIE_A_UNE_PALETTE"
	    theme:tone="LIE_A_UNE_TON"
	    theme:category="LIE_A_UNE_CATEGORY_DE_PROPRIETE"
	    theme:type="color|data" 
	    theme:series="palette|tone|property" 
	    theme:intensity-ratio="RATIO_D_INTENSITE_DE_COULEUR" 
	    theme:opacity-ratio="RATIO_OPACITE_DES_COULEURS"
	    >
   ...

Utilisation

En javascript appelez la fonction runtine() configurer le thème en fonction des balises métas

import { useMetaTheme } from "@visualkit/theming";

// Rendre la propriété des balise metas disponible partout
useMetaTheme(); 

// Donner le nom `default` à toutes les variables de palettes
useMetaTheme({ palette: "default" }); 

// Donner le nom `default` à toutes les variables de tons
useMetaTheme({ tone: "default" }); 

// Donner le nom `default` à toutes les variables des autres propriétés
useMetaTheme({ category: "default" }); 

;)