tsukiMOJi
Moon phase emoji for any date. 月 (tsuki, "moon") + moji, as in emoji.
from tsukimoji import get_moon_phase, emoji
phase = get_moon_phase()
phase.emoji # "🌔"
phase.name # "Waxing Gibbous"
phase.age_days # 12.3
phase.illumination # 0.87
emoji() # just the emoji, for "now"
from datetime import datetime, timezone
get_moon_phase(datetime(2026, 1, 1, tzinfo=timezone.utc)) # phase for any specific time
# Moon faces: 🌚 for New Moon and 🌝 for Full Moon
emoji(datetime(2026, 10, 26, 4, tzinfo=timezone.utc), faces=True) # "🌝"
Phase calendar
from tsukimoji import calendar, calendar_csv, calendar_json, calendar_text
calendar("2026-10") # one CalendarDay per day of October 2026
calendar_csv("2026-11", "2027-02") # November through February, as CSV
calendar_json(2026) # the whole year, as JSON
calendar_text("2026", "2027") # two years of month grids, as text
Pass a year ("2026" or 2026), a month ("2026-10"), a day
("2026-10-04") or a date, plus an optional second one to make a range.
Each new moon, quarter and full moon appears on the day it happens, with the
exact time. See the
main README for the
formats.
Installation
pip install tsukimoji
How it works
tsukiMOJi measures elapsed time since a known new moon (2000-01-06 18:14 UTC) against the synodic month (29.530588853 days) to find how far into the current lunar cycle a given moment falls, then maps that fraction onto the eight standard moon-phase emoji (🌑🌒🌓🌔🌕🌖🌗🌘). Illumination is derived separately from the same cycle position via a cosine curve, for display purposes.
License
MIT
Metadata
Release files for tsukimoji 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| tsukimoji-0.2.0.tar.gz | 8.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tsukimoji-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 15.0 kB
Release files / tsukimoji-0.2.0.tar.gz
| Download URL | tsukimoji-0.2.0.tar.gz |
|---|---|
| Size | 8.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
66f5bc9131f373d9da2aca6d75af92c5f117e9a5a6f8ff1a89a62da36bcf4505
|
|
BLAKE2b-256 checksum How to use checksums |
bb70d3e2001ee4dc878d9ff07ce3edb2ba7479bd66fdb3cc533c2b39b0fd9436
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.1
|
Release files / tsukimoji-0.2.0-py3-none-any.whl
| Download URL | tsukimoji-0.2.0-py3-none-any.whl |
|---|---|
| Size | 6.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b936e50c3cfdcc2dee8ca0e126dfb6c3b773ff1f4ac27e232d740523e29fb56b
|
|
BLAKE2b-256 checksum How to use checksums |
fea59ad12308ee6168e18a6c637891d133f1ccdc020d0d111b5bae32db21a2e5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.1
|