Skip to content

Commit 98dc673

Browse files
committed
build: adopt uv-dynamic-versioning for main + subpackages; add README/LICENSE; update metadata; keep setup.py for compatibility
1 parent 10f79af commit 98dc673

File tree

15 files changed

+291
-17
lines changed

15 files changed

+291
-17
lines changed

pyproject.toml

Lines changed: 32 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,55 @@
11
[project]
22
name = "dash-dashkit"
3-
version = "1.0.0"
43
description = "Modern dashboard components for Dash applications"
54
readme = "README.md"
65
requires-python = ">=3.10"
6+
dynamic = ["version"]
77
dependencies = [
88
"dash>=2.17.0",
99
"dash-bootstrap-components>=1.5.0",
1010
"plotly>=5.17.0",
11-
"dashkit_table>=1.0.0",
12-
"dashkit_kiboui>=1.0.0",
13-
"dashkit_shadcn>=1.0.0",
11+
"dashkit_table>=1.0.1",
12+
"dashkit_kiboui>=1.0.1",
13+
"dashkit_shadcn>=1.0.1",
1414
"dash-iconify>=0.1.2",
1515
"dash-mantine-components>=2.1.0",
1616
"pyyaml>=6.0.2",
1717
]
18+
keywords = ["dash", "plotly", "dashboard", "components", "ui", "tailwind", "handsontable", "charts"]
19+
license = {text = "MIT"}
20+
authors = [{ name = "Dashkit Team" }]
21+
classifiers = [
22+
"License :: OSI Approved :: MIT License",
23+
"Programming Language :: Python :: 3",
24+
"Programming Language :: Python :: 3 :: Only",
25+
"Programming Language :: Python :: 3.10",
26+
"Programming Language :: Python :: 3.11",
27+
"Programming Language :: Python :: 3.12",
28+
"Framework :: Dash",
29+
"Intended Audience :: Developers",
30+
"Topic :: Software Development :: User Interfaces",
31+
]
32+
33+
[project.urls]
34+
Homepage = "https://pypi.org/project/dash-dashkit/"
35+
Source = "https://github.com/iamgp/dash_dashkit"
36+
Issues = "https://github.com/iamgp/dash_dashkit/issues"
1837

1938
[project.optional-dependencies]
2039
dev = ["ruff>=0.1.0", "basedpyright>=1.10.0"]
2140

2241
[build-system]
23-
requires = ["hatchling"]
42+
requires = ["hatchling", "uv-dynamic-versioning"]
2443
build-backend = "hatchling.build"
2544

45+
[tool.hatch.version]
46+
source = "uv-dynamic-versioning"
47+
48+
[tool.uv-dynamic-versioning]
49+
vcs = "git"
50+
style = "pep440"
51+
bump = true
52+
2653
[tool.hatch.build]
2754
include = [
2855
"src/dashkit/assets/style.css",

src/dashkit/__init__.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,13 @@ def setup_app(app, assets_folder=None):
7171
"""
7272

7373

74-
__version__ = "1.0.0"
74+
# Resolve version dynamically from installed package metadata
75+
try:
76+
from importlib.metadata import PackageNotFoundError, version as _pkg_version
77+
__version__ = _pkg_version("dash-dashkit")
78+
except Exception:
79+
__version__ = "0.0.0"
80+
7581
__all__ = [
7682
"create_layout",
7783
"create_sidebar",

src/dashkit_kiboui/LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2025 Dashkit Contributors
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to do so, subject to the
10+
following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

src/dashkit_kiboui/MANIFEST.in

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,6 @@ include dashkit_kiboui/*.js
22
include dashkit_kiboui/*.js.map
33
include dashkit_kiboui/*.json
44
include dashkit_kiboui/*.txt
5-
recursive-include dashkit_kiboui *
5+
recursive-include dashkit_kiboui *
6+
include README.md
7+
include LICENSE

src/dashkit_kiboui/README.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
# dashkit_kiboui
2+
3+
Contribution graph components for Dash (GitHub-like heatmap calendar and blocks).
4+
5+
## Install
6+
7+
```bash
8+
pip install dashkit_kiboui
9+
```
10+
11+
## Usage
12+
13+
```python
14+
from dash import Dash, html
15+
from dashkit_kiboui import ContributionGraph
16+
17+
app = Dash(__name__)
18+
19+
data = [
20+
{"date": "2025-01-01", "count": 1},
21+
{"date": "2025-01-02", "count": 5},
22+
]
23+
24+
app.layout = html.Div(
25+
ContributionGraph(id="cg", data=data)
26+
)
27+
28+
if __name__ == "__main__":
29+
app.run(debug=True)
30+
```
31+
32+
## License
33+
MIT

src/dashkit_kiboui/setup.py

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,16 @@
1010

1111
setup(
1212
name="dashkit_kiboui",
13-
version="1.0.0",
14-
description="Kibo UI Contribution Graph component for Dash with native theming support",
13+
version="1.0.1",
14+
description="Contribution graph components for Dash with native theming support",
15+
long_description=(Path(__file__).parent / "README.md").read_text(encoding="utf-8"),
16+
long_description_content_type="text/markdown",
17+
url="https://pypi.org/project/dashkit_kiboui/",
18+
project_urls={
19+
"Homepage": "https://pypi.org/project/dashkit_kiboui/",
20+
"Source": "https://github.com/iamgp/dash_dashkit",
21+
"Issues": "https://github.com/iamgp/dash_dashkit/issues",
22+
},
1523
packages=["dashkit_kiboui"],
1624
include_package_data=True,
1725
package_data={
@@ -27,6 +35,18 @@
2735
install_requires=[
2836
"dash>=2.0.0",
2937
],
38+
classifiers=[
39+
"License :: OSI Approved :: MIT License",
40+
"Programming Language :: Python :: 3",
41+
"Programming Language :: Python :: 3 :: Only",
42+
"Programming Language :: Python :: 3.10",
43+
"Programming Language :: Python :: 3.11",
44+
"Programming Language :: Python :: 3.12",
45+
"Framework :: Dash",
46+
"Intended Audience :: Developers",
47+
"Topic :: Software Development :: User Interfaces",
48+
],
3049
author="Dashkit Team",
3150
license="MIT",
51+
license_files=["LICENSE"],
3252
)

src/dashkit_shadcn/LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2025 Dashkit Contributors
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to do so, subject to the
10+
following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

src/dashkit_shadcn/MANIFEST.in

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
include dashkit_shadcn/*.js
2+
include dashkit_shadcn/*.js.map
3+
include dashkit_shadcn/*.json
4+
include dashkit_shadcn/*.txt
5+
include dashkit_shadcn/*.py
6+
recursive-include dashkit_shadcn *
7+
include README.md
8+
include LICENSE

src/dashkit_shadcn/README.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# dashkit_shadcn
2+
3+
Shadcn/ui inspired chart components for Dash (AreaChart, BarChart, ChartContainer, etc.).
4+
5+
## Install
6+
7+
```bash
8+
pip install dashkit_shadcn
9+
```
10+
11+
## Usage
12+
13+
```python
14+
from dash import Dash, html
15+
from dashkit_shadcn import AreaChart, ChartContainer
16+
17+
app = Dash(__name__)
18+
19+
app.layout = ChartContainer(
20+
children=[
21+
AreaChart(
22+
id="chart",
23+
data=[{"x": 1, "y": 3}, {"x": 2, "y": 5}],
24+
xKey="x",
25+
yKey="y",
26+
)
27+
]
28+
)
29+
30+
if __name__ == "__main__":
31+
app.run(debug=True)
32+
```
33+
34+
## License
35+
MIT

src/dashkit_shadcn/setup.py

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,16 @@
1010

1111
setup(
1212
name="dashkit_shadcn",
13-
version="1.0.0",
14-
description="shadcn/ui Chart components for Dash with native theming support",
13+
version="1.0.1",
14+
description="Shadcn/ui-inspired chart components for Dash with native theming support",
15+
long_description=(Path(__file__).parent / "README.md").read_text(encoding="utf-8"),
16+
long_description_content_type="text/markdown",
17+
url="https://pypi.org/project/dashkit_shadcn/",
18+
project_urls={
19+
"Homepage": "https://pypi.org/project/dashkit_shadcn/",
20+
"Source": "https://github.com/iamgp/dash-attio",
21+
"Issues": "https://github.com/iamgp/dash-attio/issues",
22+
},
1523
packages=["dashkit_shadcn"],
1624
include_package_data=True,
1725
package_data={
@@ -27,6 +35,18 @@
2735
install_requires=[
2836
"dash>=2.0.0",
2937
],
38+
classifiers=[
39+
"License :: OSI Approved :: MIT License",
40+
"Programming Language :: Python :: 3",
41+
"Programming Language :: Python :: 3 :: Only",
42+
"Programming Language :: Python :: 3.10",
43+
"Programming Language :: Python :: 3.11",
44+
"Programming Language :: Python :: 3.12",
45+
"Framework :: Dash",
46+
"Intended Audience :: Developers",
47+
"Topic :: Software Development :: User Interfaces",
48+
],
3049
author="Dashkit Team",
3150
license="MIT",
51+
license_files=["LICENSE"],
3252
)

0 commit comments

Comments
 (0)