Skip to content

Elegant system monitoring for macOS with desktop widgets. Track battery, CPU, and memory with a beautiful menu bar app.

License

Notifications You must be signed in to change notification settings

ashwch/microverse

Repository files navigation

Microverse

A unified macOS system monitoring application with elegant desktop widgets, smart notch integration, and secure auto-updates

Swift macOS License Architecture Performance

Download β€’ Architecture β€’ Design System β€’ Contributing

🎯 Mission

Transform your Mac into a comprehensive system intelligence hub with real-time monitoring, elegant widgets, and seamless notch integration β€” all while maintaining <1% CPU usage and <50MB memory footprint.

Perfect for developers who need real-time system insights without compromising performance.

✨ Features

πŸ”‹ Comprehensive System Monitoring

  • Battery Intelligence: Health metrics, cycle count, time estimates, charging optimization
  • CPU Performance: Real-time usage, core breakdown, thermal state monitoring
  • Memory Analysis: Pressure detection, usage breakdown, swap monitoring
  • Weather (Optional): Temperature and upcoming changes in the Weather tab, menu bar, Smart Notch, and desktop widget
  • System Health: Intelligent insights with actionable recommendations

🎨 Adaptive User Interface

  • Desktop Widget Styles: Multiple layout options from compact to comprehensive displays
  • Smart Notch Integration: Seamless integration with macOS notch area
  • Notch Glow Alerts: Animated glow around the notch on key battery events
  • Menu Bar Integration: Battery percentage and optional temperature display
  • Tabbed Interface: Overview, Battery, CPU, Memory, Weather with unified design system

⚑ Performance Excellence

  • Adaptive Refresh Rates: 2s critical β†’ 30s idle (up to 83% CPU reduction)
  • Direct System Access: IOKit + mach APIs (no subprocess overhead)
  • Universal Binary: Native Intel + Apple Silicon optimization
  • Memory Efficient: Smart caching with minimal footprint

πŸ”’ Enterprise-Grade Security

  • Secure Auto-Updates: Sparkle 2.7.1 with code signature verification
  • Sandboxed Architecture: Minimal entitlements, maximum security
  • Privacy First: No analytics; system metrics are local; optional network requests for updates + weather

πŸ“Έ Screenshots

Smart Notch Integration


Compact Mode
Unified metrics display

Expanded Mode
Detailed system status

Weather Peek
Temperature + upcoming change

Weather (Expanded)
Optional weather row

Desktop Widgets


System Glance
Compact horizontal layout

System Status
Three-column detailed view

System Dashboard
Comprehensive metrics display

Weather Peek
System Glance temperature swap-in

Application Interface


Overview Tab
System health at a glance

Battery Tab
Detailed power metrics

CPU Tab
Processor performance analysis

Memory Tab
Memory usage and pressure

Weather Tab
Temperature + upcoming changes

Settings
Elegant controls and preferences

πŸš€ Installation

Quick Install

Download Latest Release

  1. Download Microverse-v{version}.dmg
  2. Drag to /Applications
  3. First Launch: System Settings β†’ Privacy & Security β†’ "Open Anyway"
  4. Look for the alien πŸ‘½ icon in your menu bar

Build from Source

git clone https://github.com/ashwch/microverse.git
cd microverse
make install    # Requires Xcode 16+ or Swift 6.0+

Requirements: macOS 13.0+, Universal Binary support

πŸ—οΈ Architecture

Modular Framework Design

Package.swift
β”œβ”€β”€ Microverse (executable) - SwiftUI + App Logic
β”‚   β”œβ”€β”€ depends: BatteryCore
β”‚   β”œβ”€β”€ depends: SystemCore  
β”‚   β”œβ”€β”€ depends: Sparkle (auto-updates)
β”‚   └── depends: DynamicNotchKit (notch integration)
β”œβ”€β”€ BatteryCore (framework) - IOKit battery monitoring
└── SystemCore (framework) - mach CPU/memory monitoring

Quick Usage

