{"id":28260160,"url":"https://github.com/opensass/cli","last_synced_at":"2025-07-31T16:04:22.557Z","repository":{"id":219289466,"uuid":"748669343","full_name":"opensass/cli","owner":"opensass","description":"🧩 A CLI to interact with the OpenSASS ecosystem.","archived":false,"fork":false,"pushed_at":"2025-07-21T22:48:51.000Z","size":3272,"stargazers_count":20,"open_issues_count":5,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-23T19:46:18.717Z","etag":null,"topics":["css","dioxus","leptos","next","next-rs","rust","tailwind","tailwindcss","ui","yew"],"latest_commit_sha":null,"homepage":"https://docs.rs/opensass","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/opensass.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-01-26T14:04:07.000Z","updated_at":"2025-06-03T23:02:56.000Z","dependencies_parsed_at":"2024-01-26T15:24:47.758Z","dependency_job_id":"c789c751-f2d3-4803-9937-d8f19a1e2937","html_url":"https://github.com/opensass/cli","commit_stats":null,"previous_names":["next-rs/next-rs","opensass/cli"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/opensass/cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opensass%2Fcli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opensass%2Fcli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opensass%2Fcli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opensass%2Fcli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/opensass","download_url":"https://codeload.github.com/opensass/cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opensass%2Fcli/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268067093,"owners_count":24190282,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-31T02:00:08.723Z","response_time":66,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["css","dioxus","leptos","next","next-rs","rust","tailwind","tailwindcss","ui","yew"],"created_at":"2025-05-20T04:09:24.485Z","updated_at":"2025-07-31T16:04:22.547Z","avatar_url":"https://github.com/opensass.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# 🧩 OpenSASS\n\n[![Crates.io](https://img.shields.io/crates/v/opensass)](https://crates.io/crates/opensass)\n[![Crates.io Downloads](https://img.shields.io/crates/d/opensass)](https://crates.io/crates/opensass)\n![Crates.io License](https://img.shields.io/crates/l/opensass)\n[![made-with-rust](https://img.shields.io/badge/Made%20with-Rust-1f425f.svg?logo=rust\u0026logoColor=white)](https://www.rust-lang.org/)\n[![Rust](https://img.shields.io/badge/Rust-1.85%2B-blue.svg)](https://www.rust-lang.org)\n[![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://github.com/wiseaidev)\n\n[![Join our Discord](https://dcbadge.limes.pink/api/server/b5JbvHW5nv)](https://discord.gg/b5JbvHW5nv)\n\n\u003c!-- absolute url for docs.rs cause assets is excluded from crate --\u003e\n![logo](https://raw.githubusercontent.com/opensass/cli/refs/heads/main/assets/logo.webp)\n\n| 🐧 Linux `(Recommended)` |        🪟 Windows        |\n| :----------------------: | :----------------------: |\n| `cargo install opensass` | `cargo install opensass` |\n| [Download Executable File](https://github.com/opensass/cli/releases/download/v0.0.5/os) | [Download `.exe` File](https://github.com/opensass/cli/releases/download/v0.0.5/os.exe) |\n|         `os -h`          |         `os -h`          |\n\n\u003c/div\u003e\n\n\u003e 🧩 **OpenSASS**: A CLI tool for downloading reusable OpenSASS components from crates.io and integrating them into your WASM frontend projects.\n\n## 📖 Table of Contents\n\n- [Installation](#-installation)\n- [Features](#-features)\n- [Usage](#-usage)\n- [Components](#-components)\n- [Benchmark](#-benchmark)\n- [Contributing](#-contributing)\n- [License](#-license)\n\n## 🚀 Installation\n\nTo install the CLI:\n\n```sh\ncargo install opensass\n```\n\nOr build from source:\n\n```sh\ngit clone https://github.com/opensass/cli.git\ncd cli\ncargo build --release\n```\n\n## ✨ Features\n\n- 🧩 Add OpenSASS component-based crates with a single command.\n- ⚙ Automatically updates `Cargo.toml` with proper features.\n- 🔁 Copies only the `src/` files related to the specified feature.\n\n## 💡 Usage\n\n\u003cvideo src=\"https://github.com/user-attachments/assets/add61376-cdf6-4a46-9d3b-067bc4d0c4bd\"\u003e\u003c/video\u003e\n\n### Yew Usage\n\n```sh\nos add i18nrs yew\n```\n\nThis will:\n\n- Download the `i18nrs` crate.\n- Extract files only related to the `yew` feature.\n- Copy `src/` files into your project under a new directory `crate_name`, in this case `i18nrs`.\n- Update your `Cargo.toml` dependencies and `lib.rs` file.\n\n### Dioxus Usage\n\n```sh\nos add i18nrs dio\n```\n\n### Leptos Usage\n\n```sh\nos add i18nrs lep\n```\n\n## 🧃 Components\n\nOpen SASS offers the following components:\n\n| 🧩 Component | 📦 Repository | 📝 Description |\n|------------------|--------------------------|---------------------|\n| `accordion-rs` | [![GitHub](https://img.shields.io/github/stars/opensass/accordion-rs)](https://github.com/opensass/accordion-rs) | ↕️ A highly customizable accordion component for WASM frameworks. |\n| `alert-rs`     | [![GitHub](https://img.shields.io/github/stars/opensass/alert-rs)](https://github.com/opensass/alert-rs)       | ⚠️ A highly customizable alert component for WASM frameworks. |\n| `eld`       | [![GitHub](https://img.shields.io/github/stars/opensass/eld)](https://github.com/opensass/eld)                 | 🚛 ELD Toolkit for WASM frameworks. |\n| `i18nrs`      | [![GitHub](https://img.shields.io/github/stars/opensass/i18n-rs)](https://github.com/opensass/i18n-rs)         | 🌐 Internationalization (i18n) component for WASM frameworks. |\n| `image-rs`    | [![GitHub](https://img.shields.io/github/stars/opensass/image-rs)](https://github.com/opensass/image-rs)        | 🖼️ Image Component for WASM frameworks. |\n| `input-rs`     | [![GitHub](https://img.shields.io/github/stars/opensass/input-rs)](https://github.com/opensass/input-rs)       | 🔤 A highly customizable input component for WASM frameworks. |\n| `navbar`    | [![GitHub](https://img.shields.io/github/stars/opensass/navbar)](https://github.com/opensass/navbar)     | 🍔 A highly customizable navbar component for WASM frameworks. |\n| `radiors`     | [![GitHub](https://img.shields.io/github/stars/opensass/radio-rs)](https://github.com/opensass/radio-rs)       | 🎛️ A highly customizable radio buttons component for WASM frameworks. |\n| `scroll-rs`    | [![GitHub](https://img.shields.io/github/stars/opensass/scroll-rs)](https://github.com/opensass/scroll-rs)     | 🖱️ A highly customizable scroll-to-anywhere component for WASM frameworks. |\n| `select-rs`    | [![GitHub](https://img.shields.io/github/stars/opensass/select-rs)](https://github.com/opensass/select-rs)     | 🔽 A highly customizable select group component for WASM frameworks. |\n| `sidebar`    | [![GitHub](https://img.shields.io/github/stars/opensass/sidebar)](https://github.com/opensass/sidebar)     | 🗃️ A sidebar component for WASM frameworks. |\n| `skeleton-rs`    | [![GitHub](https://img.shields.io/github/stars/opensass/skeleton-rs)](https://github.com/opensass/skeleton-rs)     | 🦴 A skeleton component for WASM frameworks. |\n| `slider-rs`    | [![GitHub](https://img.shields.io/github/stars/opensass/slider-rs)](https://github.com/opensass/slider-rs)     | 🎚️ A slider component for WASM frameworks. |\n| `table-rs`    | [![GitHub](https://img.shields.io/github/stars/opensass/table-rs)](https://github.com/opensass/table-rs)     | 📋 Table component for WASM frameworks. |\n| `theme`    | [![GitHub](https://img.shields.io/github/stars/opensass/theme)](https://github.com/opensass/theme)     | 🎨 A highly customizable theming system for WASM frameworks. |\n\nAnd much more coming over time...\n\n## ⚡ Benchmark\n\n```sh\n❯ time yes | npx shadcn@latest add accordion\nnpx shadcn@latest add accordion  8.98s user 4.85s system 90% cpu 15.279 total\n```\n\n```sh\n❯ time os add accordion-rs yew\nos add accordion-rs yew  0.16s user 0.02s system 5% cpu 0.2 total\n```\n\nOpen SASS CLI is **~56× faster** in user time and uses **~18× less CPU** than `shadcn`. More optimizations on the way 🚀.\n\n## 🤝 Contributions\n\nContributions are welcome! Whether it's bug fixes, feature requests, or examples, we would love your help to make Open SASS better.\n\n1. Fork the repository.\n1. Create a new branch for your feature/bugfix.\n1. Submit a pull request for review.\n\n## 📜 License\n\nOpen SASS is licensed under the [MIT License](LICENSE). You are free to use, modify, and distribute this library in your projects.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopensass%2Fcli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopensass%2Fcli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopensass%2Fcli/lists"}