Skip to main content

Hero UI - Modern UI components for Reflex Web Framework

Project description

HeroUI Provider

Modern UI components for the Reflex Python Web Framework.

I will update the classNames props later.

Features

  • Modern UI components with a clean, consistent design
  • Built specifically for Reflex web applications
  • Customizable themes and styling
  • TypeScript and Python type hints
  • Framer Motion animations
  • Tailwind CSS integration

Installation

uv pip install heroui-provider

Quick Start

import reflex as rx
import heroui as hero

# Create a state
class State(rx.State):
    count: int = 0
    
    def increment(self):
        self.count += 1
        
    def decrement(self):
        self.count -= 1

# Build your UI
def index():
    return rx.container(
        hero.provider(
            rx.vstack(
                hero.avatar(
                    name="John Doe",
                    size="lg",
                    src="https://api.dicebear.com/9.x/glass/svg?seed=Kingston",
                ),
                rx.flex(
                    hero.button(
                        "Increment",
                        on_press=State.increment,
                        color="success"
                    ),
                    rx.text(State.count),
                    hero.button(
                        "Decrement",
                        on_press=State.decrement,
                        color="danger"
                    ),
                    align="center",
                    margin="auto",
                    gap="1rem",
                ),
            ),
        )
    )

# Create and run the app
app = rx.App()
app.add_page(index)

Configuration

The HeroUI Provider comes with Tailwind configuration. In your rxconfig.py file:

import reflex as rx

tailwindplugin: dict = {
    "name": "@heroui/theme",
    "import": {"name": "heroui", "from": "@heroui/theme"},
    "call": "heroui",
}

HeroUILinker: str = "./node_modules/@heroui/theme/dist/**/*.{js,ts,jsx,tsx}"

config = rx.Config(
    app_name="my_app",
    tailwind={
        "theme": {"extend": {}},
        "content": [HeroUILinker],
        "darkMode": "class",
        "plugins": [
            "@tailwindcss/typography",
            tailwindplugin,
        ],
    },
)

Components

  • provider: Main HeroUI provider component
  • avatar: Profile image or initials display
  • button: Clickable actions
  • card: Content container with various states
  • checkbox: Selection input
  • input: Text input field
  • radio: Radio button selection
  • textarea: Multiline text input
  • alert: Notification and message display
  • More components available!

Check the documentation for complete component details.

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for details.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

heroui_provider-0.1.5.tar.gz (12.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

heroui_provider-0.1.5-py3-none-any.whl (24.8 kB view details)

Uploaded Python 3

File details

Details for the file heroui_provider-0.1.5.tar.gz.

File metadata

  • Download URL: heroui_provider-0.1.5.tar.gz
  • Upload date:
  • Size: 12.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for heroui_provider-0.1.5.tar.gz
Algorithm Hash digest
SHA256 c881741a8b8d6f35f583bc1bb39cc1a52c0f9cab0968771693225168f56dabe5
MD5 2a27900702c5e7ad6ad2c2c4fa5f03b9
BLAKE2b-256 00bb7b460511fe8e263816f375c06ab5653933704680409753cb23044abff1bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for heroui_provider-0.1.5.tar.gz:

Publisher: publish.yml on itsmeadarsh2008/heroui-provider

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file heroui_provider-0.1.5-py3-none-any.whl.

File metadata

File hashes

Hashes for heroui_provider-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 77a0c2e1d3eabfc75f40f0abb151060ac6818c3ff6a7755f8f78f889c31325c2
MD5 d7e4470571c6b3c4ea1f8c62bfa5c685
BLAKE2b-256 44d12bfdfade7b78e1fefc83ab1306b426a113f3d4e58dbf1d8e09c64ac1c4e3

See more details on using hashes here.

Provenance

The following attestation bundles were made for heroui_provider-0.1.5-py3-none-any.whl:

Publisher: publish.yml on itsmeadarsh2008/heroui-provider

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page