type: project
title: "psi-daisy"
id: psi-daisy-readme
updated: "2026-08-14"
psi-daisy
A modern Python DaisyUI component library for FastHTML
The goal of psi-daisy is to make developing websites in Python much easier.
psi-daisy provides:
- A Python component API
- Full DaisyUI component coverage
- Tailwind class support
- A theming engine
- Interactive components powered by FastHTML and HTMX
- A plugin architecture
- FastHTML DaisyUI demos
- Custom theming
- Custom components
Coming Soon:
- A psi-daisy powered documentation site
- More psi-daisy demos
- More custom components
- More custom themes
- Page Templates
Status
psi-daisy is in active alpha development.
Install
pip install psi-daisy
Tested With
- python-fasthtml 0.14.4,
- starlette 1.3.1
- httpx 0.28.1
- matplotlib 3.11.0
- uvicorn 0.49.0
Examples
- theme_builder
- theme_selector
- component_selector
- icon_selector
From Terminal:
- theme_builder
python -m examples.theme_builder
- ditto for the other examples
From Python script:
- theme_selector
import uvicorn
import examples.theme_selector as demo
uvicorn.run(demo.app, host="0.0.0.0", port=8001)
- ditto for the other examples
From Jupyter / SolveIt notebook:
- icon_selector
from fasthtml.jupyter import JupyUvi
import examples.icon_selector as demo
server = JupyUvi(demo.app)
- ditto for the other examples
CSS Modes
By default, psi-daisy loads DaisyUI/Tailwind from CDN-style URLs:
app = psi_app(theme="light")
To use the packaged static CSS bundle instead:
app = psi_app(theme="light", css="static")
See docs/Static_CSS_Bundle.md for details.
Documentation
- Getting Started - docs/Getting_Started.md
- Components - docs/Components.md
- LLM Guide - docs/LLM_Guide.md
- Component Rendering Flow - docs/Component_Rendering_Flow.md
- Static CSS Bundle - docs/Static_CSS_Bundle.md
Acknowledgements
Built in SolveIt using Codex GPT-5.5
Links
psi-daisydocs - https://psispark.com/psi-daisy-docs- GitHub Home - https://github.com/psispark/psi-daisy
- Github Docs - https://github.com/psispark/psi-daisy/tree/main/docs
- Github Issues & Ideas - https://github.com/psispark/psi-daisy/issues
- PsiSpark - https://psispark.com/
- SolveIt - https://solve.it.com/
- FastHTML - https://fastht.ml/
- HTMX - https://htmx.org/
- DaisyUI - https://daisyui.com/
- Lucide - https://lucide.dev/
Metadata
Release files for psi-daisy 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| psi_daisy-0.1.2.tar.gz | 1.1 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| psi_daisy-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.3 MB
Release files / psi_daisy-0.1.2.tar.gz
| Download URL | psi_daisy-0.1.2.tar.gz |
|---|---|
| Size | 1.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
518eb0d98b333721aed92264fbb3801b996e45549df98f58ef67ae8aa0abf689
|
|
BLAKE2b-256 checksum How to use checksums |
c1f4a0d329e273955bf0382f262d424bf6a12923727ffa29e0430e5120161014
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.13
|
Release files / psi_daisy-0.1.2-py3-none-any.whl
| Download URL | psi_daisy-0.1.2-py3-none-any.whl |
|---|---|
| Size | 1.1 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8b40b2d9f12d8cc73808bfd900900a21b0ed0a3eb2c21366de615fb3de3b61f4
|
|
BLAKE2b-256 checksum How to use checksums |
67dda1c0c30dffa6b3ea6a42c12029f3d02e74b45f2dbcafe76e44b2fae761ca
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.13
|