{"id":21175711,"url":"https://github.com/moisentinel/dicto","last_synced_at":"2026-02-03T07:31:20.877Z","repository":{"id":207772253,"uuid":"720056841","full_name":"moiSentineL/dicto","owner":"moiSentineL","description":"This says what you need it to say, but with pleasure.","archived":false,"fork":false,"pushed_at":"2024-12-24T03:35:07.000Z","size":91,"stargazers_count":2,"open_issues_count":3,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-09T23:27:03.876Z","etag":null,"topics":["edtech","education","fuck-yeah","hacktoberfest","learn","learning","teaching"],"latest_commit_sha":null,"homepage":"https://nibirsan.org/dicto/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/moiSentineL.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-11-17T13:42:22.000Z","updated_at":"2025-04-16T08:39:11.000Z","dependencies_parsed_at":null,"dependency_job_id":"c1bbf345-1614-4eea-8123-6cc3848eabf5","html_url":"https://github.com/moiSentineL/dicto","commit_stats":null,"previous_names":["moisentinel/dictatemyhomework","moisentinel/dicto"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/moiSentineL/dicto","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moiSentineL%2Fdicto","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moiSentineL%2Fdicto/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moiSentineL%2Fdicto/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moiSentineL%2Fdicto/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/moiSentineL","download_url":"https://codeload.github.com/moiSentineL/dicto/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/moiSentineL%2Fdicto/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29037467,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-03T06:39:36.383Z","status":"ssl_error","status_checked_at":"2026-02-03T06:39:32.787Z","response_time":96,"last_error":"SSL_read: 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":["edtech","education","fuck-yeah","hacktoberfest","learn","learning","teaching"],"created_at":"2024-11-20T17:00:22.922Z","updated_at":"2026-02-03T07:31:20.862Z","avatar_url":"https://github.com/moiSentineL.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# dicto.py 📝🔊\n\nThis is your friendly dictation companion, designed to make writing tasks a breeze!\n\ndicto.py is a simple yet powerful application that reads text aloud, allowing you to write it down physically at your own pace. It's perfect for:\n\n- Students who want to practice their handwriting while studying\n- Typewriters looking to increase their efficiency\n- Anyone who prefers a hands-on approach to note-taking\n\n## Features\n\n- 🌐 Web-based interface powered by Streamlit\n- 🎙️ Text-to-speech functionality using gTTS\n- 🌍 Multiple language support \n- 🗣️ Accent selection (UK, Nigerian, Australian so far)\n- ⏩ Customizable speech rate and pauses\n- 🔴 Real-time text highlighting\n- 📤 Upload your own text files or use the text area\n\n## Installation\n\n1. Clone this repository:\n   ```\n   git clone https://github.com/moiSentineL/dicto.git\n   ```\n\n2. Navigate to the project directory:\n   ```\n   cd dicto\n   ```\n\n3. Install the required dependencies:\n   ```\n   pip install -r requirements.txt\n   ```\n\n## Usage\n\n1. Run the Streamlit application:\n   ```\n   streamlit run dicto.py\n   ```\n\n2. Open your web browser and go to the URL provided by Streamlit (usually `http://localhost:8501`).\n\n3. Use the web interface to:\n   - Enter text in the text area or upload a `.txt` file\n   - Configure dictation settings in the sidebar:\n     - Select language and accent\n     - Adjust pause duration after full stops\n     - Set the number of words to read at once\n     - Modify the minimum pause and length multiplier\n   - Click the \"Dictate!\" button to start the dictation\n\n## Configuration Options\n\n- **Language**: Choose between English, French, and Hindi\n- **Accent**: Select UK, Nigerian, or Australian accent\n- **Pause after fullstop**: Set the duration of pause after each full stop (0-5 seconds)\n- **Word Groups**: Choose how many words to read in each group (0-5 words)\n- **Minimum pause**: Set the minimum pause between word groups (0-3 seconds)\n- **Length Multiplier**: Adjust the pause duration based on word length (0x-1x)\n\n## How It Works\n\n1. Dicto processes the input text, breaking it into paragraphs and word groups.\n2. It uses gTTS (Google Text-to-Speech) to convert text to speech.\n3. The application highlights the current word group being read.\n4. Pygame is used to play the audio.\n5. Customizable pauses are inserted between word groups and after punctuation marks.\n\n## Contributing\n\nWe welcome contributions! If you have ideas for improvements or bug fixes, please open an issue or submit a pull request.\n\n## Support\nIf you find Dicto.py helpful, ~~consider buying the developer a coffee! ☕~~ just make sure you have fun with it and share it with others who might benefit!.\n\nAlso maybe check out some of my other [stuff](https://github.com/moisentinel) 👈\n\nHappy writing! ✍️","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoisentinel%2Fdicto","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmoisentinel%2Fdicto","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmoisentinel%2Fdicto/lists"}