Skip to content

tgor152/imperial-tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ–ฑ๏ธ Computer Interact Thing - Imperial Mouse Tracking System

Flutter Desktop CI License: MIT Flutter Platform

๐Ÿค– AI-Powered Development: This project has been fully developed by GitHub Copilot Agent as a demonstration of AI-assisted software development capabilities. Every line of code, UI design, and feature implementation was generated through natural language conversations with the AI assistant, showcasing the potential of human-AI collaboration in modern software development.

๐ŸŽฏ What This Application Does

The Computer Interact Thing is a real-time mouse tracking application with a sleek Star Wars Imperial-themed dashboard interface. It monitors and analyzes your mouse interactions on Windows systems, providing detailed analytics and insights into your cursor behavior.

โœจ Key Features

  • ๐Ÿ”„ Real-time Mouse Tracking: Continuously monitors mouse movements and click events
  • ๐Ÿ“Š Interactive Dashboard: Star Wars Imperial-themed UI with glowing effects and sci-fi styling
  • ๐Ÿ“ˆ Analytics & Metrics:
    • Total movements tracked
    • Click interaction count
    • Distance traveled (in pixels)
    • Live cursor coordinates
    • Real-time system status
  • ๐Ÿ“‹ Data Export: Export all tracking data to Excel (.xlsx) format
  • โšก High Performance: 50ms polling rate for smooth, responsive tracking
  • ๐ŸŽจ Modern UI: Built with Flutter's Material Design and Google Fonts (Orbitron)
  • ๐ŸŒ™ Dark Theme: Eye-friendly dark interface with neon accents

๐Ÿ› ๏ธ Technical Implementation

  • Platform: Windows Desktop Application (Flutter)
  • Backend: Direct Windows API integration using win32 package
  • UI Framework: Flutter with Material Design 3
  • Fonts: Google Fonts (Orbitron) for futuristic styling
  • Data Export: Excel file generation with timestamps and coordinates
  • Architecture: Real-time event-driven architecture with timer-based polling

๐Ÿ“ฅ Download & Install

For End Users (Recommended)

Simply download the pre-built installer - no development setup required!

  1. Download the Latest Release

    • Go to Releases
    • Download ComputerInteractInstaller.exe
  2. Install & Run

    • Run the downloaded installer as administrator
    • The app will be installed to your Program Files
    • Launch from Desktop shortcut or Start Menu

System Requirements: Windows 10/11 (no additional dependencies needed)

For Developers

If you want to build from source or contribute to development, see the Development & Contributing section below.

๐Ÿš€ How to Use

๐Ÿ“‹ Prerequisites

  • Windows 10/11 (Required for Windows API mouse tracking)
  • Flutter SDK 3.7.2+ installed and configured
  • Visual Studio Build Tools or Visual Studio Community for Windows development

๐Ÿ”ง Installation & Setup (For Developers)

๐Ÿ’ก End users: If you just want to use the app, see the Download & Install section above instead.

  1. Clone the Repository

    git clone https://github.com/tgor152/computer-interact-thing.git
    cd computer-interact-thing
  2. Install Dependencies

    flutter pub get
  3. Enable Windows Desktop Support (if not already enabled)

    flutter config --enable-windows-desktop
  4. Run the Application

    flutter run -d windows

๐ŸŽฎ Using the Application

  1. Launch: Start the application and you'll see the Imperial Tracking System dashboard
  2. Automatic Tracking: Mouse movements and clicks are automatically tracked in real-time
  3. View Metrics: Monitor your mouse activity through the dashboard cards:
    • Movements tracked
    • Click interactions
    • Distance moved
    • System status
  4. Export Data: Click the export button (๐Ÿ’พ) in the top-right to save tracking data to Excel
  5. Real-time Updates: All metrics update live as you interact with your computer

๐Ÿ“Š Understanding the Data

  • Movements: Each mouse position change is recorded with timestamp and coordinates
  • Clicks: Left mouse button clicks are tracked with location data
  • Distance: Calculated using Euclidean distance between consecutive mouse positions
  • Export: Excel file contains columns: Timestamp, X-coordinate, Y-coordinate, Event Type

๐Ÿ› ๏ธ Development & Contributing

๐Ÿ—๏ธ Development Setup

  1. Development Environment

    # Install Flutter (if not already installed)
    # Follow: https://docs.flutter.dev/get-started/install/windows
    
    # Verify installation
    flutter doctor
    
    # Clone and setup project
    git clone https://github.com/tgor152/computer-interact-thing.git
    cd computer-interact-thing
    flutter pub get
  2. Code Analysis & Testing

    # Run code analysis
    flutter analyze
    
    # Run tests
    flutter test
    
    # Run in debug mode
    flutter run -d windows --debug
  3. Building for Production

    # Build release version
    flutter build windows --release
    
    # The executable will be in: build/windows/runner/Release/

๐Ÿ”ง Project Structure

lib/
โ”œโ”€โ”€ main.dart           # Main application entry point and UI
pubspec.yaml           # Dependencies and project configuration
windows/               # Windows-specific build configuration
โ”œโ”€โ”€ runner/           # Windows runner application
โ””โ”€โ”€ CMakeLists.txt    # CMake build configuration
.github/workflows/     # CI/CD pipeline configuration
โ””โ”€โ”€ flutter-desktop-ci.yml

๐Ÿ“ฆ Key Dependencies

  • flutter: UI framework
  • win32: Windows API access for mouse tracking
  • ffi: Foreign Function Interface for native API calls
  • excel: Excel file generation and export
  • google_fonts: Orbitron font for sci-fi styling
  • flutter_glow: Glowing text effects
  • path_provider: File system access for exports

๐Ÿค Contributing Guidelines

  1. Fork the Repository: Create your own fork to work on
  2. Create Feature Branch: git checkout -b feature/amazing-feature
  3. Follow Code Style: Use flutter analyze to ensure code quality
  4. Test Your Changes: Run existing tests and add new ones if needed
  5. Update Documentation: Keep README and code comments up to date
  6. Submit Pull Request: Include detailed description of changes

๐Ÿ” Development Notes

  • Mouse Tracking: Uses Windows GetCursorPos() API for precise coordinate tracking
  • Click Detection: Monitors VK_LBUTTON state using GetAsyncKeyState()
  • Performance: 50ms timer intervals balance responsiveness with CPU usage
  • Memory Management: Uses FFI memory allocation/deallocation for native calls
  • State Management: Simple setState() pattern for real-time UI updates

๐Ÿ› Known Issues & Limitations

  • Windows Only: Currently only supports Windows due to Win32 API dependency
  • Background Tracking: Only tracks when application is running
  • Permission Requirements: No special permissions needed (uses standard Windows APIs)

๐Ÿ”ฎ Future Enhancements

  • Cross-platform Support: Add macOS and Linux mouse tracking
  • Advanced Analytics: Heat maps, usage patterns, productivity metrics
  • Data Visualization: Charts and graphs for historical data
  • Hotkey Support: Global hotkeys for start/stop tracking
  • Configuration Options: Customizable polling rates and export formats

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ™ Acknowledgments

  • GitHub Copilot: For the complete AI-powered development of this application
  • Flutter Team: For the excellent cross-platform framework
  • Microsoft: For the comprehensive Win32 API documentation
  • Star Wars Universe: For the inspiring Imperial aesthetic theme

๐Ÿค– Proudly crafted entirely by AI โ€ข No human code was harmed in the making of this application

About

Collecting Mouse Movement Analytics

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •