Skip to content

wflixu/iCap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iCap

A modern macOS screenshot tool built with pure Swift

Swift Version SwiftUI macOS License

English | 中文文档

✨ Features

  • 📸 Screen Capture

    • Full screen and custom area selection
    • Global keyboard shortcut support
    • High-quality screenshot capture using ScreenCaptureKit
  • ✏️ Image Editing

    • Multiple annotation tools (text, shapes, arrows, blur, etc.)
    • Crop and resize functionality
    • Border and shadow effects
  • 💾 Flexible Saving

    • Save to local disk with custom paths
    • Copy to clipboard
    • Pin screenshots to floating windows
  • 🎨 Modern UI

    • Native SwiftUI interface
    • Smooth animations and transitions
    • Dark mode support

📋 Requirements

  • OS: macOS 15.0 (Sequoia) or later
  • Xcode: 15.0 or later
  • Swift: 5.10 or later

🚀 Installation

Download Release

  1. Visit the Releases page
  2. Download the latest .dmg file
  3. Open the file and drag iCap to your Applications folder
  4. Grant screen recording permission when prompted

Build from Source

# Clone the repository
git clone https://github.com/wflixu/iCap.git
cd iCap

# Open in Xcode
open iCap.xcodeproj

# Build and run (⌘R)

📖 Usage

Quick Start

  1. Launch iCap - Grant screen recording permission when prompted
  2. Take a screenshot - Use the global shortcut (default: ⌘⇧X)
  3. Select area - Drag to select the screen region
  4. Annotate - Use tools from the left panel to annotate
  5. Save - Choose your preferred save option

Keyboard Shortcuts

Shortcut Action
⌘⇧X Take screenshot
Esc Cancel selection
⌘Z Undo annotation
⌘⇧Z Redo annotation

Screenshots

iCap Preview

🛠️ Development

Build Commands

# Debug build
xcodebuild -project iCap.xcodeproj -scheme iCap -configuration Debug build

# Release build
xcodebuild -project iCap.xcodeproj -scheme iCap -configuration Release build

# Run tests
xcodebuild test -project iCap.xcodeproj -scheme iCap -destination 'platform=macOS'

Project Structure

iCap/
├── iCapApp.swift          # Main app entry point
├── AppState.swift         # Global state management
├── Editor/                # Image editing components
│   ├── CanvasView.swift
│   ├── AnnotationManager.swift
│   └── EditorView.swift
├── Shared/                # Shared utilities
│   ├── EventBus.swift     # Event system
│   ├── Constants.swift
│   └── Utils.swift
└── Assets.xcassets        # App assets

Key Technologies

  • SwiftUI - Modern UI framework
  • ScreenCaptureKit - Screen capture API
  • Combine - Reactive programming
  • KeyboardShortcuts - Global hotkeys

🤝 Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Please read our Contributing Guidelines for details.

📝 License

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

🙏 Acknowledgments

📮 Contact & Support


Built with ❤️ by @wflixu

About

macOS screenshot App Using ScreenCaptureKit

Topics

Resources

License

Stars

Watchers

Forks

Contributors

Languages