ModX — The Python Module Universe at Your Fingertips
Project description
🌟 ModXPy — The Python Module Universe at Your Fingertips
Welcome to ModXPy, the ultimate playground for Python’s modules.
With ModXPy you can instantly import, explore, and experiment with the entire Python standard library — plus any installed third-party modules — all from one simple interface.
UPDATE 2.5.1
YET ANOTHER QOL UPDATE!
New 95% automatic, 5% manual test suite is here!
Comparison: Before (2.5.0):
Manual test updates for every new function
12-14 seconds to run
Easy to forget tests
"Why is this failing? Oh, I forgot to update the tests..."
After (2.5.1):
Auto-discovers all functions using introspection
0.45 seconds to run (96% faster!)
Zero maintenance — add a function, it's automatically tested
Smart categorization:
1.) Functions with required args → manually tested
2.) State-modifying functions → skipped from auto-test
3.) Safe functions → fully auto-tested
Special cases preserved for complex functions
75% less code for test suite!
importexternal in test suite will no longer open pygame windows!
Added new keys for as_data = True for timesinse!
1.): modx_dep: Shows if this module is a dependency of ModX
2.): seconds_after_modx: exactly how it sounds; shows how many seconds between this module load and ModX load.
🚀 Installation and Importing
IMPORTANT: Before you install ModX, you MUST first (if not already) run "pip install packaging" inside of powershell/terminal. ModX will NOT work without the packaging module.
Install directly from terminal.
Type: "pip install modxpy"
In Python, import as import modx (not modxpy)
Functions:
🔹 dependencies(module, as_data=False)
Shows what other modules a specific module depends on without importing it.
🔹 importall(show_imported=False, as_data=False)
Imports about every standard library module at once.
🔹 importexternal(show_imported=False, as_data=False)
Attempts to import every third-party module you currently have installed.
🔹 importletter(letter, show_imported=False, as_data=False)
Imports all standard library modules whose names start with the given letter (case-insensitive).
🔹 importlog(include_deps=False, as_data=False)
Shows every module imported since ModX loaded in CHRONOLOGICAL order.
include_deps=True: Includes ModX's dependencies in the list.
🔹 importrandom(n, strict_mode=False, show_imported=False, as_data=False)
Imports n random stdlib modules.
strict_mode=False: May import less than n due to dependencies.
strict_mode=True: Forces import until EXACTLY n NEW modules.
🔹 importscreen(show_imported=False, as_data=False)
Imports every module that uses a screen/GUI (like pygame or turtle).
🔹 info(module_name, as_data=False)
Shows basic info about a module: file path, built-in status, full docstring.
🔹 isimported(module)
Checks if a module is currently imported into the Python shell (not just sys.modules).
🔹 listimportall(as_data=False)
Returns a list of modules that import_all() would import.
🔹 modbench(module, as_data=False)
Shows how much time and memory a module takes to import.
Note: The module IS imported, and cache is cleared before each benchmark.
🔹 modclasses(module, as_data=False)
Shows how many and what classes a module has WITHOUT importing it.
🔹 modfunctions(module, as_data=False)
Shows how many and what functions a module has WITHOUT importing it.
🔹 modglobals(module, show_private=False, export=None, as_data=False)
Shows a module's global names (not functions/classes/modules).
show_private=True: Includes names starting with '_'.
export=filename.md: Exports results as Markdown.
🔹 modorigin(module, as_data=False)
Shows where a module came from (e.g., built-in, standard library, or pip-installed).
🔹 modsloaded()
Shows how many modules are currently loaded in your Python session.
🔹 modxhelp(export=None, compact=False, banner=True)
Shows ModX's built-in help dialogue.
export=filename.md: Exports help as Markdown.
compact=True: Shows single-line summaries only.
banner=False: Hides the ASCII banner.
🔹 modximported(as_data=False)
Lists modules that were ONLY imported by ModX — NOT including user imports or dependencies.
🔹 nonimported(as_data=False)
Returns a list of STANDARD LIBRARY modules that have NOT been imported yet.
🔹 preloaded(show_builtins=True, show_internal=False, show_submodules=False, as_data=False)
Shows modules pre-loaded by Python before ModX started.
show_builtins=False: Hides built-in modules.
show_internal=True: Shows modules starting with '_'.
show_submodules=True: Includes submodules (names with '.').
🔹 revdeps(module, as_data=False)
Shows what modules import the given module WITHOUT importing it.
🔹 searchmodules(keyword, as_data=False)
Searches for modules whose names contain the keyword.
🔹 timesince(module, as_data = False)
Shows WHEN a module was loaded in relative to when ModX loaded.
🔹 vcompat(module_name, python_version=None, as_data=False)
Checks if a module is compatible with a given Python version.
If no version is given, sweeps ALL Python versions 2.0–3.14.
🔹 whyloaded(module, as_data=False)
Returns a comma-separated string explaining why a module is in memory.
Tags: not_loaded, preloaded, user, referenced, modx, modx_dep, dependency or unknown
Rule: user swallows referenced.
💡 Why Use ModX?
1.) Understand your imports
Know why a module was loaded (whyloaded()), when it appeared (timesince()), and where it came from (modorigin()).
2.) Get real data, not just printed tables
Every function has as_data mode — return clean Python lists/dicts for your own code.
3.) Stress-test your environment
Bulk-import hundreds of modules at once with importall() and see what breaks.
4.) Discover hidden dependencies
See what your imports actually depend on with dependencies() and revdeps().
5.) Experiment and learn
Random imports, compatibility checking, performance benchmarking — turn Python into a playground.
6.) Track everything
Chronological import logs, preloaded module lists, timestamp tracking — nothing stays hidden.
ModXPy turns Python’s module system into a playground — perfect for learning, testing, or just satisfying your curiosity. Install it today with pip install modxpy, import it with import modx, and start discovering how many modules Python already has waiting for you!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file modxpy-2.5.1.tar.gz.
File metadata
- Download URL: modxpy-2.5.1.tar.gz
- Upload date:
- Size: 23.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
51f16d4f08a2704b4c8cd1d50a4804174b8e32ca509db60d42a8bc3750021a43
|
|
| MD5 |
bbfce0d445eab9d5b7d8ed0bbbbc9d6a
|
|
| BLAKE2b-256 |
fac1627d4b52b7fe8ae5b9d67f6b18e8d262d766138d790b9611cb47f9ea4577
|
File details
Details for the file modxpy-2.5.1-py3-none-any.whl.
File metadata
- Download URL: modxpy-2.5.1-py3-none-any.whl
- Upload date:
- Size: 21.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
81e4ee2b3e7e39b56ea52248fb41854a5364e9b164d4dd837798d8c97c29c092
|
|
| MD5 |
9292afba97663b1f9ff84b48d87f8230
|
|
| BLAKE2b-256 |
cd96859f2c9221e380e2a6bc225396cea5078d8a1b0399ae6b187fad25a74af0
|