# Winston
> **Self-voicing IDE and productivity environment for blind developers**
Winston is a Python-based framework that provides an accessible, keyboard-driven development environment with integrated speech synthesis, code intelligence, and productivity tools designed specifically for blind users on Windows.
[](https://www.python.org/downloads/)
[](https://www.microsoft.com/windows)
[](LICENSE)
## ✨ Features
### 🎤 **Self-Voicing IDE**
- Full speech synthesis integration with JAWS and NVDA
- Announce code structure, indentation, and line numbers
- Speech-controlled navigation and editing
- Real-time spoken feedback for all operations
### 🐍 **Python Development**
- **Syntax-aware editor** with code intelligence
- **Live reload** - Edit code and reload without restarting (Control+F5)
- **Integrated debugger** with speech support
- **Code completion** via Jedi
- **Goto definition** across files
- **Type checking** with mypy integration
- **Code folding** for navigating large files
### 🤖 **AI Integration**
- **Claude Code** integration for AI-assisted development
- **GPT** integration for code generation and Q&A
- Natural language programming assistance
### 📅 **Productivity Applets**
- **Google Calendar** - Manage events with full speech support
- **Gmail** - Read and compose emails
- **Google Contacts** - Contact management with autocomplete
- **File Explorer** - Navigate filesystem with speech
- **Console** - Execute shell commands with output capture
- **JSON Editor** - Edit JSON with validation and formatting
### ⚡ **Developer Experience**
- **Hotkey-driven** - Everything accessible via keyboard
- **Modular architecture** - Easy to extend with custom applets
- **Live reload workflow** - Rapid iterative development
- **Comprehensive type hints** - Full mypy static type checking
- **Google-style docstrings** - Self-documenting codebase
## 🚀 Quick Start
### Prerequisites
- **Windows 10/11** (Winston uses Windows COM APIs)
- **Python 3.10+** (modern type hints required)
- **Screen reader** (JAWS or NVDA recommended)
### Installation
#### Option 1: Install from Source (Recommended for Development)
```bash
# Clone repository
git clone https://github.com/chris14257/winston.git
cd winston
# Install in editable mode with all dependencies
pip install -e .
# Run Winston
winston
```
#### Option 2: Quick Development Setup
```bash
# Clone and navigate to repository
git clone https://github.com/chris14257/winston.git
cd winston
# Install dependencies manually
pip install -r requirements.txt
# Run directly from source
python -m winston.churchill
```
**First run:**
- Winston beeps (350Hz, 200ms) on startup
- Root dialog opens with list of available applets
- Navigate with arrow keys, press Control+Return to open
### Basic Usage
**Launch Winston:**
```bash
# If installed via pip
winston
# Or run as module
python -m winston.churchill
```
**Essential Hotkeys:**
- **Control+Alt+E** - Open file explorer
- **Control+Alt+C** - Open Claude Code integration
- **Control+F5** - Reload current module (in pycoder)
- **Control+W** - Close current applet
- **Control+Q** - Quit Winston
See [Getting Started Guide](winston/docs/GETTING_STARTED.md) for detailed instructions.
## 📚 Documentation
- **[Getting Started](winston/docs/GETTING_STARTED.md)** - Installation, configuration, basic usage
- **[Winston Implementation Guide](winston/docs/WINSTON_IMPLEMENTATION.md)** - Type hints, architecture, development workflows
- **[Development Workflow](winston/claude.md)** - Commit practices, testing protocols, WIP features
- **[Pip Installation Plan](winston/docs/PIP_INSTALLATION_PLAN.md)** - Roadmap for pip installability
## 🎯 Core Applets
| Applet | Hotkey | Description |
|--------|--------|-------------|
| **Explorer** | Control+Alt+E | File system navigation and management |
| **Editor** | (auto) | Multi-line text editing with speech |
| **Pycoder** | (auto) | Python IDE with code intelligence |
| **Clauder** | Control+Alt+C | Claude Code AI integration |
| **Diary** | Control+Alt+D | Google Calendar management |
| **Console** | Control+Alt+X | Shell command execution |
| **Debugger** | (context) | Python debugger with speech |
Full list in [GETTING_STARTED.md](winston/docs/GETTING_STARTED.md#essential-applets).
## 🔧 Development Workflow
Winston enables **rapid iterative development** without restarting:
```python
# 1. Edit code in pycoder
@KeyHandler.hotkey("Control+Shift+T")
def command_my_feature(self, modified_name: str) -> None:
"""My new feature."""
self.say_strings("Feature works!")
# 2. Press Control+F5 to reload
# Winston says "reloaded"
# 3. Test immediately - changes are live!
# Press Control+Shift+T
# Hear: "Feature works!"
```
**What can be reloaded:**
- ✅ All applets (`winston/applets/*.py`)
- ✅ Most utility modules
- ❌ Core framework (requires restart)
See [Control+F5 Workflow](winston/docs/WINSTON_IMPLEMENTATION.md#applet-development-workflow-with-controlf5) for details.
## 🏗️ Architecture
Winston is built on a modular architecture:
```
winston/
├── framework.py # Core: Anchor, Carousel, COMThread
├── dialog.py # Base Dialog class with KeyHandler
├── subdialogs.py # FormDialog, TableDialog, Applet
├── elements.py # UI element types
├── churchill.py # Application launcher (entry point)
├── clem.py # Main event loop (pythoncom)
├── debugging.py # Debugger, inspector, logger
├── google_api.py # Google OAuth and API utilities
└── applets/ # Modular functionality
├── clauder.py # Claude Code integration
├── explorer.py # File explorer
├── pycoder.py # Python IDE
├── diary.py # Google Calendar
└── ...
```
**Key Patterns:**
- **pythoncom main loop** - Windows message pump for COM integration
- **asyncio on threads** - Async I/O without blocking main loop
- **Duck typing validation** - `element_attributes()` instead of ABCs
- **Protocol classes** - Type hints for structural typing
- **Live reload** - Module cache invalidation for hot reloading
See [Architecture Notes](winston/docs/WINSTON_IMPLEMENTATION.md#winston-architecture-notes) for in-depth coverage.
## 🤝 Contributing
Winston is under active development. Contributions welcome!
### Development Setup
```bash
# Clone repository
git clone https://github.com/chris14257/winston.git
cd winston
# Install in editable mode with development dependencies
pip install -e ".[dev]"
# Run type checker
python -m mypy winston --config-file=winston/mypy.ini
# Make changes and test with Control+F5
# Commit when working
```
### Contribution Guidelines
1. **Follow typing standards** - See [WINSTON_IMPLEMENTATION.md](winston/docs/WINSTON_IMPLEMENTATION.md)
2. **Add comprehensive docstrings** - Google style required
3. **Test your changes** - Create test scripts in `winston/scratch/`
4. **Run mypy** - Fix all type errors before committing
5. **Commit with attribution** - Use template from [claude.md](winston/claude.md)
See [claude.md](winston/claude.md) for complete development workflow.
## 🎓 Learning Winston
### For New Users
- Start with [Getting Started Guide](winston/docs/GETTING_STARTED.md)
- Explore `winston/applets/template.py` - Demonstrates all key patterns
- Read module docstrings - Winston is self-documenting
### For Developers
- Read [WINSTON_IMPLEMENTATION.md](winston/docs/WINSTON_IMPLEMENTATION.md)
- Study the type hints and docstrings throughout codebase
- Check [claude.md](winston/claude.md) for development practices
- Review recent commits for examples
### For Contributors
- Fork the repository
- Create feature branch
- Follow typing and docstring standards
- Test with Control+F5 workflow
- Submit pull request
## 🌟 Design Philosophy
Winston follows these principles:
1. **Accessibility First** - Every feature designed for screen reader users
2. **Keyboard-Driven** - All functionality accessible via hotkeys
3. **Speech Integrated** - Continuous spoken feedback
4. **Rapid Iteration** - Live reload for fast development cycles
5. **Type Safety** - Comprehensive type hints with mypy validation
6. **Self-Documenting** - Google-style docstrings throughout
7. **Modular** - Applet architecture for extensibility
## 🔮 Future Plans
### Short Term
- [ ] **Pip installability** - `pip install winston-ide` (see [plan](winston/docs/PIP_INSTALLATION_PLAN.md))
- [ ] **Cross-platform test framework** - Test without Windows dependencies
- [ ] **Runtime type checking** - Enable typeguard in development mode
- [ ] **More applets** - Email (mail.py), Jupyter (notebook.py)
### Long Term
- [ ] **Cross-platform support** - macOS and Linux versions
- [ ] **Plugin system** - Third-party applet distribution
- [ ] **Speech synthesis abstraction** - Support multiple TTS engines
- [ ] **Remote debugging** - Debug code on remote systems
See [WIP sections in claude.md](winston/claude.md) for active work.
## 📊 Project Status
**Current Version:** 0.1.0 (Alpha)
**Maturity:**
- ✅ Core framework stable
- ✅ Major applets working (explorer, pycoder, clauder, diary)
- ✅ Type hints complete across codebase
- ⚠️ Some applets incomplete (mail, notebook, souper)
- ⚠️ Windows-only (platform-specific dependencies)
- ⚠️ Not yet pip-installable (manual setup required)
**Type Checking:**
- Total modules: 24 (all typed)
- mypy errors: 257 (down from 546 baseline, 52.9% reduction)
- Most errors are from untyped dependencies or legitimate duck typing
See [mypy progress in claude.md](winston/claude.md) for details.
## 🙏 Acknowledgments
Winston builds on these excellent projects:
- **pywin32** - Windows COM integration
- **Jedi** - Python code intelligence
- **Google APIs** - Calendar, Gmail, Contacts
- **Claude Code** - AI-assisted development
- **JAWS/NVDA** - Screen reader integration
Named after Winston Churchill for resilience and reliability.
## 📄 License
MIT License - see [LICENSE](LICENSE) file for details.
## 🐛 Bug Reports & Questions
- **Issues:** [GitHub Issues](https://github.com/chris14257/winston/issues)
- **Discussions:** [GitHub Discussions](https://github.com/chris14257/winston/discussions)
- **Documentation:** Browse `winston/docs/` directory or source code
## 🚀 Why Winston?
Winston provides blind developers with a **complete development environment** that doesn't compromise on accessibility or functionality:
- **No visual dependencies** - Everything navigable by keyboard and speech
- **Professional-grade tools** - Real debugger, type checking, AI integration
- **Rapid development** - Live reload workflow matches sighted IDEs
- **Extensible** - Easy to add new tools and productivity features
- **Open source** - Customize to your workflow
Join us in making development accessible to everyone! 🎉
---
**Made with ❤️ for the blind developer community**
Raw data
{
"_id": null,
"home_page": null,
"name": "pywinston",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "accessibility, blind, tts, ide, productivity, voice, windows",
"author": null,
"author_email": "Chris <chris@example.com>",
"download_url": "https://files.pythonhosted.org/packages/e3/f8/b8781f08d02249378800e25f20280f13119fe5dec3b3d60b403a8ca62f30/pywinston-0.1.2.tar.gz",
"platform": null,
"description": "# Winston\r\n\r\n> **Self-voicing IDE and productivity environment for blind developers**\r\n\r\nWinston is a Python-based framework that provides an accessible, keyboard-driven development environment with integrated speech synthesis, code intelligence, and productivity tools designed specifically for blind users on Windows.\r\n\r\n[](https://www.python.org/downloads/)\r\n[](https://www.microsoft.com/windows)\r\n[](LICENSE)\r\n\r\n## \u2728 Features\r\n\r\n### \ud83c\udfa4 **Self-Voicing IDE**\r\n- Full speech synthesis integration with JAWS and NVDA\r\n- Announce code structure, indentation, and line numbers\r\n- Speech-controlled navigation and editing\r\n- Real-time spoken feedback for all operations\r\n\r\n### \ud83d\udc0d **Python Development**\r\n- **Syntax-aware editor** with code intelligence\r\n- **Live reload** - Edit code and reload without restarting (Control+F5)\r\n- **Integrated debugger** with speech support\r\n- **Code completion** via Jedi\r\n- **Goto definition** across files\r\n- **Type checking** with mypy integration\r\n- **Code folding** for navigating large files\r\n\r\n### \ud83e\udd16 **AI Integration**\r\n- **Claude Code** integration for AI-assisted development\r\n- **GPT** integration for code generation and Q&A\r\n- Natural language programming assistance\r\n\r\n### \ud83d\udcc5 **Productivity Applets**\r\n- **Google Calendar** - Manage events with full speech support\r\n- **Gmail** - Read and compose emails\r\n- **Google Contacts** - Contact management with autocomplete\r\n- **File Explorer** - Navigate filesystem with speech\r\n- **Console** - Execute shell commands with output capture\r\n- **JSON Editor** - Edit JSON with validation and formatting\r\n\r\n### \u26a1 **Developer Experience**\r\n- **Hotkey-driven** - Everything accessible via keyboard\r\n- **Modular architecture** - Easy to extend with custom applets\r\n- **Live reload workflow** - Rapid iterative development\r\n- **Comprehensive type hints** - Full mypy static type checking\r\n- **Google-style docstrings** - Self-documenting codebase\r\n\r\n## \ud83d\ude80 Quick Start\r\n\r\n### Prerequisites\r\n\r\n- **Windows 10/11** (Winston uses Windows COM APIs)\r\n- **Python 3.10+** (modern type hints required)\r\n- **Screen reader** (JAWS or NVDA recommended)\r\n\r\n### Installation\r\n\r\n#### Option 1: Install from Source (Recommended for Development)\r\n\r\n```bash\r\n# Clone repository\r\ngit clone https://github.com/chris14257/winston.git\r\ncd winston\r\n\r\n# Install in editable mode with all dependencies\r\npip install -e .\r\n\r\n# Run Winston\r\nwinston\r\n```\r\n\r\n#### Option 2: Quick Development Setup\r\n\r\n```bash\r\n# Clone and navigate to repository\r\ngit clone https://github.com/chris14257/winston.git\r\ncd winston\r\n\r\n# Install dependencies manually\r\npip install -r requirements.txt\r\n\r\n# Run directly from source\r\npython -m winston.churchill\r\n```\r\n\r\n**First run:**\r\n- Winston beeps (350Hz, 200ms) on startup\r\n- Root dialog opens with list of available applets\r\n- Navigate with arrow keys, press Control+Return to open\r\n\r\n### Basic Usage\r\n\r\n**Launch Winston:**\r\n```bash\r\n# If installed via pip\r\nwinston\r\n\r\n# Or run as module\r\npython -m winston.churchill\r\n```\r\n\r\n**Essential Hotkeys:**\r\n- **Control+Alt+E** - Open file explorer\r\n- **Control+Alt+C** - Open Claude Code integration\r\n- **Control+F5** - Reload current module (in pycoder)\r\n- **Control+W** - Close current applet\r\n- **Control+Q** - Quit Winston\r\n\r\nSee [Getting Started Guide](winston/docs/GETTING_STARTED.md) for detailed instructions.\r\n\r\n## \ud83d\udcda Documentation\r\n\r\n- **[Getting Started](winston/docs/GETTING_STARTED.md)** - Installation, configuration, basic usage\r\n- **[Winston Implementation Guide](winston/docs/WINSTON_IMPLEMENTATION.md)** - Type hints, architecture, development workflows\r\n- **[Development Workflow](winston/claude.md)** - Commit practices, testing protocols, WIP features\r\n- **[Pip Installation Plan](winston/docs/PIP_INSTALLATION_PLAN.md)** - Roadmap for pip installability\r\n\r\n## \ud83c\udfaf Core Applets\r\n\r\n| Applet | Hotkey | Description |\r\n|--------|--------|-------------|\r\n| **Explorer** | Control+Alt+E | File system navigation and management |\r\n| **Editor** | (auto) | Multi-line text editing with speech |\r\n| **Pycoder** | (auto) | Python IDE with code intelligence |\r\n| **Clauder** | Control+Alt+C | Claude Code AI integration |\r\n| **Diary** | Control+Alt+D | Google Calendar management |\r\n| **Console** | Control+Alt+X | Shell command execution |\r\n| **Debugger** | (context) | Python debugger with speech |\r\n\r\nFull list in [GETTING_STARTED.md](winston/docs/GETTING_STARTED.md#essential-applets).\r\n\r\n## \ud83d\udd27 Development Workflow\r\n\r\nWinston enables **rapid iterative development** without restarting:\r\n\r\n```python\r\n# 1. Edit code in pycoder\r\n@KeyHandler.hotkey(\"Control+Shift+T\")\r\ndef command_my_feature(self, modified_name: str) -> None:\r\n \"\"\"My new feature.\"\"\"\r\n self.say_strings(\"Feature works!\")\r\n\r\n# 2. Press Control+F5 to reload\r\n# Winston says \"reloaded\"\r\n\r\n# 3. Test immediately - changes are live!\r\n# Press Control+Shift+T\r\n# Hear: \"Feature works!\"\r\n```\r\n\r\n**What can be reloaded:**\r\n- \u2705 All applets (`winston/applets/*.py`)\r\n- \u2705 Most utility modules\r\n- \u274c Core framework (requires restart)\r\n\r\nSee [Control+F5 Workflow](winston/docs/WINSTON_IMPLEMENTATION.md#applet-development-workflow-with-controlf5) for details.\r\n\r\n## \ud83c\udfd7\ufe0f Architecture\r\n\r\nWinston is built on a modular architecture:\r\n\r\n```\r\nwinston/\r\n\u251c\u2500\u2500 framework.py # Core: Anchor, Carousel, COMThread\r\n\u251c\u2500\u2500 dialog.py # Base Dialog class with KeyHandler\r\n\u251c\u2500\u2500 subdialogs.py # FormDialog, TableDialog, Applet\r\n\u251c\u2500\u2500 elements.py # UI element types\r\n\u251c\u2500\u2500 churchill.py # Application launcher (entry point)\r\n\u251c\u2500\u2500 clem.py # Main event loop (pythoncom)\r\n\u251c\u2500\u2500 debugging.py # Debugger, inspector, logger\r\n\u251c\u2500\u2500 google_api.py # Google OAuth and API utilities\r\n\u2514\u2500\u2500 applets/ # Modular functionality\r\n \u251c\u2500\u2500 clauder.py # Claude Code integration\r\n \u251c\u2500\u2500 explorer.py # File explorer\r\n \u251c\u2500\u2500 pycoder.py # Python IDE\r\n \u251c\u2500\u2500 diary.py # Google Calendar\r\n \u2514\u2500\u2500 ...\r\n```\r\n\r\n**Key Patterns:**\r\n- **pythoncom main loop** - Windows message pump for COM integration\r\n- **asyncio on threads** - Async I/O without blocking main loop\r\n- **Duck typing validation** - `element_attributes()` instead of ABCs\r\n- **Protocol classes** - Type hints for structural typing\r\n- **Live reload** - Module cache invalidation for hot reloading\r\n\r\nSee [Architecture Notes](winston/docs/WINSTON_IMPLEMENTATION.md#winston-architecture-notes) for in-depth coverage.\r\n\r\n## \ud83e\udd1d Contributing\r\n\r\nWinston is under active development. Contributions welcome!\r\n\r\n### Development Setup\r\n\r\n```bash\r\n# Clone repository\r\ngit clone https://github.com/chris14257/winston.git\r\ncd winston\r\n\r\n# Install in editable mode with development dependencies\r\npip install -e \".[dev]\"\r\n\r\n# Run type checker\r\npython -m mypy winston --config-file=winston/mypy.ini\r\n\r\n# Make changes and test with Control+F5\r\n# Commit when working\r\n```\r\n\r\n### Contribution Guidelines\r\n\r\n1. **Follow typing standards** - See [WINSTON_IMPLEMENTATION.md](winston/docs/WINSTON_IMPLEMENTATION.md)\r\n2. **Add comprehensive docstrings** - Google style required\r\n3. **Test your changes** - Create test scripts in `winston/scratch/`\r\n4. **Run mypy** - Fix all type errors before committing\r\n5. **Commit with attribution** - Use template from [claude.md](winston/claude.md)\r\n\r\nSee [claude.md](winston/claude.md) for complete development workflow.\r\n\r\n## \ud83c\udf93 Learning Winston\r\n\r\n### For New Users\r\n- Start with [Getting Started Guide](winston/docs/GETTING_STARTED.md)\r\n- Explore `winston/applets/template.py` - Demonstrates all key patterns\r\n- Read module docstrings - Winston is self-documenting\r\n\r\n### For Developers\r\n- Read [WINSTON_IMPLEMENTATION.md](winston/docs/WINSTON_IMPLEMENTATION.md)\r\n- Study the type hints and docstrings throughout codebase\r\n- Check [claude.md](winston/claude.md) for development practices\r\n- Review recent commits for examples\r\n\r\n### For Contributors\r\n- Fork the repository\r\n- Create feature branch\r\n- Follow typing and docstring standards\r\n- Test with Control+F5 workflow\r\n- Submit pull request\r\n\r\n## \ud83c\udf1f Design Philosophy\r\n\r\nWinston follows these principles:\r\n\r\n1. **Accessibility First** - Every feature designed for screen reader users\r\n2. **Keyboard-Driven** - All functionality accessible via hotkeys\r\n3. **Speech Integrated** - Continuous spoken feedback\r\n4. **Rapid Iteration** - Live reload for fast development cycles\r\n5. **Type Safety** - Comprehensive type hints with mypy validation\r\n6. **Self-Documenting** - Google-style docstrings throughout\r\n7. **Modular** - Applet architecture for extensibility\r\n\r\n## \ud83d\udd2e Future Plans\r\n\r\n### Short Term\r\n- [ ] **Pip installability** - `pip install winston-ide` (see [plan](winston/docs/PIP_INSTALLATION_PLAN.md))\r\n- [ ] **Cross-platform test framework** - Test without Windows dependencies\r\n- [ ] **Runtime type checking** - Enable typeguard in development mode\r\n- [ ] **More applets** - Email (mail.py), Jupyter (notebook.py)\r\n\r\n### Long Term\r\n- [ ] **Cross-platform support** - macOS and Linux versions\r\n- [ ] **Plugin system** - Third-party applet distribution\r\n- [ ] **Speech synthesis abstraction** - Support multiple TTS engines\r\n- [ ] **Remote debugging** - Debug code on remote systems\r\n\r\nSee [WIP sections in claude.md](winston/claude.md) for active work.\r\n\r\n## \ud83d\udcca Project Status\r\n\r\n**Current Version:** 0.1.0 (Alpha)\r\n\r\n**Maturity:**\r\n- \u2705 Core framework stable\r\n- \u2705 Major applets working (explorer, pycoder, clauder, diary)\r\n- \u2705 Type hints complete across codebase\r\n- \u26a0\ufe0f Some applets incomplete (mail, notebook, souper)\r\n- \u26a0\ufe0f Windows-only (platform-specific dependencies)\r\n- \u26a0\ufe0f Not yet pip-installable (manual setup required)\r\n\r\n**Type Checking:**\r\n- Total modules: 24 (all typed)\r\n- mypy errors: 257 (down from 546 baseline, 52.9% reduction)\r\n- Most errors are from untyped dependencies or legitimate duck typing\r\n\r\nSee [mypy progress in claude.md](winston/claude.md) for details.\r\n\r\n## \ud83d\ude4f Acknowledgments\r\n\r\nWinston builds on these excellent projects:\r\n\r\n- **pywin32** - Windows COM integration\r\n- **Jedi** - Python code intelligence\r\n- **Google APIs** - Calendar, Gmail, Contacts\r\n- **Claude Code** - AI-assisted development\r\n- **JAWS/NVDA** - Screen reader integration\r\n\r\nNamed after Winston Churchill for resilience and reliability.\r\n\r\n## \ud83d\udcc4 License\r\n\r\nMIT License - see [LICENSE](LICENSE) file for details.\r\n\r\n## \ud83d\udc1b Bug Reports & Questions\r\n\r\n- **Issues:** [GitHub Issues](https://github.com/chris14257/winston/issues)\r\n- **Discussions:** [GitHub Discussions](https://github.com/chris14257/winston/discussions)\r\n- **Documentation:** Browse `winston/docs/` directory or source code\r\n\r\n## \ud83d\ude80 Why Winston?\r\n\r\nWinston provides blind developers with a **complete development environment** that doesn't compromise on accessibility or functionality:\r\n\r\n- **No visual dependencies** - Everything navigable by keyboard and speech\r\n- **Professional-grade tools** - Real debugger, type checking, AI integration\r\n- **Rapid development** - Live reload workflow matches sighted IDEs\r\n- **Extensible** - Easy to add new tools and productivity features\r\n- **Open source** - Customize to your workflow\r\n\r\nJoin us in making development accessible to everyone! \ud83c\udf89\r\n\r\n---\r\n\r\n**Made with \u2764\ufe0f for the blind developer community**\r\n",
"bugtrack_url": null,
"license": null,
"summary": "Self-voicing IDE and personal productivity environment for blind users",
"version": "0.1.2",
"project_urls": {
"Bug Tracker": "https://github.com/chris14257/winston/issues",
"Documentation": "https://github.com/chris14257/winston#readme",
"Homepage": "https://github.com/chris14257/winston",
"Repository": "https://github.com/chris14257/winston"
},
"split_keywords": [
"accessibility",
" blind",
" tts",
" ide",
" productivity",
" voice",
" windows"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "486a8279208e3ed028d24a1975710784a38e87ddf7f6ec922d7d2697aa30083a",
"md5": "2bf15912fb0eac6b6bcadcbd5618d9ae",
"sha256": "cb3fa1a2148bd688a09029aa79d648c745af523d1677c29145934c35b5a00cd7"
},
"downloads": -1,
"filename": "pywinston-0.1.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "2bf15912fb0eac6b6bcadcbd5618d9ae",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 247454,
"upload_time": "2025-10-26T18:54:16",
"upload_time_iso_8601": "2025-10-26T18:54:16.742197Z",
"url": "https://files.pythonhosted.org/packages/48/6a/8279208e3ed028d24a1975710784a38e87ddf7f6ec922d7d2697aa30083a/pywinston-0.1.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e3f8b8781f08d02249378800e25f20280f13119fe5dec3b3d60b403a8ca62f30",
"md5": "467ce35e368e20e6bb2f4dc5d0b51d6f",
"sha256": "5a03b922b7fb030b13836f8cd288b00bd8046a8bb85bdd319dcf7167cdbfce70"
},
"downloads": -1,
"filename": "pywinston-0.1.2.tar.gz",
"has_sig": false,
"md5_digest": "467ce35e368e20e6bb2f4dc5d0b51d6f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 229919,
"upload_time": "2025-10-26T18:54:18",
"upload_time_iso_8601": "2025-10-26T18:54:18.730625Z",
"url": "https://files.pythonhosted.org/packages/e3/f8/b8781f08d02249378800e25f20280f13119fe5dec3b3d60b403a8ca62f30/pywinston-0.1.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-26 18:54:18",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "chris14257",
"github_project": "winston",
"github_not_found": true,
"lcname": "pywinston"
}