An open API service indexing awesome lists of open source software.

https://github.com/jeffmelton/dark-watcher

A learning-focused Zig implementation of a Windows 11 theme switching application with AI-assisted development. Features comprehensive cross-platform architecture designed for 65-70% code sharing across Windows, macOS, and Linux. Currently in design phase with complete architectural blueprint ready for implementation.
https://github.com/jeffmelton/dark-watcher

ai-assisted-development architecture-first dark-mode learning-project light-mode systems-programming theme-switching win32-api windows-11 zig

Last synced: about 1 month ago
JSON representation

A learning-focused Zig implementation of a Windows 11 theme switching application with AI-assisted development. Features comprehensive cross-platform architecture designed for 65-70% code sharing across Windows, macOS, and Linux. Currently in design phase with complete architectural blueprint ready for implementation.

Awesome Lists containing this project

README

          

# πŸŒ“ Dark Watcher

[![Project Status](https://img.shields.io/badge/Status-Design%20Phase-blue?style=flat-square)](#project-status)
[![Zig Version](https://img.shields.io/badge/Zig-0.15.1-orange?style=flat-square)](https://ziglang.org/)
[![Platform](https://img.shields.io/badge/Platform-Windows%2011%20x86-lightgrey?style=flat-square)](#platform-support)
[![Architecture](https://img.shields.io/badge/Architecture-Cross--Platform%20Ready-green?style=flat-square)](#cross-platform-vision)
[![License](https://img.shields.io/badge/License-MIT-yellow?style=flat-square)](#license)
[![AI Assisted](https://img.shields.io/badge/Development-AI%20Assisted-purple?style=flat-square)](#ai-assisted-development)

> **A learning-focused Zig implementation of a Windows 11 theme switching application, designed from the ground up for cross-platform expansion and AI-assisted collaborative development.**

---

## 🎯 Project Vision

Dark Watcher is more than just a theme switching utilityβ€”it's a comprehensive **learning journey** into systems programming with Zig, designed to demonstrate modern development practices with AI assistance while building a genuinely useful application.

### 🌟 Why Dark Watcher?

- **πŸ”§ Learning First**: Every architectural decision optimizes for educational value and skill development
- **πŸ€– AI-Collaborative**: Structured for effective partnership with AI coding assistants
- **πŸš€ Architecture Driven**: Comprehensive planning and design before implementation
- **🌍 Cross-Platform Vision**: Built for 65-70% code sharing across Windows, macOS, and Linux
- **πŸ“– Open Learning**: Documenting the entire learning process for the community

---

## πŸ—οΈ Current Project Status

### **Phase: Comprehensive Architecture & Design**
We're currently in the foundational design phase, with a complete architectural blueprint ready for implementation.

**βœ… Completed:**
- [x] Comprehensive project architecture design
- [x] Cross-platform abstraction layer specification
- [x] Complete module breakdown and responsibility mapping
- [x] Build system configuration and dependency management
- [x] AI collaboration workflow optimization
- [x] 24-week implementation roadmap with learning milestones

**🚧 Next Phase: Core Implementation (Weeks 1-8)**
- [ ] Development environment setup and toolchain configuration
- [ ] Platform abstraction layer implementation
- [ ] Windows registry operations and theme switching
- [ ] Global hotkey system with Win32 integration
- [ ] Configuration management with YAML support
- [ ] Background service architecture

---

## πŸŽ“ Learning Journey Focus

### **Zig Mastery Progression**
- **Weeks 1-4**: Memory management, error handling, C interop
- **Weeks 5-8**: Advanced patterns, comptime programming, interfaces
- **Weeks 9-16**: Performance optimization, testing, service architecture
- **Weeks 17-24**: Cross-platform development, release engineering

### **Systems Programming Skills**
- **Windows APIs**: Registry manipulation, global hotkeys, service integration
- **Cross-Platform Design**: Platform abstraction, conditional compilation
- **Service Architecture**: Background services, IPC, system integration
- **Performance Engineering**: Memory management, resource optimization

### **AI-Assisted Development**
- Structured collaboration sessions with clear learning objectives
- Implementation guided by AI with comprehensive code review
- Alternative approach exploration and best practice validation
- Documentation enhanced through AI partnership

---

## πŸ›οΈ Architecture Overview

### **Platform Abstraction Design**
```
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Application Core β”‚
β”‚ (65-70% shared across all platforms) β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Platform Interface Layer β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ Windows β”‚ macOS β”‚ Linux β”‚
β”‚ Implementationβ”‚ Implementationβ”‚ Implementation β”‚
β”‚ β”‚ (Future) β”‚ (Future) β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
```

### **Core Components**
- **πŸŽ›οΈ Theme Manager**: Central orchestration of theme switching operations
- **βš™οΈ Configuration System**: YAML-based configuration with live updates
- **⌨️ Hotkey Manager**: Cross-platform global hotkey registration and handling
- **πŸ”§ Service Manager**: Background service lifecycle and coordination
- **πŸ’¬ IPC Server**: External API for programmatic theme control
- **πŸ“Š State Management**: Persistent application state with recovery

[πŸ“– **Comprehensive Architecture Documentation**](Zig-MVP-Project-Structure.md)

---

## πŸ€– AI-Assisted Development

### **Modern Development Approach**
Dark Watcher embraces AI-assisted development as a learning accelerator and collaboration enhancement tool, not a replacement for understanding.

**🎯 AI Collaboration Strategy:**
- **Session-Based Learning**: Structured 2-4 hour development sessions with clear objectives
- **Code Review Partnership**: AI-assisted code review focusing on Zig idioms and best practices
- **Alternative Exploration**: AI-guided exploration of different implementation approaches
- **Documentation Enhancement**: AI-assisted technical writing and explanation

**πŸ“‹ Implementation Templates:**
- Context-setting protocols for maximum AI effectiveness
- Module-by-module implementation approach with learning checkpoints
- Quality assurance checklists combining AI validation with personal understanding
- Knowledge transfer patterns for long-term retention

---

## 🌍 Cross-Platform Vision

### **Progressive Platform Expansion**

**Phase 1: Windows 11 Foundation**
- Native Win32 API integration
- Registry-based theme manipulation
- Windows Service architecture
- MSI installer and auto-update system

**Phase 2: macOS Integration**
- Objective-C interop and Cocoa integration
- macOS defaults system integration
- LaunchAgent service architecture
- PKG installer with code signing

**Phase 3: Linux Desktop Support**
- GNOME, KDE, and XFCE theme system integration
- systemd service integration
- DEB/RPM packaging with distribution support
- Desktop environment auto-detection

### **Shared Architecture Benefits**
- **65-70% code reuse** across all platforms
- Consistent user experience and feature parity
- Unified configuration and state management
- Cross-platform build and release automation

---

## πŸ› οΈ Technology Stack

### **Core Technologies**
- **[Zig](https://ziglang.org/)**: Primary implementation language for performance and safety
- **YAML**: Human-readable configuration with schema validation
- **Win32 API**: Native Windows integration for optimal performance

### **Development Tools**
- **Zig Build System**: Native build configuration with cross-compilation
- **AI Coding Assistants**: Claude, GPT-4, GitHub Copilot for collaborative development
- **VS Code**: Primary development environment with Zig language server

### **Cross-Platform Libraries**
- **Platform Abstraction Layer**: Custom Zig interfaces for cross-platform compatibility
- **Configuration Management**: YAML parsing with validation and live updates
- **Logging System**: Structured logging with multiple output targets

---

## πŸš€ Getting Started

> **Note**: Dark Watcher is currently in the design phase. Implementation will begin with the core Windows functionality.

### **For Learning and Following Along**

1. **πŸ“š Study the Architecture**: Review [`Zig-MVP-Project-Structure.md`](Zig-MVP-Project-Structure.md) for comprehensive design details

2. **πŸ› οΈ Setup Development Environment**:
```bash
# Install Zig (when implementation begins)
# Download from https://ziglang.org/download/

# Clone repository
git clone https://github.com/username/dark-watcher.git
cd dark-watcher
```

3. **🎯 Follow the Learning Journey**: Implementation will be documented week-by-week with learning objectives and AI collaboration insights

### **For Contributors**
- **Design Phase**: Review architecture documentation and provide feedback
- **Implementation Phase**: Follow coding standards and AI collaboration guidelines
- **Testing Phase**: Multi-platform testing and validation

---

## πŸ“š Learning Resources

### **Zig Programming**
- [Official Zig Documentation](https://ziglang.org/documentation/master/)
- [Zig Guide](https://zig.guide/) - Community learning resource
- [Zig Standard Library](https://ziglang.org/documentation/master/std/) - API reference

### **Systems Programming**
- [Win32 API Documentation](https://docs.microsoft.com/en-us/windows/win32/api/) - Windows development
- [The Windows Programming Model](https://docs.microsoft.com/en-us/windows/win32/learnwin32/learn-to-program-for-windows) - Windows concepts

### **AI-Assisted Development**
- Project-specific AI collaboration templates and patterns
- Weekly learning reviews and knowledge transfer sessions
- Implementation documentation with AI partnership insights

---

## 🀝 Contributing

### **Current Phase: Design & Architecture Review**
We welcome feedback on the architectural design and learning approach:

- **πŸ“– Architecture Review**: Examine [`Zig-MVP-Project-Structure.md`](Zig-MVP-Project-Structure.md) and suggest improvements
- **πŸŽ“ Learning Path Feedback**: Suggest additional learning objectives or resources
- **πŸ€– AI Collaboration**: Share experiences with AI-assisted development workflows

### **Future Contribution Areas**
- **Implementation**: Module-by-module development following architectural guidelines
- **Testing**: Cross-platform testing and validation
- **Documentation**: Learning guides and technical documentation
- **Platform Support**: macOS and Linux platform implementations

---

## πŸ“Š Development Roadmap

### **Phase 1: Windows MVP (Weeks 1-8)**
| Week | Focus | Learning Objectives |
| ---- | ----------------------------------------- | --------------------------------------------- |
| 1-2 | Project setup, error handling, logging | Zig toolchain mastery, memory management |
| 3-4 | Platform abstraction, registry operations | Comptime programming, Win32 APIs |
| 5-6 | Theme management, configuration system | Business logic architecture, YAML integration |
| 7-8 | Hotkey system, service integration | Win32 message handling, service lifecycle |

### **Phase 2: Advanced Features (Weeks 9-16)**
- IPC server and external API development
- Windows Service integration and auto-start
- Advanced state management and persistence
- Performance optimization and comprehensive testing

### **Phase 3: Cross-Platform Expansion (Weeks 17-24)**
- macOS platform implementation and integration
- Linux desktop environment support
- Cross-platform build automation and release engineering
- Community documentation and contribution guidelines

[πŸ“… **Detailed Implementation Roadmap**](Zig-MVP-Project-Structure.md#8-implementation-roadmap)

---

## πŸ“ž Community & Support

### **Learning Community**
- **πŸ“ Development Blog**: Weekly progress updates with learning insights
- **πŸ’¬ Discussions**: Architecture decisions and learning challenges
- **🎯 AI Collaboration Sharing**: Templates and best practices for AI-assisted development

### **Technical Support**
- **πŸ“– Documentation**: Comprehensive guides and troubleshooting
- **πŸ› Issues**: Bug reports and feature requests
- **πŸ”§ Development**: Implementation questions and code review

---

## πŸ“œ License

MIT

---

## πŸ™ Acknowledgments

- **Zig Community**: For creating an exceptional systems programming language
- **AI Development Partners**: Claude, GPT-4, and other AI assistants enabling collaborative learning
- **Open Source Community**: For inspiration and best practices in system utility development
- **Learning-First Philosophy**: Prioritizing education and skill development alongside practical outcomes

---

**Built with ❀️ using Zig and AI-assisted collaborative development**

[⭐ Star this repository](https://github.com/username/dark-watcher) β€’ [πŸ“– Read the docs](Zig-MVP-Project-Structure.md) β€’ [🀝 Contribute](#contributing) β€’ [πŸ“ž Get support](#community--support)