Skip to main content

Telugu Chandassu Identifier (telugu-chandassu)

PyPI version Python versions License: AGPL v3

A rule-based Python engine for identifying and analyzing Telugu prosodic meters (ఛందస్సు). It classifies Laghu (లఘువు) and Guru (గురువు) weights and matches Vritta (వృత్తం), Jati (జాతి), and Upajati (ఉపజాతి) padyam with detailed Gana, Yati, and Prasa breakdowns.


Installation

Core Library (Zero External Dependencies)

pip install telugu-chandassu

With Interactive Streamlit App

pip install "telugu-chandassu[app]"

For Development & Testing

pip install "telugu-chandassu[dev]"

Supported Meters

Vritta (వృత్తం — Syllabic / 3-akshara ganas)

Meter (తెలుగు) Meter (English) Gana Sequence Yati Position
ఉత్పలమాల Utpalamala Bha Ra Na Bha Bha Ra Va 10
చంపకమాల Champakamala Na Ja Bha Ja Ja Ja Ra 11
శార్దూలము Shardulam Ma Sa Ja Sa Ta Ta Ga 13
మత్తేభము Mattebham Sa Bha Ra Na Ma Ya Va 14

Jati (జాతి — Matra-based with Surya/Indra ganas, Prasa required)

Meter (తెలుగు) Meter (English) Padas Structure
ద్విపద Dwipada 2 3 Indra + 1 Surya per pada
తరువోజ Taruvoja 4 (3 Indra + 1 Surya) × 2 per pada
కందం Kandam 4 Odd: 3 K-ganas, Even: 5 K-ganas

Upajati (ఉపజాతి — Matra-based, Prasa not required, Prasa-Yati allowed)

Meter (తెలుగు) Meter (English) Padas Structure
ఆటవెలది Ataveladi 4 Odd: 3 Indra + 2 Surya, Even: 5 Surya
తేటగీతి Tetagiti 4 1 Surya + 2 Indra + 2 Surya per pada
సీసం Sisam 4 6 Indra + 2 Surya per pada

Usage

from telugu_chandas import ChandasEngine

engine = ChandasEngine()

poem_text = """భవదున్మేషవిజృంభణంబు పరికింపంగా సరోజాతసం-
భవు జన్మంబు భవన్నిమేష మమితబ్రహ్మాండకల్పాంత భై-
రవసంక్షోభిత మన్నఁ దక్కిన భవత్ప్రారంభభూరిక్రియా-
నివహం బెవ్వరు నేర్తు రిట్టిదని వర్ణింపంగ సర్వేశ్వరా!"""

# 1. Identify Meter
result = engine.identify_meter(poem_text)
print("Meter Name     :", result.meter_name)       # "Mattebham"
print("Confidence     :", result.confidence)       # "95.0%"
print("Yati Valid     :", result.yati_valid)       # True
print("Prasa Valid    :", result.prasa_valid)      # True
print("Ganas Found    :", result.ganas_found)      # ['Sa', 'Bha', 'Ra', 'Na', 'Ma', 'Ya', 'Va']
print("Prasa Consonant:", result.prasa_note)       # Main Prasa: వ

# 2. Analyze Individual Aksharas & Weights
tokens = engine.analyze(poem_text)
for token in tokens:
    if token.is_word:
        for ak in token.aksharas:
            print(f"{ak.text}: {ak.weight.value}")  # e.g. "భ": "I", "వ": "I", "దు": "U"

# 3. Debug Output
print(engine.debug_output(poem_text))

Running the Web UI

If installed with the [app] extra or from source:

streamlit run app.py

Running Tests

pytest tests/ -v

License

This project is licensed under the GNU Affero General Public License v3 (AGPL-3.0).

Metadata

Release files for telugu-chandassu 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for telugu-chandassu 0.1.0
File Size Uploaded
telugu_chandassu-0.1.0.tar.gz 40.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for telugu-chandassu 0.1.0
File Interpreter ABI Platform
telugu_chandassu-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 88.9 kB

Release files / telugu_chandassu-0.1.0.tar.gz

Download URL telugu_chandassu-0.1.0.tar.gz
Size 40.7 kB
Tags Source
SHA-256 checksum
How to use checksums
af70320a6191d6caed026c37e0de6583b08cb46d0f640788ca5ea21321d7f2ca
BLAKE2b-256 checksum
How to use checksums
de225c24735bc88fe3262d6d0611f902eba6d81383cb15135d02b4e68473971a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 15, 2026.

Transparency log

Release files / telugu_chandassu-0.1.0-py3-none-any.whl

Download URL telugu_chandassu-0.1.0-py3-none-any.whl
Size 48.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
eac9ba8e54c94a6ebe1840ab29cfee75622a4792cad8869f9be7d0f9824fd190
BLAKE2b-256 checksum
How to use checksums
9e028a1894401a164f44b6002e686e72a5a0566961c6d4b43d4c17cf64fa391c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 15, 2026.

Transparency log

Release history Release notifications | RSS feed

0.2.0

2 release files

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page