starhash 1.0.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,109 @@
1
+ Metadata-Version: 2.4
2
+ Name: starhash
3
+ Version: 1.0.0
4
+ Summary: Generate unique, memorable, and deterministic names for astronomical objects.
5
+ Project-URL: Homepage, https://github.com/tkillestein/starhash
6
+ Project-URL: Repository, https://github.com/tkillestein/starhash
7
+ Project-URL: Issues, https://github.com/tkillestein/starhash/issues
8
+ Author-email: Tom Killestein <tom.killestein@gmail.com>
9
+ Maintainer-email: Tom Killestein <tom.killestein@gmail.com>
10
+ License-Expression: MIT
11
+ License-File: LICENSE
12
+ Keywords: astronomy,coordinates,healpix,transients
13
+ Classifier: Development Status :: 4 - Beta
14
+ Classifier: Intended Audience :: Science/Research
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Programming Language :: Python :: 3.11
17
+ Classifier: Programming Language :: Python :: 3.12
18
+ Classifier: Topic :: Scientific/Engineering :: Astronomy
19
+ Requires-Python: >=3.11
20
+ Requires-Dist: ff3>=1.0.2
21
+ Requires-Dist: healpy>=1.17.3
22
+ Requires-Dist: rich-click>=1.9.4
23
+ Description-Content-Type: text/markdown
24
+
25
+ # StarHash
26
+
27
+ Generate unique, memorable, and deterministic names for astronomical objects.
28
+
29
+ [![uv](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/uv/main/assets/badge/v0.json)](https://github.com/astral-sh/uv)
30
+ [![ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
31
+ [![ty](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ty/main/assets/badge/v0.json)](https://github.com/astral-sh/ty)
32
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
33
+ [![HEALPix](https://img.shields.io/badge/HEALPix-powered-blue)](https://healpix.jpl.nasa.gov/)
34
+
35
+ ## Why?
36
+
37
+ Because modern astronomy is hard enough, without mixing up sequentially-generated object
38
+ names. Assigning memorable names to objects not only minimises the chance of triggering
39
+ precious telescope time on the wrong thing, but reduces cognitive load.
40
+
41
+ Every 3 arcsecond patch of sky now has a unique 3-word combination associated with it.
42
+
43
+ ### Example
44
+
45
+ * Instead of `SN2024cld` or `ra=237.589792 dec=+18.93895`
46
+ * You get: `armrest-fraying-bullion`
47
+
48
+ ## Installation
49
+
50
+ To avoid issues with dependencies, we recommend setting up a virtual environment using
51
+ your favourite package manager. Then:c
52
+
53
+ ```bash
54
+ pip install starhash
55
+ ```
56
+
57
+ or with `uv`
58
+
59
+ ```bash
60
+ uv add starhash
61
+ ```
62
+
63
+ ## Quickstart
64
+
65
+ StarHash ships a basic CLI for quick queries by default
66
+
67
+ ```shell
68
+ starhash get-name-from-coord --ra=321.4214 --dec=-54.21231
69
+ ```
70
+
71
+ ```shell
72
+ starhash get-coord-from-name gathering-equinox-approach
73
+ ```
74
+
75
+ ## Development and contributing
76
+
77
+ ```shell
78
+ git clone https://github.com/tkillestein/starhash.git
79
+ ```
80
+
81
+ Then create the dev environment:
82
+
83
+ ```shell
84
+ uv sync --all-groups --python>=3.11
85
+ ```
86
+
87
+ Install the pre-commit hooks
88
+
89
+ ```shell
90
+ pre-commit install
91
+ ```
92
+
93
+ And you're ready to go!
94
+
95
+ Before committing any changes, run `pytest` to confirm that the hashing code still
96
+ satisfies the round-trip property.
97
+
98
+ ## Citation
99
+
100
+ If you include StarHash in your favourite pipeline/broker/API, please cite:
101
+
102
+ ```bibtex
103
+ @software{starhash,
104
+ author = {Tom Killestein},
105
+ title = {StarHash: Human-readable identifiers for astronomical coordinates},
106
+ year = {2026},
107
+ url = {https://github.com/tkillestein/starhash}
108
+ }
109
+ ```
@@ -0,0 +1,11 @@
1
+ starhash/__init__.py,sha256=sXLh7g3KC4QCFxcZGBTpG2scR7hmmBsMjq6LqRptkRg,22
2
+ starhash/core.py,sha256=z048WKJ6tXyVir6cZ2eaDXIMIUt79ECHmkf7Rtdbjac,6287
3
+ starhash/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
+ starhash/data/astronames_boost.txt,sha256=npURQ1Lo5teBYY-wDyhHsTb9XlXKiGVAafk_M2FSTQw,1667
5
+ starhash/data/combolist.txt,sha256=mWBHR7v0kxEbXGjkiVmoTZTj9IZOhj3_b1D5kVEO-1M,63595
6
+ starhash/data/eff_largewordlist.txt,sha256=nDixUkOM8tCPhD9O_ksDWsjl9sZstbM2EyFN4lUkuOY,108847
7
+ starhash-1.0.0.dist-info/METADATA,sha256=SbqRlcu1rrO9a8r5mQrogwZzlMP-GSSdUBNzkAOmNZk,3340
8
+ starhash-1.0.0.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
9
+ starhash-1.0.0.dist-info/entry_points.txt,sha256=Xvnkt0O4UuimpdaOxSWDg8rso82Bapu5TUL4kj3MDlA,47
10
+ starhash-1.0.0.dist-info/licenses/LICENSE,sha256=o2UzJUbM-tSY-o3C2FXSq14iljfKcuOIryHHxILz0Xk,1065
11
+ starhash-1.0.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: hatchling 1.28.0
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ starhash = starhash.core:cli
@@ -0,0 +1,14 @@
1
+ Copyright 2025 Thomas Killestein
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
4
+ documentation files (the “Software”), to deal in the Software without restriction, including without limitation
5
+ the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,
6
+ and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
7
+
8
+ The above copyright notice and this permission notice shall be included in all copies or substantial portions of
9
+ the Software.
10
+
11
+ THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
12
+ WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
13
+ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
14
+ OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.