| Crates.io | lucide-svg-rs |
| lib.rs | lucide-svg-rs |
| version | 0.1.8 |
| created_at | 2025-08-22 00:35:35.483643+00 |
| updated_at | 2025-08-28 22:56:43.211845+00 |
| description | A Rust library and CLI tool for downloading SVG icons from the Lucide icon library with interactive selection and preview capabilities. |
| homepage | |
| repository | https://github.com/crabtools-rs/lucide-svg-rs |
| max_upload_size | |
| id | 1805725 |
| size | 710,616 |
lucide-svg-rs is a Rust library + command-line tool for working with
Lucide SVG icons both online and offline.
All icons are shipped in a local icons/ directory โ no network access required.
Clone and build:
cargo build --release
The binary will be available at:
target/release/lucide-svg-rs
lucide-svg-rs list
lucide-svg-rs list --json
lucide-svg-rs search alert
lucide-svg-rs search alert --json
lucide-svg-rs download-all ./out
Run the test suite:
cargo test
This covers:
ICONS_DIRFor a comprehensive reference covering:
cargo test --test cli)๐ see GUIDE.md.
We welcome contributions! Please read CONTRIBUTING.md for guidelines.
Key points:
feat:, fix:, docs:)cargo fmt, cargo clippy -D warnings, and cargo test all pass before opening a PRCI verifies the docs compile cleanly (warnings as errors):
RUSTDOCFLAGS="-D warnings" cargo doc --no-deps
On tags (v*.*.*), CI runs a publish guard to catch issues before a real publish:
cargo package --lockedcargo publish --dry-run--cfg docsrs -D warningsA separate workflow .github/workflows/cargo-publish.yml runs when a GitHub Release is published.
CARGO_REGISTRY_TOKEN secret (from crates.io account)cargo publish --lockedReleases are handled by a single workflow (.github/workflows/release.yml) that:
Trigger by pushing a tag:
git tag v0.1.0
git push origin v0.1.0
Maintainers: use the Release Checklist issue form to guide each release.
Tag format: vX.Y.Z (e.g., v0.1.0).
Open a new issue โ Release Checklist
Complete pre-tag checks, then tag and push:
git tag v0.1.0
git push origin v0.1.0
CI will build artifacts, generate SBOM & checksums, publish GitHub Release, and (optionally) push Homebrew/Scoop files.
A separate workflow can publish the crate to crates.io when a GitHub Release is published.
๐ง Note: CI/Release/Codecov badges are auto-patched by
.github/workflows/patch-badges.ymlafter pushes tomain.