Intelium: Universal Automation Framework
🚀 Vision
Intelium is not just another automation framework - it's a vision for a world where any digital interaction can be automated with human-like precision. Whether you're automating browser interactions, desktop applications, or complex workflows, Intelium provides a unified, intelligent approach to automation that feels natural and reliable.
✨ Key Features
🤖 Human-Like Interactions
- Natural mouse movements with randomized offsets
- Variable typing speeds with realistic timing
- Smooth scrolling with acceleration/deceleration
- Intelligent element detection with tolerance for visual variations
🌐 Universal Automation
- Browser Automation: Support for Selenium, Playwright, and more
- Desktop Automation: Native system interactions with OCR capabilities
- Cross-Platform: Works seamlessly across Windows, macOS, and Linux
- Extensible: Easy to add support for new automation targets
🎯 Smart Element Detection
- Template matching with scale and rotation tolerance
- OCR-powered text detection (optional)
- Confidence-based matching
- Duplicate detection and filtering
⚡ Performance & Reliability
- Asynchronous operation support
- Robust error handling
- Viewport-aware interactions
- Resource-efficient operation
🛠️ Quick Start
from intelium import DesktopAutomation, BrowserAutomation
# Desktop Automation
desktop = DesktopAutomation()
desktop.move_to({'x': 100, 'y': 100})
desktop.click_at({'x': 100, 'y': 100})
# Browser Automation
from selenium import webdriver
driver = webdriver.Chrome()
browser = BrowserAutomation(driver)
element = driver.find_element("id", "my-button")
browser.click_at(element)
🔧 Installation
pip install intelium
📚 Usage Examples
Desktop Automation
from intelium import DesktopAutomation
# Initialize with OCR support
automation = DesktopAutomation(ocr=True)
# Find elements by image
elements = automation.find_elements(
image_path="button.png",
min_confidence=0.8
)
# Find elements by text
text_elements = automation.find_text_elements(
query="Click me",
min_confidence=0.8
)
# Interact with elements
for element in elements:
automation.move_to(element)
automation.click_at(element)
automation.type_at(element, "Hello, World!")
Browser Automation
from intelium import BrowserAutomation
from selenium import webdriver
driver = webdriver.Chrome()
automation = BrowserAutomation(driver)
# Navigate and interact
driver.get("https://example.com")
element = driver.find_element("id", "search")
automation.type_at(element, "Search query")
automation.click_at(element)
🎯 Use Cases
🤖 RPA (Robotic Process Automation)
- Automate repetitive desktop tasks
- Fill forms and process documents
- Extract data from various sources
- Integrate with existing workflows
🧪 Testing & QA
- Automated UI testing
- Cross-browser testing
- Visual regression testing
- Performance testing
📊 Data Collection
- Web scraping with human-like behavior
- Automated data entry
- Document processing
- Data extraction from various sources
🔄 Workflow Automation
- Business process automation
- Task scheduling and execution
- System integration
- Automated reporting
🔮 Future Vision
Intelium is constantly evolving to support:
- AI-powered element detection
- Natural language automation commands
- Cross-device automation
- Cloud-based automation orchestration
- Advanced pattern recognition
- Machine learning for interaction optimization
🤝 Contributing
We welcome contributions! Whether it's:
- Bug reports
- Feature requests
- Code contributions
- Documentation improvements
- Testing and feedback
📄 License
This project is dual-licensed under:
- MIT License - for general use and distribution
- Intelium Attribution License - requiring proper attribution
The MIT License allows you to use, modify, and distribute the software freely, while the Intelium Attribution License ensures proper credit is given to the original authors. See the LICENSE file for full details.
When using Intelium, you must include the following attribution in your project:
This project uses Intelium (https://github.com/Leadrive/intelium),
developed by Ali Shahmir Khan, based on the original work by Vladislav Zenkevich.
Made with ❤️ by Ali Shahmir Khan Original Author: Vladislav Zenkevich
Metadata
Release files for intelium 0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| intelium-0.1.tar.gz | 11.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| intelium-0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 21.8 kB
Release files / intelium-0.1.tar.gz
| Download URL | intelium-0.1.tar.gz |
|---|---|
| Size | 11.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9e71468047ba936d814164a0be62ad3ca6a7ee9d3d83d9f88caa55f2529cf02f
|
|
BLAKE2b-256 checksum How to use checksums |
36951fd99d933760c54eb855d327e79ada3a353e9d1ec1c05bbdf816b4d2fe0a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.1
|
Release files / intelium-0.1-py3-none-any.whl
| Download URL | intelium-0.1-py3-none-any.whl |
|---|---|
| Size | 10.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c6ba9515d72acccc98524b58ccf56fcc227c57a4cfdbb1a2ec84426379325a90
|
|
BLAKE2b-256 checksum How to use checksums |
a2834f1987896946934b1c92572898ce494f46b2920c695ee8c222ef3ab977c9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.1
|