hadalized 0.4.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,79 @@
1
+ Metadata-Version: 2.3
2
+ Name: hadalized
3
+ Version: 0.4.0
4
+ Summary: Hadalized color theme builder.
5
+ Author: Shawn O'Hare
6
+ Author-email: Shawn O'Hare <shawn@shawnohare.com>
7
+ Requires-Dist: coloraide>=6.2
8
+ Requires-Dist: cyclopts>=4.5.0
9
+ Requires-Dist: jinja2>=3.1.6
10
+ Requires-Dist: loguru>=0.7.3
11
+ Requires-Dist: luadata>=1.0.5
12
+ Requires-Dist: pydantic>=2.12.5
13
+ Requires-Dist: pydantic-settings>=2.12.0
14
+ Requires-Dist: tomli-w>=1.2.0
15
+ Requires-Dist: xdg-base-dirs>=6.0.2
16
+ Requires-Python: >=3.14
17
+ Description-Content-Type: text/markdown
18
+
19
+ # hadalized color theme build
20
+
21
+ Python package with CLI to build hadalized-style application themes.
22
+
23
+ ## Introduction
24
+
25
+ The application can build any theme conforming to the hadalized `Palette`
26
+ schema for any application with a `BuildConfig` and appropriate theme
27
+ template.
28
+
29
+ The builtin [hadalized color palettes](./src/hadalized/colors.py)
30
+ are defined as oklch color values. Application theme templates are rendered
31
+ with the appropriate color type (e.g., hex values for neovim). Under the hood
32
+ the `coloraide` python package is used to transform between colorspaces and fit
33
+ to gamuts.
34
+
35
+ Creating a theme builder arises from the desire to use the OKLCH color space
36
+ as the basis for any application color theme. When developing the palette, it
37
+ quickly becomes tedius to manually convert oklch values to their hex
38
+ equivalents.
39
+
40
+ The builder primarily targets the neovim colorscheme files in
41
+ [hadalized.nvim](https://github.com/shawnohare/hadalized.nvim), as that is
42
+ the editor we primarily use.
43
+
44
+ ## Example CLI Usage
45
+
46
+ Assuming `uv` is installed,
47
+
48
+ ```sh
49
+ uv run --exact hadalized build --out="build"
50
+ ```
51
+ will produce rendered theme files for all builtin applications in `./build`.
52
+
53
+
54
+ ## Development
55
+
56
+ Assuming `uv` and `just` are installed
57
+
58
+ ```sh
59
+ uv sync --locked
60
+ source .venv/bin/evaluate
61
+ # make changes
62
+ just fmt
63
+ just check
64
+ just test
65
+ # commit changes
66
+ ```
67
+
68
+ ## Roadmap / TODOs
69
+
70
+ - [ ] Add to pypi.
71
+ - [ ] Consider removing the "in-memory" cache functionality.
72
+ - [ ] (A) Add ability to map named colors such as `red` to an abstracted name
73
+ such as `color1`, similar to `base16`. Use these abstracted names color theme
74
+ templates. This might be painful to work with in practice, as one has to keep
75
+ the mapping in their head.
76
+ - [ ] (B) As an extension of (A), consider lightweight pandoc inspired features
77
+ where an intermediate and generic theme can be defined and referenced in
78
+ editor templates. For example, allow a user to define `integer = "blue"` and
79
+ reference `theme.integer` to color neovim `Integer` highlight groups.
@@ -0,0 +1,33 @@
1
+ hadalized/__init__.py,sha256=TONfRyEtBmXampFTazJpmuIFCVPYFuq2kSCuM5lr7cI,69
2
+ hadalized/__main__.py,sha256=UYGIn3SXJUqFVRsToVTqCegwbf2loBt0nt3ItL_EPzc,135
3
+ hadalized/base.py,sha256=SugF54vnXKqeBARp3tfUWq2GaP19n2107l2Owy-a9sk,3823
4
+ hadalized/cache.py,sha256=KilJxCJr_kQac4trATwj2ZL3oozKFIKB7jOF0jvcOu4,3497
5
+ hadalized/cli/__init__.py,sha256=yWUjHt53STm83fgGKYLfVMkKH6MlnBs31c_329zmPXI,58
6
+ hadalized/cli/main.py,sha256=UXelf13h67v6l4RF41dYwvHUpFUV-G6Rt3VqM4bVL6Q,6473
7
+ hadalized/color.py,sha256=_7YFK-1O8wTLoPfm2TChPumkSgF7Fmj4ki8wZ1EVwhE,18350
8
+ hadalized/config.py,sha256=Cd4UvXzAOzENWAYVwKMpY_nnkYfcty8cMlv20t9pk4g,13603
9
+ hadalized/const.py,sha256=NUgLn7rL65TeD1v-VNqOiXL_db08t7kmZvGAltKLBgQ,121
10
+ hadalized/convert.py.bak,sha256=1STK9AiERfu1lIz8jGXulOSFpSQAV_CSRNV9ntv1B4E,61970
11
+ hadalized/homedirs.py,sha256=bf6VNgibWfz3i6VnQN5ETJ4bvZHd3z8NDFoXhUMgQ5o,1285
12
+ hadalized/options.py,sha256=j6YaCYAr49rnoSaQeX5rvhXO78mIjlp5xJ44yotvDCw,5261
13
+ hadalized/palette.py,sha256=Dv3sdp3iQSpxvAa-_C68RU89nHuuERfzC4wSrm4vjgg,3796
14
+ hadalized/templates/colors.html,sha256=c0k-Yjsk-vLC1KkOB-UjS8oY6VfeERQCl5tOfmSvGR4,331
15
+ hadalized/templates/config.toml,sha256=FIST26ciOHeEGhkTKKO9PKgLItQ5dU3QZnhfMHDh8E8,368
16
+ hadalized/templates/generic.txt,sha256=ArDfKDr-vV1_X3jWN1Bd4RovcYkwhUs-C5e6wVkk1Tk,9
17
+ hadalized/templates/item.html,sha256=S1SljeL_iF8tnUtbon4GiRH0H2yYiKBpJuI1Ptg4gNU,78
18
+ hadalized/templates/lua_module.lua,sha256=WZWcc68tyKj9l_ozD--ZHbJ-EQc8_ljTuLGaIc7h6lk,82
19
+ hadalized/templates/model_dump.json,sha256=fYcezxCsOiS43te2k00Bw3H7jIdCeTC-4yUP9R2SXls,35
20
+ hadalized/templates/neovim.lua,sha256=YJn_1Wl7nBJYNT5aeRiCPkpLXO-Z9TpxAf731XgxLf4,831
21
+ hadalized/templates/neovim_palette.lua,sha256=WWtpS_ToWnSBQ1AzqMJPBOYs7PNotZbLn_5DQBiJHjo,192
22
+ hadalized/templates/palette.html,sha256=mlBehbJMyI3YHHgLdgaawaZuSOvX-qGso-dbY1huPnA,1229
23
+ hadalized/templates/palette_info.json,sha256=cjY9oayQAzQpT57CvuTHt1UFESGAiKl6wHrEmRsD1Gg,38
24
+ hadalized/templates/palette_test.toml,sha256=HDMWl-7lPQmwP1c_213-WXqHeRsVz7bb5lHlYdOy0M4,219
25
+ hadalized/templates/starship-all.toml,sha256=d5spMQQp2T1g8526fKspcZL6ZaUfGX8JDVYG-1zPEM8,938
26
+ hadalized/templates/starship.toml,sha256=ICfu1-g2iCRSKlM8RaQgSA3s45HtvbdAhp0-xHae1P4,4383
27
+ hadalized/templates/wezterm.toml,sha256=cAmC9KgznqsMgxRqJtgPps8qTkARssGZQQ_Owe2paxU,1151
28
+ hadalized/web.py,sha256=y-uC_YRsiMLH_pbspBwylb38sfkJTFnnwi0mcJk5JBk,9283
29
+ hadalized/writer.py,sha256=TmLcg_THIjhUtLZIzdDc5S_J4jtioPM8D73pbqOvcj0,7239
30
+ hadalized-0.4.0.dist-info/WHEEL,sha256=fAguSjoiATBe7TNBkJwOjyL1Tt4wwiaQGtNtjRPNMQA,80
31
+ hadalized-0.4.0.dist-info/entry_points.txt,sha256=xW8UcWDpBlfl2QXeNfwimkL3LgR8zBEBdcP5bq5i3cM,83
32
+ hadalized-0.4.0.dist-info/METADATA,sha256=DFaSuuki8cFN26Q7nLKcU0fHlcbtbxR9defHZgseCGU,2537
33
+ hadalized-0.4.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: uv 0.9.28
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,4 @@
1
+ [console_scripts]
2
+ hadalized = hadalized.__main__:app
3
+ hdl = hadalized.__main__:app
4
+