Lucide Python
A Python implementation of the lucide icon library that can be used with the tagflow package to easily render icons in your Python web applications.
This project provides a full set of lucide icons as Python context managers, along with a demo application to browse and search all available icons.
Features
- Complete set of lucide icons: All icons from the lucide library are available.
- Easy to use: Icons can be rendered as context managers using
tagflow. - Customizable: Icons can be customized with
width,height, and other SVG attributes. - Demo application: A web application to browse, search, and filter all icons.
Screenshot
Setup and Installation
-
Clone the repository:
git clone https://github.com/dotlabshq/lucide-py.git cd lucide-py
-
Build the environment: This will create a virtual environment and install all the necessary dependencies.
make build-env -
Download the icons: This will clone the original
luciderepository to download the SVG icon assets.make setup-resources -
Generate the icon library: This will generate the Python modules for each icon from the SVG assets.
make generate-icons
Running the Demo Application
To browse all the available icons, you can run the demo application.
make run
This will start a web server on http://127.0.0.1:8000. Open this URL in your browser to see the icon library.
The demo application allows you to:
- View all icons grouped by category.
- Filter icons by category.
- Search for icons by name.
Usage in Your Application
You can use the generated icons in any application that uses tagflow.
Here's an example of how to use an icon:
from lucide.icons import Activity
from tagflow import document
with document() as doc:
with Activity(width="48", height="48", classes="text-blue-500"):
pass
print(doc.to_html())
This will produce the following HTML:
<svg width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke_width="2" stroke_linecap="round" stroke_linejoin="round" class="text-blue-500">
<path d="M22 12h-4l-3 9L9 3l-3 9H2"></path>
</svg>
Running Tests
To run the test suite, which verifies that all icons are generated correctly:
make test
License
Lucide is licensed under the MIT license. See LICENSE.
Metadata
Release files for lucide-py 0.3.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| lucide_py-0.3.5.tar.gz | 1.8 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| lucide_py-0.3.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.5 MB
Release files / lucide_py-0.3.5.tar.gz
| Download URL | lucide_py-0.3.5.tar.gz |
|---|---|
| Size | 1.8 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
56c52024f29d0a83fe8e774fcc07dae040a450f3b59f51c46cfff4727f6c642f
|
|
BLAKE2b-256 checksum How to use checksums |
b560dbf9a8f816be1d39cd5576e3da5f0d24fe0a894dddf56d96a835e2989eb7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.2
|
Release files / lucide_py-0.3.5-py3-none-any.whl
| Download URL | lucide_py-0.3.5-py3-none-any.whl |
|---|---|
| Size | 777.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e04280536e4d09c565590ca79cf663fed87e728fa4abab70b92546d88125ee24
|
|
BLAKE2b-256 checksum How to use checksums |
b4d7a5fefe222960f13b1d338c9a9783fcba220206bdce0d728cc3fd298bc949
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.2
|