# basic-components
Re-usable server-side components based on shadcn/ui.
Built with JinjaX, Alpine.js, and Tailwind CSS, with support for htmx.
## Installation & Usage
### Quick Start with `uvx`
JinjaX is required.
```bash
# install jinjax
uvx add jinjax
````
You can use the CLI directly without installing the package.
```bash
# Add components
uvx --from basic-components components add button
```
You will also need to configure your project to load components into the `jinjax.Catalog` and add a global `cn` function
to the Jinja environment. See [utilities](https://components.basicmachines.co/docs/utilities).
Helpers for these are packed in the `basic-components[utils]` package.
### Package Installation Options
Install only the utility functions for JinjaX and tailwind.
```bash
# With utility functions
pip install basic-components[utils]
```
Setup instructions and examples:
- [FastAPI](https://components.basicmachines.co/docs/fastapi)
- [Flask](https://components.basicmachines.co/docs/flask)
- [Django](https://components.basicmachines.co/docs/django)
### Installation Groups
- `utils`: Utility functions for JinjaX setup and `cn()` tailwind class helper
- `docs`: Requirements for the docs site
- `dev`: Development tools for contributing
- `full`: All features included
## Documentation
Visit [https://components.basicmachines.co](https://components.basicmachines.co) to view the documentation.
## Contributing
Please read the [contributing guide](https://components.basicmachines.co/docs/contribution).
## License
Licensed under the [MIT license](https://github.com/shadcn/ui/blob/main/LICENSE.md).
## Components
19/48
- [x] accordion
- [x] alert
- [x] alert-dialog
- [ ] aspect-ratio
- [ ] avatar
- [x] badge
- [ ] breadcrumb
- [x] button
- [ ] calendar
- [x] card
- [ ] carousel
- [ ] chart
- [x] checkbox
- [ ] collapsible
- [ ] command
- [ ] context-menu
- [x] dialog
- [ ] drawer
- [x] dropdown-menu
- [x] form
- [ ] hover-card
- [ ] input-otp
- [x] input
- [x] label
- [x] link
- [ ] menubar
- [ ] navigation-menu
- [ ] pagination
- [x] popover
- [ ] progress
- [x] radio-group
- [ ] resizable
- [ ] scroll-area
- [x] select
- [ ] separator
- [x] sheet
- [ ] sidebar
- [ ] skeleton
- [ ] slider
- [ ] sonner
- [ ] switch
- [x] table
- [x] tabs
- [x] textarea
- [x] toast
- [ ] toaster
- [ ] toggle-group
- [ ] toggle
- [ ] tooltip
Extended
- [ ] Prose
Raw data
{
"_id": null,
"home_page": null,
"name": "basic-components",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "alpinejs, components, django, fastapi, flask, frontend, htmx, jinja, jinjax, server-side, shadcn, shadcnui, tailwind, ui, web",
"author": null,
"author_email": "phernandez <paul@basicmachines.co>",
"download_url": "https://files.pythonhosted.org/packages/0b/a6/1eb402441a991670174513f45ffb44f15842086663ddcf507726561ae43d/basic_components-0.3.0.tar.gz",
"platform": null,
"description": "# basic-components\n\nRe-usable server-side components based on shadcn/ui.\nBuilt with JinjaX, Alpine.js, and Tailwind CSS, with support for htmx.\n\n## Installation & Usage\n\n### Quick Start with `uvx`\n\nJinjaX is required.\n\n```bash\n# install jinjax\nuvx add jinjax\n````\n\nYou can use the CLI directly without installing the package.\n\n```bash\n# Add components\nuvx --from basic-components components add button\n```\n\nYou will also need to configure your project to load components into the `jinjax.Catalog` and add a global `cn` function\nto the Jinja environment. See [utilities](https://components.basicmachines.co/docs/utilities).\n\nHelpers for these are packed in the `basic-components[utils]` package. \n\n### Package Installation Options\n\nInstall only the utility functions for JinjaX and tailwind.\n\n```bash\n# With utility functions\npip install basic-components[utils]\n```\n\nSetup instructions and examples:\n- [FastAPI](https://components.basicmachines.co/docs/fastapi)\n- [Flask](https://components.basicmachines.co/docs/flask)\n- [Django](https://components.basicmachines.co/docs/django)\n\n\n### Installation Groups\n\n- `utils`: Utility functions for JinjaX setup and `cn()` tailwind class helper\n- `docs`: Requirements for the docs site\n- `dev`: Development tools for contributing\n- `full`: All features included\n\n## Documentation\n\nVisit [https://components.basicmachines.co](https://components.basicmachines.co) to view the documentation.\n\n## Contributing\n\nPlease read the [contributing guide](https://components.basicmachines.co/docs/contribution).\n\n## License\n\nLicensed under the [MIT license](https://github.com/shadcn/ui/blob/main/LICENSE.md).\n\n## Components\n\n19/48\n\n- [x] accordion\n- [x] alert\n- [x] alert-dialog \n- [ ] aspect-ratio\n- [ ] avatar\n- [x] badge\n- [ ] breadcrumb\n- [x] button\n- [ ] calendar\n- [x] card\n- [ ] carousel\n- [ ] chart\n- [x] checkbox\n- [ ] collapsible\n- [ ] command\n- [ ] context-menu\n- [x] dialog \n- [ ] drawer\n- [x] dropdown-menu\n- [x] form\n- [ ] hover-card\n- [ ] input-otp\n- [x] input\n- [x] label\n- [x] link\n- [ ] menubar\n- [ ] navigation-menu\n- [ ] pagination\n- [x] popover\n- [ ] progress\n- [x] radio-group\n- [ ] resizable\n- [ ] scroll-area\n- [x] select\n- [ ] separator\n- [x] sheet\n- [ ] sidebar\n- [ ] skeleton\n- [ ] slider\n- [ ] sonner\n- [ ] switch\n- [x] table\n- [x] tabs\n- [x] textarea\n- [x] toast\n- [ ] toaster\n- [ ] toggle-group\n- [ ] toggle\n- [ ] tooltip\n\nExtended\n- [ ] Prose ",
"bugtrack_url": null,
"license": "MIT",
"summary": "Re-usable server-side components based on shadcn/ui with JinjaX, Alpine.js and Tailwind CSS",
"version": "0.3.0",
"project_urls": {
"Changelog": "https://github.com/basicmachines-co/basic-components/blob/main/CHANGELOG.md",
"Documentation": "https://components.basicmachines.co",
"Homepage": "https://github.com/basicmachines-co/basic-components",
"Issues": "https://github.com/basicmachines-co/basic-components/issues",
"Repository": "https://github.com/basicmachines-co/basic-components"
},
"split_keywords": [
"alpinejs",
" components",
" django",
" fastapi",
" flask",
" frontend",
" htmx",
" jinja",
" jinjax",
" server-side",
" shadcn",
" shadcnui",
" tailwind",
" ui",
" web"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b6cc4819bd1eb3ba5a62a24ea7d7157c2a537ce099166731647bb1e4102a4531",
"md5": "c7dc299e67c94baa2d21802ba46e0ab8",
"sha256": "592c09927ef0baa385a12e8a285b0fe4e44a830d7a783fe22c1712c53c9421c9"
},
"downloads": -1,
"filename": "basic_components-0.3.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c7dc299e67c94baa2d21802ba46e0ab8",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 10488,
"upload_time": "2024-11-18T03:20:17",
"upload_time_iso_8601": "2024-11-18T03:20:17.962591Z",
"url": "https://files.pythonhosted.org/packages/b6/cc/4819bd1eb3ba5a62a24ea7d7157c2a537ce099166731647bb1e4102a4531/basic_components-0.3.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "0ba61eb402441a991670174513f45ffb44f15842086663ddcf507726561ae43d",
"md5": "9c66dfd4070ef1fd10b99f8c04c73d2a",
"sha256": "339b0b7cdf58688f95fa9589fcac436ec536bc3ab35d6c43496f30b0399f9810"
},
"downloads": -1,
"filename": "basic_components-0.3.0.tar.gz",
"has_sig": false,
"md5_digest": "9c66dfd4070ef1fd10b99f8c04c73d2a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 8873,
"upload_time": "2024-11-18T03:20:21",
"upload_time_iso_8601": "2024-11-18T03:20:21.057043Z",
"url": "https://files.pythonhosted.org/packages/0b/a6/1eb402441a991670174513f45ffb44f15842086663ddcf507726561ae43d/basic_components-0.3.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-18 03:20:21",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "basicmachines-co",
"github_project": "basic-components",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "basic-components"
}