litestar-tailwind-cli


Namelitestar-tailwind-cli JSON
Version 0.2.0 PyPI version JSON
download
home_pageNone
SummaryProvides a CLI plugin for Litestar to use Tailwind CSS via the Tailwind CLI.
upload_time2024-09-05 09:50:28
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
keywords litestar tailwindcss
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # litestar-tailwind-cli

[![PyPI - Version](https://img.shields.io/pypi/v/litestar-tailwind-cli.svg)](https://pypi.org/project/litestar-tailwind-cli)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/litestar-tailwind-cli.svg)](https://pypi.org/project/litestar-tailwind-cli)

-----

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

Provides a CLI plugin for [Litestar](https://litestar.dev) to use [Tailwind CSS](https://tailwindcss.com) via the Tailwind CLI.

## Table of Contents

- [litestar-tailwind-cli](#litestar-tailwind-cli)
  - [Table of Contents](#table-of-contents)
  - [Installation](#installation)
  - [Usage](#usage)
  - [License](#license)

## Installation

```console
pip install litestar-tailwind-cli
```

## Usage

Configure and include the `TailwindCLIPlugin` in your Litestar app:

```python
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,
    ),
)
```

```jinja
<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.
- `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-cli` is distributed under the terms of the [MIT](https://spdx.org/licenses/MIT.html) license.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "litestar-tailwind-cli",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "litestar, tailwindcss",
    "author": null,
    "author_email": "Tobi DEGNON <tobidegnon@proton.me>",
    "download_url": "https://files.pythonhosted.org/packages/80/df/12091f9c3dbba4a827fb419716fc2e13b4af6a285a34b7a98a6bcd1f56fe/litestar_tailwind_cli-0.2.0.tar.gz",
    "platform": null,
    "description": "# litestar-tailwind-cli\n\n[![PyPI - Version](https://img.shields.io/pypi/v/litestar-tailwind-cli.svg)](https://pypi.org/project/litestar-tailwind-cli)\n[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/litestar-tailwind-cli.svg)](https://pypi.org/project/litestar-tailwind-cli)\n\n-----\n\n> [!IMPORTANT]\n> This plugin currently contains minimal features and is a work-in-progress\n\nProvides a CLI plugin for [Litestar](https://litestar.dev) to use [Tailwind CSS](https://tailwindcss.com) via the Tailwind CLI.\n\n## Table of Contents\n\n- [litestar-tailwind-cli](#litestar-tailwind-cli)\n  - [Table of Contents](#table-of-contents)\n  - [Installation](#installation)\n  - [Usage](#usage)\n  - [License](#license)\n\n## Installation\n\n```console\npip install litestar-tailwind-cli\n```\n\n## Usage\n\nConfigure and include the `TailwindCLIPlugin` in your Litestar app:\n\n```python\nfrom pathlib import Path\n\nfrom litestar import Litestar\nfrom litestar.static_files import create_static_files_router\nfrom litestar.contrib.jinja import JinjaTemplateEngine\nfrom litestar.template.config import TemplateConfig\nfrom litestar_tailwind_cli import TailwindCLIPlugin\n\nASSETS_DIR = Path(\"assets\")\n\ntailwind_cli = TailwindCLIPlugin(\n  use_server_lifespan=True,\n  src_css=ASSETS_DIR / \"css\" / \"input.css\",\n  dist_css=ASSETS_DIR / \"css\" / \"tailwind.css\",\n)\n\napp = Litestar(\n    route_handlers=[create_static_files_router(path=\"/static\", directories=[\"assets\"])],\n    debug=True,\n    plugins=[tailwind_cli],\n    template_config=TemplateConfig(\n        directory=Path(\"templates\"),\n        engine=JinjaTemplateEngine,\n    ),\n)\n```\n\n```jinja\n<head>\n...\n  <link rel=\"stylesheet\" href=\"/static/css/tailwind.css\">\n</head>\n```\n\nAfter setting up, you can use the following commands:\n\n- `litestar tailwind init`: This command initializes the tailwind configuration and downloads the CLI if it's not already installed.\n- `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`.\n- `litestar tailwind build`: This command builds a minified production-ready CSS file.\n\n> [!NOTE]\n> Don't forget to update the `content` key in `tailwind.config.js` to specify your templates directories.\n\nThe `TailwindCLIPlugin` has the following configuration options:\n\n- `src_css`: The path to the source CSS file. Defaults to \"css/input.css\".\n- `dist_css`: The path to the distribution CSS file. Defaults to \"css/tailwind.css\".\n- `config_file`: The path to the Tailwind configuration file. Defaults to \"tailwind.config.js\".\n- `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.\n- `cli_version`: The version of the Tailwind CLI to download. Defaults to \"latest\".\n- `src_repo`: The GitHub repository from which to download the Tailwind CLI. Defaults to `tailwindlabs/tailwindcss`.\n- `asset_name`: The name of the asset to download from the repository. Defaults to `tailwindcss`.\n\nFor 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\"`.\n\n## License\n\n`litestar-tailwind-cli` is distributed under the terms of the [MIT](https://spdx.org/licenses/MIT.html) license.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Provides a CLI plugin for Litestar to use Tailwind CSS via the Tailwind CLI.",
    "version": "0.2.0",
    "project_urls": {
        "Documentation": "https://github.com/Tobi-De/litestar-tailwind-cli#readme",
        "Issues": "https://github.com/Tobi-De/litestar-tailwind-cli/issues",
        "Source": "https://github.com/Tobi-De/litestar-tailwind-cli"
    },
    "split_keywords": [
        "litestar",
        " tailwindcss"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "a96b5d3a3d74fe8b15d06cf85ad029e7f4caf18a9a522111ad6fa1d56fce6bc7",
                "md5": "b230eda757ad33e2fb5a2d2e4fd48480",
                "sha256": "486f168cf8b0fe95326f7c0ea41b284081f563a90cbfbcc0feff31ad83eb5515"
            },
            "downloads": -1,
            "filename": "litestar_tailwind_cli-0.2.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b230eda757ad33e2fb5a2d2e4fd48480",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 7477,
            "upload_time": "2024-09-05T09:50:26",
            "upload_time_iso_8601": "2024-09-05T09:50:26.666587Z",
            "url": "https://files.pythonhosted.org/packages/a9/6b/5d3a3d74fe8b15d06cf85ad029e7f4caf18a9a522111ad6fa1d56fce6bc7/litestar_tailwind_cli-0.2.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "80df12091f9c3dbba4a827fb419716fc2e13b4af6a285a34b7a98a6bcd1f56fe",
                "md5": "c6750a16527a35a0fd825105c2ed6f9c",
                "sha256": "972b0a21259ce8d176beaf07c46f8c10b5fbe2b7ca4c5aa92a7322b175f0f3b1"
            },
            "downloads": -1,
            "filename": "litestar_tailwind_cli-0.2.0.tar.gz",
            "has_sig": false,
            "md5_digest": "c6750a16527a35a0fd825105c2ed6f9c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 13819,
            "upload_time": "2024-09-05T09:50:28",
            "upload_time_iso_8601": "2024-09-05T09:50:28.294651Z",
            "url": "https://files.pythonhosted.org/packages/80/df/12091f9c3dbba4a827fb419716fc2e13b4af6a285a34b7a98a6bcd1f56fe/litestar_tailwind_cli-0.2.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-09-05 09:50:28",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Tobi-De",
    "github_project": "litestar-tailwind-cli#readme",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "litestar-tailwind-cli"
}
        
Elapsed time: 1.33898s