cssman-cli

A library to generates design tokens via CLI or method call.

https://github.com/dylarcher/cssman-cli

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.6%) to scientific vocabulary

Keywords

cli design design-tokens library node nodejs npm token

Keywords from Contributors

interactive mesh interpretability profiles sequences generic projection standardization optim embedded
Last synced: 6 months ago · JSON representation

Repository

A library to generates design tokens via CLI or method call.

Basic Info
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • Open Issues: 3
  • Releases: 0
Topics
cli design design-tokens library node nodejs npm token
Created 9 months ago · Last pushed 8 months ago
Metadata Files
Readme Contributing License Code of conduct Citation Codeowners Security

README.md

Cssman CLI 🪙

Cssman CLI is a powerful CLI tool for generating and managing design tokens from your style source. It helps streamline your design system workflow by automating the creation of design tokens, ensuring consistency across platforms and projects.

Table of Contents

Core Purpose & Goals

  • What problem does your project solve? Cssman CLI solves the problem of managing and synchronizing design tokens across different platforms and projects by automating their generation from a single source of truth.
  • What are the main goals or vision for this project? To provide a flexible, easy-to-use, and extensible tool for design system token management, improving developer workflow and ensuring design consistency.
  • Who is the intended audience or user base? Developers and designers working with design systems who need a reliable way to manage and transform design tokens.

Key Features ✨

  • Automated Token Generation: Generate design tokens for various platforms from a single style source.
  • Multi-Platform Support: Easy integration with popular styling formats (e.g., JSON, CSS Variables, SCSS, JS objects - Specify/verify actual supported formats).
  • Extensible Architecture: Allows for custom transformations and outputs to fit specific project needs.
  • Configuration Driven: Manage token generation through a simple configuration file.
  • CLI Interface: Provides commands for initializing, building, and cleaning token artifacts.

Getting Started

Prerequisites

  • Node.js (Specify version, e.g., v14 or higher)
  • npm (Specify version, e.g., v6 or higher) or yarn

Installation 🚀

```bash

Using npm (Node.js package manager)

npm install -g cssman-cli

Using yarn

yarn global add cssman-cli

For local project usage

npm install --save-dev cssman-cli

or

yarn add --dev cssman-cli ``` (Adjust installation instructions based on the actual package manager and distribution method if different, e.g., direct download, other package managers.)

Quick Start 🏁

  1. Initialize Configuration: bash cssman init This will create a cssman.config.js (or similar, e.g. cssman.json) file in your project root.

  2. Define your style source(s) in the configuration file. Example cssman.config.js: javascript // cssman.config.js (example) module.exports = { source: ['./styles/tokens.json'], // Path to your token definitions platforms: { css: { transformGroup: 'css', buildPath: 'dist/css/', files: [{ destination: 'variables.css', format: 'css/variables' }] }, // Add other platforms like scss, js, android, ios etc. } }; (This is a common structure for token tools like Style Dictionary; adjust if Cssman's config is different).

  3. Build your tokens: bash cssman build Your generated tokens will be in the dist/ directory (or as configured).

Usage 🛠️

Commands

  • cssman init: Initialize a new configuration file.
  • cssman build: Build/generate tokens based on the configuration.
  • cssman clean: Remove previously built artifacts.
  • cssman --help: Display help information for all commands.
  • cssman <command> --help: Display help for a specific command.

(Add or modify commands as per actual CLI functionality)

Configuration

Cssman CLI is configured via a cssman.config.js (or .json, .yaml) file in your project root.

Key configuration options: * source: An array of glob patterns for your token source files. * platforms: An object defining output platforms (e.g., CSS, JS, SCSS, Android, iOS). Each platform specifies transformations, build path, and output files.

Refer to the Full Configuration Documentation for more details. (Consider creating a more detailed configuration doc if needed. Ensure this link is valid or removed if no such doc exists yet).

How to Contribute 🤝

We welcome contributions from the community! Whether it's reporting a bug, suggesting a feature, or submitting a pull request, your help is appreciated.

Please read our Contributing Guidelines to get started. (Ensure this path is correct, the template linked to .github/CONTRIBUTING.md)

Code of Conduct 📜

To ensure a welcoming and inclusive environment, we expect all contributors and participants to adhere to our Code of Conduct. (Ensure this file exists or is created)

License 📄

This project is licensed under the MIT License.


Remember to update placeholders (like feature descriptions, version numbers, supported formats, configuration details, command list, and linked document paths) with actual information specific to cssman-cli.

Owner

  • Name: Dylan Archer
  • Login: dylarcher
  • Kind: user
  • Location: Raleigh, NC 27612
  • Company: DDS @ Dell Technologies, Inc.

Primarily used for demo code & helping others. Don't use code from here unless you test it.

GitHub Events

Total
  • Delete event: 15
  • Issue comment event: 9
  • Push event: 16
  • Pull request review comment event: 8
  • Pull request review event: 22
  • Pull request event: 30
  • Create event: 21
Last Year
  • Delete event: 15
  • Issue comment event: 9
  • Push event: 16
  • Pull request review comment event: 8
  • Pull request review event: 22
  • Pull request event: 30
  • Create event: 21

Committers

Last synced: 7 months ago

All Time
  • Total Commits: 32
  • Total Committers: 3
  • Avg Commits per committer: 10.667
  • Development Distribution Score (DDS): 0.531
Past Year
  • Commits: 32
  • Committers: 3
  • Avg Commits per committer: 10.667
  • Development Distribution Score (DDS): 0.531
