Skip to main content

Provides a CLI plugin for Litestar to use Tailwind CSS via the Tailwind CLI.

Project description

litestar-tailwind

forked from Tobi-De/litestar-tailwind-cli with improves

PyPI - Version PyPI - Python Version


[!IMPORTANT] This plugin currently contains minimal features and is a work-in-progress

Provides a CLI plugin for Litestar to use Tailwind CSS via the Tailwind CLI.

Table of Contents

Installation

pip install litestar-tailwind

Usage

Configure and include the TailwindCLIPlugin in your Litestar app:

from pathlib import Path

from litestar import Litestar
from litestar.static_files import create_static_files_router
from litestar.contrib.jinja import JinjaTemplateEngine
from litestar.template.config import TemplateConfig
from litestar_tailwind_cli import TailwindCLIPlugin

ASSETS_DIR = Path("assets")

tailwind_cli = TailwindCLIPlugin(
  use_server_lifespan=True,
  src_css=ASSETS_DIR / "css" / "input.css",
  dist_css=ASSETS_DIR / "css" / "tailwind.css",
)

app = Litestar(
    route_handlers=[create_static_files_router(path="/static", directories=["assets"])],
    debug=True,
    plugins=[tailwind_cli],
    template_config=TemplateConfig(
        directory=Path("templates"),
        engine=JinjaTemplateEngine,
    ),
)
<head>
...
  <link rel="stylesheet" href="/static/css/tailwind.css">
</head>

After setting up, you can use the following commands:

  • litestar tailwind init: This command initializes the tailwind configuration and downloads the CLI if it's not already installed.
  • litestar tailwind watch: This command starts the Tailwind CLI in watch mode during development. You won't have to use this if you set use_server_lifespan to True.
  • litestar tailwind build: This command builds a minified production-ready CSS file.

[!NOTE] Don't forget to update the content key in tailwind.config.js to specify your templates directories.

The TailwindCLIPlugin has the following configuration options:

  • src_css: The path to the source CSS file. Defaults to "css/input.css".
  • dist_css: The path to the distribution CSS file. Defaults to "css/tailwind.css".
  • config_file: The path to the Tailwind configuration file. Defaults to "tailwind.config.js".
  • use_server_lifespan: Whether to use server lifespan. Defaults to False. It will start the Tailwind CLI in watch mode when you use the litestar run command.
  • conventional_path_resolve: Only use the existing implementation for Tailwind CLI searches. defaults to True.
  • cli_version: The version of the Tailwind CLI to download. Defaults to "latest".
  • src_repo: The GitHub repository from which to download the Tailwind CLI. Defaults to tailwindlabs/tailwindcss.
  • asset_name: The name of the asset to download from the repository. Defaults to tailwindcss.

For example, if you are using the repository https://github.com/dobicinaitis/tailwind-cli-extra/tree/main, you would set src_repo to "dobicinaitis/tailwind-cli-extra" and asset_name to "tailwindcss-extra".

License

litestar-tailwind and litestar-tailwind-cli (original library) is distributed under the terms of the MIT license. is distributed under the terms of the MIT license.

Changes from Original

  • litestar-tailwind now supports tailwindcss v4. v3 is no longer supported.
  • You can now use {% tailwind_css() %} to get the location of TailwindCSS's dist CSS. However, TailwindCSS files must be located under the web server's URI, static.
  • By using {% load_tailwind() %}, you can now automatically load TailwindCSS. However, the same requirements apply as when using {% tailwind_css() %}.

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

litestar_tailwind-0.2.3.tar.gz (113.4 kB view details)

Uploaded Source

Built Distribution

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

litestar_tailwind-0.2.3-py3-none-any.whl (8.3 kB view details)

Uploaded Python 3

File details

Details for the file litestar_tailwind-0.2.3.tar.gz.

File metadata

  • Download URL: litestar_tailwind-0.2.3.tar.gz
  • Upload date:
  • Size: 113.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.21

File hashes

Hashes for litestar_tailwind-0.2.3.tar.gz
Algorithm Hash digest
SHA256 e8c67086936f03fbded59ecb09730d588cbb1cf7d4a016085af2962a6f299818
MD5 96278ef5c8f1aea7c1fc6b3e3337652a
BLAKE2b-256 b22384f92b5b31140c4d65ee59b78dbd4a144b1ed33fddd785f852749968dc85

See more details on using hashes here.

File details

Details for the file litestar_tailwind-0.2.3-py3-none-any.whl.

File metadata

File hashes

Hashes for litestar_tailwind-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 c1e2801fa91cfd3da98e340a7d44e35b60bfe947d81b295f066244ab817a08d5
MD5 5447c576b188497a56ac82416da63206
BLAKE2b-256 e658d5366908c737d0c3d9e5225be3456c4960ba691547d905e7e07537fa4335

See more details on using hashes here.

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