A modern, fast, and extensible automation tool written in Rust. This is a reimplementation of the original EventGhost project.
We are currently in the early development phase, focusing on building a robust plugin system. Here's our current progress:
- ✅ Project foundation and architecture
- ✅ Core plugin system design
- ✅ Documentation framework
- ✅ Basic test infrastructure
- ✅ Initial Win32 API integration
src/
├── core/ # Core functionality and shared components
├── win32/ # Windows-specific implementations
├── testing/ # Test utilities and helpers
├── eg/ # EventGhost-specific functionality
├── lib.rs # Library root
└── main.rs # Application entry point
We are implementing the plugin system in phases:
-
Current Phase: Win32 Integration & Plugin Foundation
- Win32 API bindings
- Core event system
- Plugin manifest format
- Dynamic library loading
-
Upcoming: Plugin System Core
- Plugin registry system
- Metadata management
- File system monitoring
- Hot-reload support
-
Future: Plugin Features
- Dependency resolution
- Inter-plugin messaging
- Resource management
- Plugin isolation
-
Final Phase: Configuration & UI
- Configuration system
- Plugin UI integration
- Management interface
- Settings persistence
- Rust 1.75+ (we use the latest stable features)
- Cargo
- Windows 10/11
- Visual Studio Build Tools (for Win32 development)
# Clone the repository
git clone https://github.com/DanEdens/EventGhost-Rust
cd EventGhost-Rust
# Build the project
cargo build
# Run tests
cargo test
We welcome contributions! Please see our Contributing Guide for details. Here's how you can help:
-
Code Contributions
- Review open issues
- Submit pull requests
- Discuss design in Issues
-
Documentation
- Improve existing docs
- Add examples
- Write tutorials
- Report unclear sections
-
Testing
- Report bugs
- Suggest features
- Test on different platforms
- Performance testing
Our documentation is organized into several sections:
-
Architecture Documentation:
-
API Documentation:
-
Guides:
.
├── src/ # Source code
│ ├── core/ # Core functionality
│ ├── win32/ # Windows API integration
│ ├── testing/ # Test utilities
│ ├── eg/ # EventGhost-specific code
│ ├── lib.rs # Library root
│ └── main.rs # Application entry
├── docs/ # Documentation
│ ├── api/ # API documentation
│ ├── guides/ # User and developer guides
│ ├── architecture/# Design documents
│ └── examples/ # Code examples
└── target/ # Build outputs
This project is licensed under the GNU General Public License v2.0 - see the gpl-2.0.md file for details.
- Original EventGhost team for their pioneering work
- Rust community for excellent tools and libraries
See our Implementation Plan for detailed development phases and milestones.
- GitHub Issues: For bug reports and feature requests
- Discussions: For questions and community interaction