Universal Python documentation tooltips - Works with 500+ Python symbols!
SimplePyDocs provides instant, comprehensive documentation tooltips when hovering over ANY Python symbol in VS Code. From built-in functions to popular libraries like pandas, numpy, and requests - get documentation instantly without leaving your editor!
- Universal Coverage - Works with 500+ Python symbols including built-ins, modules, and libraries
- Comprehensive Documentation - All Python keywords, 143+ built-ins, and popular libraries
- Two Display Modes:
- Beginner Mode: Simple one-liner explanations
- Developer Mode: Detailed signatures with parameters
- Dynamic Discovery - Automatically finds and documents Python symbols
- Smart Fallbacks - Uses Python's built-in
__doc__strings - Customizable - Add your own documentation overrides
- Modern UI - Clean, professional tooltip rendering
- Security First - Built with comprehensive security measures
- Python Beginners: Learn what keywords and functions do without leaving your editor
- Quick Reference: Get instant reminders about function parameters and usage
- Code Reviews: Understand unfamiliar Python code quickly
- Teaching: Provide immediate context for Python concepts
- Data Scientists: Get docs for pandas, numpy, matplotlib functions
- Web Developers: Access requests, flask, django documentation
- System Admins: Get os, subprocess, threading module docs
- Full-Stack Developers: Comprehensive coverage of Python ecosystem
- Open VS Code
- Go to Extensions (
Ctrl+Shift+X) - Search for "SimplePyDocs"
- Click Install
- Clone this repository:
git clone https://github.com/kunalbandale/simple-py-docs.git cd simple-py-docs - Install dependencies:
npm install
- Build the extension:
npm run compile
- Press
F5in VS Code to run the extension in a new Extension Development Host window
- Open any Python file (
.py) - Hover over any Python keyword or built-in function
- See instant documentation tooltips!
Open VS Code settings (Ctrl+,) and search for "SimplePyDocs" to customize:
{
"simplePyDocs.mode": "beginner", // "beginner" or "developer"
"simplePyDocs.enableBuiltins": true, // Enable built-in function tooltips
"simplePyDocs.enableKeywords": true, // Enable keyword tooltips
"simplePyDocs.customDocs": { // Custom documentation overrides
"myFunction": "My custom documentation"
}
}- Show All Python Built-ins:
Ctrl+Shift+Pโ "SimplePyDocs: Show All Python Built-ins"- Displays comprehensive list of available Python functions and classes
- Shows total count of discoverable symbols
len โ "Return the number of items in obj"
len
**Return the number of items in obj**
simple-py-docs/
โโโ src/
โ โโโ extension.ts # Main extension logic with universal Python support
โโโ media/
โ โโโ icon.png # Extension logo (128x128)
โโโ screenshots/ # Extension screenshots and demos
โโโ package.json # Extension metadata & publishing config
โโโ tsconfig.json # TypeScript configuration
โโโ .vscode/ # VS Code configuration
โ โโโ launch.json # Debug configuration
โ โโโ tasks.json # Build tasks
โโโ README.md # This file
# Install dependencies
npm install
# Build the extension
npm run compile
# Watch for changes
npm run watch
# Package for publishing
npm run package
# Publish to marketplace
npm run publish# Run tests
npm test
# Run extension in development mode
# Press F5 in VS Code- Language: TypeScript (VS Code standard)
- APIs: Official VS Code Extension API (
vscode.languages.registerHoverProvider) - Documentation Source: Python built-in
__doc__strings + dynamic module discovery - Rendering: VS Code Markdown rendering for rich tooltips
- Coverage: 500+ Python symbols including built-ins, modules, and popular libraries
- PythonHoverProvider: Main hover provider class implementing
vscode.HoverProvider - Universal Documentation: Dynamically discovers and documents Python symbols
- Module Discovery: Searches built-ins, common modules, and popular libraries
- Security Features: Input validation, process timeouts, and rate limiting
- Configuration: VS Code workspace configuration integration
- Fallback System: Comprehensive fallback documentation system
- Lazy Loading: Documentation fetched only when hovering
- Smart Caching: Built-in documentation cached in memory
- Efficient Discovery: Dynamic module search with timeout protection
- Non-blocking: Async Python process calls with rate limiting
- Universal Coverage: Works with 500+ Python symbols
{
"simplePyDocs.customDocs": {
"myCustomFunction": "This function does something amazing",
"anotherFunction": "Another custom description"
}
}- โ Python keywords and built-in functions
- โ Beginner and developer modes
- โ Custom documentation overrides
- โ Universal Python symbol discovery
- โ Popular library support (pandas, numpy, requests)
- โ Security features and rate limiting
- ๐ Advanced library detection (auto-import analysis)
- ๐ Snippet integration with documentation
- ๐ Documentation caching and persistence
- ๐ Custom library documentation
- ๐ฎ AI-powered documentation generation
- ๐ฎ Community documentation sharing
- ๐ฎ Integration with documentation sites
- ๐ฎ Advanced code analysis and suggestions
- ๐ฎ Performance profiling and optimization
We welcome contributions! Here's how you can help:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes
- Run tests:
npm test - Commit:
git commit -m 'Add amazing feature' - Push:
git push origin feature/amazing-feature - Open a Pull Request
- Code Style: Follow TypeScript best practices
- Comments: Add clear inline comments for complex logic
- Testing: Add tests for new features
- Documentation: Update README for new features
- ๐ Bug fixes and improvements
- โจ New Python keywords/functions
- ๐จ UI/UX improvements
- ๐ Documentation enhancements
- ๐งช Test coverage
- ๐ Localization support
- Launch Extension: Press
F5in VS Code - Open Python File: Create a test Python file for testing
- Hover Over Symbols: Test keywords, functions, and classes
The extension works with 500+ Python symbols:
| Category | Count | Examples | Status |
|---|---|---|---|
| Keywords | 35+ | def, class, if, for, self |
โ 100% |
| Built-ins | 143+ | len, print, max, min, sorted |
โ 100% |
| Common Modules | 50+ | os, sys, typing, json, re |
โ 100% |
| Popular Libraries | 100+ | pandas, numpy, requests, matplotlib |
โ 100% |
| Standard Library | 200+ | collections, itertools, functools |
โ 100% |
- Show All Built-ins:
Ctrl+Shift+Pโ "SimplePyDocs: Show All Python Built-ins" - Toggle Modes: Switch between beginner and developer modes in settings
This project is licensed under the MIT License - see the LICENSE file for details.
- VS Code Team - For the excellent extension API
- Python Community - For comprehensive built-in documentation
- Open Source Contributors - For making this project possible
- Issues: GitHub Issues
- Discussions: GitHub Discussions
If you find this extension helpful, please consider giving it a star on GitHub!
Made with โค๏ธ for the Python and VS Code communities