Top Committers
Name Email Commits
Dylan Archer d****r@g****m 15
google-labs-jules[bot] 1****] 13
dependabot[bot] 4****] 4

Issues and Pull Requests

Last synced: 7 months ago

All Time
  • Total issues: 0
  • Total pull requests: 26
  • Average time to close issues: N/A
  • Average time to close pull requests: 2 days
  • Total issue authors: 0
  • Total pull request authors: 2
  • Average comments per issue: 0
  • Average comments per pull request: 0.35
  • Merged pull requests: 15
  • Bot issues: 0
  • Bot pull requests: 13
Past Year
  • Issues: 0
  • Pull requests: 26
  • Average time to close issues: N/A
  • Average time to close pull requests: 2 days
  • Issue authors: 0
  • Pull request authors: 2
  • Average comments per issue: 0
  • Average comments per pull request: 0.35
  • Merged pull requests: 15
  • Bot issues: 0
  • Bot pull requests: 13
Top Authors
Issue Authors
Pull Request Authors
  • dependabot[bot] (26)
  • dylarcher (20)
Top Labels
Issue Labels
Pull Request Labels
dependencies (26) javascript (25) enhancement (12) documentation (4) chore (2) github_actions (1)

Dependencies

.github/workflows/ci.yml actions
  • actions/checkout v3 composite
  • actions/setup-node v3 composite
package-lock.json npm
  • @eslint-community/eslint-utils 4.7.0 development
  • @eslint-community/regexpp 4.12.1 development
  • @eslint/eslintrc 2.1.4 development
  • @eslint/js 8.57.1 development
  • @humanwhocodes/config-array 0.13.0 development
  • @humanwhocodes/module-importer 1.0.1 development
  • @humanwhocodes/object-schema 2.0.3 development
  • @nodelib/fs.scandir 2.1.5 development
  • @nodelib/fs.stat 2.0.5 development
  • @nodelib/fs.walk 1.2.8 development
  • @ungap/structured-clone 1.3.0 development
  • acorn 8.14.1 development
  • acorn-jsx 5.3.2 development
  • ajv 6.12.6 development
  • ansi-regex 5.0.1 development
  • ansi-styles 4.3.0 development
  • argparse 2.0.1 development
  • balanced-match 1.0.2 development
  • brace-expansion 1.1.11 development
  • callsites 3.1.0 development
  • chalk 4.1.2 development
  • color-convert 2.0.1 development
  • color-name 1.1.4 development
  • concat-map 0.0.1 development
  • cross-spawn 7.0.6 development
  • debug 4.4.1 development
  • deep-is 0.1.4 development
  • doctrine 3.0.0 development
  • escape-string-regexp 4.0.0 development
  • eslint 8.57.1 development
  • eslint-scope 7.2.2 development
  • eslint-visitor-keys 3.4.3 development
  • espree 9.6.1 development
  • esquery 1.6.0 development
  • esrecurse 4.3.0 development
  • estraverse 5.3.0 development
  • esutils 2.0.3 development
  • fast-deep-equal 3.1.3 development
  • fast-json-stable-stringify 2.1.0 development
  • fast-levenshtein 2.0.6 development
  • fastq 1.19.1 development
  • file-entry-cache 6.0.1 development
  • find-up 5.0.0 development
  • flat-cache 3.2.0 development
  • flatted 3.3.3 development
  • fs.realpath 1.0.0 development
  • glob 7.2.3 development
  • glob-parent 6.0.2 development
  • globals 13.24.0 development
  • graphemer 1.4.0 development
  • has-flag 4.0.0 development
  • ignore 5.3.2 development
  • import-fresh 3.3.1 development
  • imurmurhash 0.1.4 development
  • inflight 1.0.6 development
  • inherits 2.0.4 development
  • is-extglob 2.1.1 development
  • is-glob 4.0.3 development
  • is-path-inside 3.0.3 development
  • isexe 2.0.0 development
  • js-yaml 4.1.0 development
  • json-buffer 3.0.1 development
  • json-schema-traverse 0.4.1 development
  • json-stable-stringify-without-jsonify 1.0.1 development
  • keyv 4.5.4 development
  • levn 0.4.1 development
  • locate-path 6.0.0 development
  • lodash.merge 4.6.2 development
  • minimatch 3.1.2 development
  • ms 2.1.3 development
  • natural-compare 1.4.0 development
  • once 1.4.0 development
  • optionator 0.9.4 development
  • p-limit 3.1.0 development
  • p-locate 5.0.0 development
  • parent-module 1.0.1 development
  • path-exists 4.0.0 development
  • path-is-absolute 1.0.1 development
  • path-key 3.1.1 development
  • prelude-ls 1.2.1 development
  • punycode 2.3.1 development
  • queue-microtask 1.2.3 development
  • resolve-from 4.0.0 development
  • reusify 1.1.0 development
  • rimraf 3.0.2 development
  • run-parallel 1.2.0 development
  • shebang-command 2.0.0 development
  • shebang-regex 3.0.0 development
  • strip-ansi 6.0.1 development
  • strip-json-comments 3.1.1 development
  • supports-color 7.2.0 development
  • text-table 0.2.0 development
  • type-check 0.4.0 development
  • type-fest 0.20.2 development
  • uri-js 4.4.1 development
  • which 2.0.2 development
  • word-wrap 1.2.5 development
  • wrappy 1.0.2 development
  • yocto-queue 0.1.0 development
package.json npm
  • eslint ^8.0.0 development
  • jest ^29.0.0 development
  • axios ^1.0.0
  • commander ^10.0.0
  • css-tree ^2.3.1