JskToolBox provides curated sets of Python classes that support system automation, networking,
configuration handling, and Tkinter-based GUI development. The documentation in docs/ offers
module-by-module guides; the sections below highlight the available references.
- AttribTool – base classes that restrict dynamic attribute creation and manage declared fields
AttribTool Readme - BaseTool – mixins for metadata reporting, data storage, logging, and threading used across the project
BaseTool Readme - RaiseTool – helpers that standardise exception formatting and error reporting
RaiseTool Readme - SystemTool – utilities for interacting with the host operating system
SystemTool Readme
- ConfigTool – parsers and helpers for working with configuration files
ConfigTool Readme - DateTool – date/time conversions, validation, and formatting helpers
DateTool Readme - StringTool – routines for text manipulation and sanitising
StringTool Readme
- LogsTool – components that assemble the project logging subsystem (queues, formatters, workers)
LogsTool Readme - NetTool – general-purpose classes for networking tasks
NetTool Readme - NetAddressTool – toolkits for IP addressing with dedicated IPv4 and IPv6 guides
NetAddressTool Readme
NetAddressTool IPv4 Readme
NetAddressTool IPv6 Readme
- TkTool – Tk mixins, layout helpers, clipboard adapters, and reusable widgets (excluding the unreliable
_TkClip)
TkTool Readme
Complete API reference documentation is available:
- Generate Documentation:
make docsorpoetry run python generate_docs.py - HTML Documentation: Open
docs_api/build/html/index.htmlafter generation - Preferred Imports: PREFERRED_IMPORTS.md - Lazy import patterns
- AI Agent Guide: AI_AGENT_GUIDE.md - Integration guide for AI agents
- Code Examples: EXAMPLES_FOR_AI.md - Practical usage examples
- Module Index: API_INDEX.md - Quick reference of all modules
- API Structure:
api_structure.json- Machine-readable API structure
The library uses lazy imports for performance. Use the preferred shorter patterns:
# ✓ Preferred (lazy loading)
from jsktoolbox.configtool import Config
from jsktoolbox.logstool import LoggerClient
# ✗ Avoid (works but longer)
from jsktoolbox.configtool.main import Config
from jsktoolbox.logstool.logs import LoggerClient# Install dependencies
poetry install
# Generate all documentation
make docs
# Or use the script directly
poetry run python generate_docs.py
# Open documentation in browser
make docs-openExamples demonstrating selected modules can be found in:
- docs/examples - Module examples
- EXAMPLES_FOR_AI.md - Complete code examples