Skip to content
/ XerahS Public

XerahS (ShareX.Avalonia) is a cross platform reimagining of the ShareX user interface built with Avalonia. It targets modern UX modular architecture and long term maintainability while preserving core workflows speed and reliability. It provides a foundation for future desktop experiences on Windows macOS and Linux with consistent accessible design

License

Notifications You must be signed in to change notification settings

ShareX/XerahS

Repository files navigation

XerahS

A cross-platform port of the popular ShareX screen capture and file sharing tool, built with Avalonia UI and .NET 10.

ShareX Avalonia (Note: Project is in active development)

✨ Key Features

  • Cross-Platform: Runs on Windows, Linux, and macOS (targeting).
  • Modern UI: Reimagined interface inspired by modern design principles.
  • Powerful Capture:
    • Region Capture: supports multi-monitor setups with crosshair cursor.
    • Fullscreen & Window capture modes.
  • macOS Support (MVP):
    • Screenshot service via native screencapture
    • Global hotkeys powered by SharpHook (requires Accessibility permission)
  • Advanced Annotation Tools:
    • 17 Annotation Types: Rectangle, Ellipse, Line, Arrow, Text, Number/Step, Blur, Pixelate, Magnify, Highlight, Freehand, SpeechBalloon, Image/Sticker, Spotlight, SmartEraser, Crop, plus base types
    • Basic Shapes: Rectangle, Ellipse, Line, Arrow, Text, Number/Step
    • Effect Shapes: Blur, Pixelate, Magnify, Highlight with real-time preview
    • Freehand Tools: Pen, Highlighter, Smart Eraser
    • Advanced Shapes: Speech Balloon, Image/Sticker insertion, Spotlight
    • Object-based selection, moving, resizing, and deletion
    • Full Undo/Redo support
    • Keyboard Shortcuts: V(Select), R(Rectangle), E(Ellipse), A(Arrow), L(Line), P(Pen), H(Highlighter), T(Text), B(Balloon), N(Number), C(Crop), M(Magnify), S(Spotlight), F(Effects)
  • Workflows (Zero Inheritance):
    • Unique Settings: Each workflow is fully independent with its own hotkeys and tasks.
    • No "Default" Inheritance: Reduces configuration errors by avoiding complex inheritance chains.
    • Task Workflow: Configurable after-capture tasks (Save, Copy, Upload, Image Effects)
  • Modern Capture Architecture:
    • Windows: Uses fast Desktop Duplication API (DXGI) for high-performance capture.
    • macOS: Leverages native ScreenCaptureKit for performant, permission-compliant recording.
    • Linux: X11 and Wayland support.
  • Image Editor:
    • Hardware Accelerated: Fully GPU-accelerated rendering using Skia/Metal/Direct2D. renders 4K+ images at 60FPS.
    • 40+ Effects: Organized into Adjustments, Filters, Manipulations, and Drawings.
    • Real-time Preview: Apply effects with instant visual feedback.
    • Serialization: Save and load annotations with full type support.

🚀 Getting Started

Prerequisites

Arch Linux (AUR)

Arch Linux users can install the latest development version via the community-maintained AUR package xerahs-git (maintained by @unicxrn).

This package builds directly from the source code and automatically handles dependencies, including the .NET 10 SDK. It can be installed using an AUR helper like yay:

yay -S xerahs-git

Building and Running

# Clone the repository
git clone https://github.com/ShareX/XerahS.git

# Clone the required dependency (must be in a sibling folder named 'XerahS.Editor')
git clone https://github.com/ShareX/XerahS.Editor.git

cd XerahS

# Build the solution
dotnet build

# Run the application
dotnet run --project src/XerahS.App/XerahS.App.csproj

macOS Permissions (Screen Recording)

Screen capture on macOS requires Screen Recording permission:

  1. Open System Settings > Privacy & Security > Screen Recording.
  2. Enable XerahS for screen capture access.
  3. Restart the app after granting permission.

macOS Permissions (Global Hotkeys)

Global hotkeys use SharpHook and need Accessibility permission:

  1. Open System Settings > Privacy & Security > Accessibility.
  2. Enable XerahS (or the published app bundle) for accessibility access.
  3. Restart the app and retest hotkeys.

macOS Troubleshooting ("App is damaged")

If you see a message saying "XerahS is damaged and can't be opened", it is due to macOS security (Gatekeeper) on quarantined downloads. To fix it:

  1. Open Terminal.
  2. Type the following command (do not hit Enter yet):
    xattr -cr 
  3. Drag the XerahS.app file from Finder into the Terminal window (this pastes the full path).
  4. Only now, press Enter.

🛠️ Developer Information

See DEVELOPER_README.md for architecture details and contribution guidelines.

📄 License

About

XerahS (ShareX.Avalonia) is a cross platform reimagining of the ShareX user interface built with Avalonia. It targets modern UX modular architecture and long term maintainability while preserving core workflows speed and reliability. It provides a foundation for future desktop experiences on Windows macOS and Linux with consistent accessible design

Topics

Resources

License

Stars

Watchers

Forks

Contributors 5