{"id":25847737,"url":"https://github.com/alyshmahell/zzml","last_synced_at":"2026-03-04T09:01:10.099Z","repository":{"id":237463113,"uuid":"686553936","full_name":"AlyShmahell/zzml","owner":"AlyShmahell","description":"SSML (Speech Synthesis Markup Language) Preprocessor/Interpreter/Compiler.","archived":false,"fork":false,"pushed_at":"2024-06-04T18:07:04.000Z","size":1038,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-27T12:54:17.643Z","etag":null,"topics":["ssml","ssml-parser","ssml-parsing","work-in-progress"],"latest_commit_sha":null,"homepage":"","language":"Yacc","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AlyShmahell.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-09-03T07:13:42.000Z","updated_at":"2024-06-04T18:07:09.000Z","dependencies_parsed_at":"2024-05-28T18:06:07.398Z","dependency_job_id":"cfc65be9-9fab-4f9a-b487-ea14ebfdf8b7","html_url":"https://github.com/AlyShmahell/zzml","commit_stats":null,"previous_names":["alyshmahell/zzml"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AlyShmahell/zzml","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlyShmahell%2Fzzml","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlyShmahell%2Fzzml/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlyShmahell%2Fzzml/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlyShmahell%2Fzzml/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AlyShmahell","download_url":"https://codeload.github.com/AlyShmahell/zzml/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AlyShmahell%2Fzzml/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30076935,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T08:01:56.766Z","status":"ssl_error","status_checked_at":"2026-03-04T08:00:42.919Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ssml","ssml-parser","ssml-parsing","work-in-progress"],"created_at":"2025-03-01T10:35:11.223Z","updated_at":"2026-03-04T09:01:10.008Z","avatar_url":"https://github.com/AlyShmahell.png","language":"Yacc","funding_links":[],"categories":[],"sub_categories":[],"readme":"# zzml\n- SSML (Speech Synthesis Markup Language) Preprocessor/Interpreter/Compiler.  \n- **work in progress**\n## Requirements\n```sh\nsudo apt update \u0026\u0026 sudo apt install g++ flex bison python3-dev\n```\n## Installation\n```sh\npip install git+https://github.com/AlyShmahell/zzml.git\n```\n## Example\n```py\nfrom zzml import zzml\n\nprint(\n    zzml(\n        \"\"\"\n        \u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n        \u003cssml\u003e\n            \u003cspeak\u003e\n                \u003cp\u003e\n                    \u003cbreak time=\"1s\"\u003e \u003c/break\u003e\n                    Hello, this is an example of a complex SSML document.\n                    \u003cemphasis level=\"strong\"\u003eThis text will be spoken with strong emphasis.\u003c/emphasis\u003e\n                    \u003cprosody rate=\"slow\"\u003eThis text will be spoken at a slower pace.\u003c/prosody\u003e\n                    \u003cp\u003e\n                    \u003cbreak time=\"2s\"\u003e \u003c/break\u003e\n                        This is a paragraph break with a 2-second pause.\n                        \u003csay-as interpret-as=\"date\"\u003eJanuary 1, 2022\u003c/say-as\u003e\n                        \u003csay-as interpret-as=\"time\"\u003e12:30 PM\u003c/say-as\u003e\n                    \u003c/p\u003e\n                    \u003cp\u003e\n                        \u003cbreak time=\"1s\"\u003e \u003c/break\u003e\n                        This is another paragraph with a 1-second pause.\n                        \u003cphoneme alphabet=\"ipa\" ph=\"tɪm ɪz ən ɔðər pɑrəɡræf\"\u003eThis is another paragraph.\u003c/phoneme\u003e\n                    \u003c/p\u003e\n                \u003c/p\u003e\n            \u003c/speak\u003e\n        \u003c/ssml\u003e\n        \"\"\"\n    )\n)\n\n```  \n\nresult:  \n```sh\n{\n    \"func\": {\n        \"0\": {\n            \"name\": \"?xml\",\n            \"params\": [\n                \"version=\\\"1.0\\\"\",\n                \"encoding=\\\"UTF-8\\\"\",\n                \"?\"\n            ]\n        },\n        \"1\": {\n            \"name\": \"ssml\",\n            \"params\": []\n        },\n        \"10\": {\n            \"name\": \"say-as\",\n            \"params\": [\n                \"interpret-as=\\\"time\\\"\"\n            ]\n        },\n        \"11\": {\n            \"name\": \"p\",\n            \"params\": []\n        },\n        \"12\": {\n            \"name\": \"break\",\n            \"params\": [\n                \"time=\\\"1s\\\"\"\n            ]\n        },\n        \"13\": {\n            \"name\": \"phoneme\",\n            \"params\": [\n                \"alphabet=\\\"ipa\\\"\",\n                \"ph=\\\"tɪm ɪz ən ɔðər pɑrəɡræf\\\"\"\n            ]\n        },\n        \"2\": {\n            \"name\": \"speak\",\n            \"params\": []\n        },\n        \"3\": {\n            \"name\": \"p\",\n            \"params\": []\n        },\n        \"4\": {\n            \"name\": \"break\",\n            \"params\": [\n                \"time=\\\"1s\\\"\"\n            ]\n        },\n        \"5\": {\n            \"name\": \"emphasis\",\n            \"params\": [\n                \"level=\\\"strong\\\"\"\n            ]\n        },\n        \"6\": {\n            \"name\": \"prosody\",\n            \"params\": [\n                \"rate=\\\"slow\\\"\"\n            ]\n        },\n        \"7\": {\n            \"name\": \"p\",\n            \"params\": []\n        },\n        \"8\": {\n            \"name\": \"break\",\n            \"params\": [\n                \"time=\\\"2s\\\"\"\n            ]\n        },\n        \"9\": {\n            \"name\": \"say-as\",\n            \"params\": [\n                \"interpret-as=\\\"date\\\"\"\n            ]\n        }\n    },\n    \"text\": {\n        \"0\": {\n            \"ops\": [\n                \"3\",\n                \"2\",\n                \"1\",\n                \"0\"\n            ],\n            \"val\": \"                    Hello, this is an example of a complex SSML document.\"\n        },\n        \"1\": {\n            \"ops\": [\n                \"5\",\n                \"3\",\n                \"2\",\n                \"1\",\n                \"0\"\n            ],\n            \"val\": \"This text will be spoken with strong emphasis.\"\n        },\n        \"2\": {\n            \"ops\": [\n                \"6\",\n                \"3\",\n                \"2\",\n                \"1\",\n                \"0\"\n            ],\n            \"val\": \"This text will be spoken at a slower pace.\"\n        },\n        \"3\": {\n            \"ops\": [\n                \"7\",\n                \"3\",\n                \"2\",\n                \"1\",\n                \"0\"\n            ],\n            \"val\": \"                        This is a paragraph break with a 2-second pause.\"\n        },\n        \"4\": {\n            \"ops\": [\n                \"9\",\n                \"7\",\n                \"3\",\n                \"2\",\n                \"1\",\n                \"0\"\n            ],\n            \"val\": \"January 1, 2022\"\n        },\n        \"5\": {\n            \"ops\": [\n                \"10\",\n                \"7\",\n                \"3\",\n                \"2\",\n                \"1\",\n                \"0\"\n            ],\n            \"val\": \"12:30 PM\"\n        },\n        \"6\": {\n            \"ops\": [\n                \"11\",\n                \"3\",\n                \"2\",\n                \"1\",\n                \"0\"\n            ],\n            \"val\": \"                        This is another paragraph with a 1-second pause.\"\n        },\n        \"7\": {\n            \"ops\": [\n                \"13\",\n                \"11\",\n                \"3\",\n                \"2\",\n                \"1\",\n                \"0\"\n            ],\n            \"val\": \"This is another paragraph.\"\n        }\n    }\n}\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falyshmahell%2Fzzml","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falyshmahell%2Fzzml","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falyshmahell%2Fzzml/lists"}