Pulse Lucide
Python bindings for Lucide React icons. Auto-generated from lucide-react.
Architecture
Lazy-loaded Python wrappers around lucide-react icon components. Icons are instantiated on first access.
Python Icon → ReactComponent → VDOM → pulse-client → lucide-react
Folder Structure
src/pulse_lucide/
├── __init__.py # Auto-generated icon exports (1600+ icons)
└── props.py # LUCIDE_PROPS_SPEC - icon prop definitions
scripts/
└── generate.py # Generates __init__.py from lucide-react
Usage
from pulse_lucide import Heart, Search, Settings, ChevronRight
def toolbar():
return ps.div([
Heart(size=24, color="red"),
Search(size=20),
Settings(size=20, strokeWidth=1.5),
])
Props
All icons accept these props:
size- icon size (number or string)color- stroke colorstrokeWidth- line thickness (default: 2)absoluteStrokeWidth- maintain stroke width regardless of size
Icon Count
1600+ icons available. Full list at lucide.dev/icons.
Common icons:
- Navigation:
ChevronLeft,ChevronRight,ArrowUp,ArrowDown,Menu,X - Actions:
Search,Plus,Minus,Edit,Trash,Save,Download,Upload - Status:
Check,AlertCircle,Info,HelpCircle,Bell,Star - Files:
File,Folder,FileText,Image,Video,Music - User:
User,Users,UserPlus,Settings,LogIn,LogOut
Generation
Icons are auto-generated from lucide-react:
uv run scripts/generate.py
Release files for pulse-lucide 0.546.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pulse_lucide-0.546.1.tar.gz | 18.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pulse_lucide-0.546.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 37.3 kB
Release files / pulse_lucide-0.546.1.tar.gz
| Download URL | pulse_lucide-0.546.1.tar.gz |
|---|---|
| Size | 18.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
41ef8a8e4c47b488c235c79fd07dbd744497c00e8a5d3c3f41d50b0f0417fec1
|
|
BLAKE2b-256 checksum How to use checksums |
9886b60b9fa7957e5955db1fc2833c2505daecdbf9a728a7e0e8617fa10f141f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / pulse_lucide-0.546.1-py3-none-any.whl
| Download URL | pulse_lucide-0.546.1-py3-none-any.whl |
|---|---|
| Size | 19.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f368884ed16266a9deb5af1c9474baf231a0962664c6a703bddcfa9720f9e7c6
|
|
BLAKE2b-256 checksum How to use checksums |
b69216d22f7759b417c4b0737a29dd66a2e1334613655deccb6c77a923a4126b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|