Menu Bar: Click πŸ‘½ icon β†’ Overview/Battery/CPU/Memory/Weather tabs
Desktop Widgets: Settings β†’ Desktop Widget (toggle + style)
Smart Notch: Settings β†’ Smart Notch (Left / Split / Off)
Weather: Settings β†’ Weather (manual location + surfaces + optional peeks/highlights)
Notch Glow Alerts: Settings β†’ Notch Glow Alerts (toggle + test buttons)

Data Flow

Hardware β†’ Core Frameworks β†’ Services β†’ ViewModels β†’ UI Components
IOKit     BatteryCore      SystemMonitoringService   SwiftUI Views
mach      SystemCore       BatteryViewModel          Desktop Widgets

Performance Monitoring

  • CPU Usage: Target <1% average (verified with Activity Monitor)
  • Memory Footprint: Target <50MB (measured in Memory tab)
  • Battery Impact: Minimal drain optimization
  • Adaptive Refresh: 83% CPU reduction when idle

🎨 Design System

Design Philosophy

Semantic Color System

  • 🟒 Battery (Energy) β†’ Green success palette
  • πŸ”΅ CPU (Computing) β†’ Blue neutral palette
  • 🟣 Memory (Storage) β†’ Purple distinctive palette
  • βšͺ System (Overall) β†’ White accent system

Typography Hierarchy (SF Pro Rounded)

  • 32pt Display β†’ Hero numbers (CPU/Memory percentages)
  • 24pt Large Title β†’ Battery percentage, section headers
  • 18pt Title β†’ Memory format ("X.X / Y.Y GB")
  • 14pt Body β†’ Standard content, time remaining
  • 12pt Caption β†’ Status text, info labels

Layout System (4px Grid)

  • Consistent spacing scale: 4, 8, 12, 16, 24, 32pt
  • Golden ratio proportions for UI elements
  • Mathematical precision in component sizing

πŸ”§ Development

Local Development

# Development build & run
make run

# Release build & install  
make install

# Clean build artifacts
make clean

# Interactive Xcode build
./build_local.sh

Testing

# Run unit tests (when available)
swift test

# Performance testing
# Monitor with Activity Monitor during development

Code Quality Standards

  • SwiftUI Best Practices: @MainActor isolation, async/await patterns
  • Design System Compliance: All UI uses MicroverseDesign tokens
  • Performance First: Profile all changes for CPU/memory impact
  • Error Handling: Graceful degradation with safe defaults
  • Documentation: Comprehensive inline documentation

🀝 Contributing

We welcome contributions! Please see CONTRIBUTING.md for guidelines.

Development Setup

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Follow our Code Style Guide
  4. Ensure all changes use the design system tokens
  5. Test performance impact (CPU <1%, Memory <50MB)
  6. Submit a pull request with detailed description

πŸ“š Documentation

πŸ”’ Security

  • Sandboxed Application: Minimal entitlements for maximum security
  • Secure Updates: Sparkle framework with signed appcast verification
  • Privacy First: No analytics; system metrics are local; optional network requests for updates + weather
  • Minimal Permissions: Network client for updates/weather + local system APIs for monitoring

πŸ“Š Performance Metrics

Metric Target Actual
CPU Usage (Active) <1% ~0.3%
CPU Usage (Idle) <0.1% ~0.05%
Memory Footprint <50MB ~35MB
Battery Impact Minimal Negligible
Launch Time <2s ~1.2s

πŸ™ Acknowledgments

Core Dependencies

Engineering Excellence

  • Swift Concurrency - Modern async/await patterns for responsive UI
  • SwiftUI Framework - Declarative UI with reactive state management
  • IOKit & mach APIs - Direct system access for optimal performance

πŸ“„ License

MIT License - Free and open source forever ✨

Copyright (c) 2024 Ashwini Chaudhary

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

[Full MIT License text...]

πŸ‘¨β€πŸ’» Contributors

Ashwini Chaudhary (@ashwch)
Project Creator & Maintainer

Engineering Contributors

  • @napender - Bug fixes and stability improvements

🌟 Star History

If Microverse enhances your development workflow, please star the repository to show your support and help others discover this project!

Star History Chart


Built with ❀️ for the macOS development community

Perfect for developers who demand both elegance and performance in their system monitoring tools.

About

Elegant system monitoring for macOS with desktop widgets. Track battery, CPU, and memory with a beautiful menu bar app.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •