Skip to content
forked from Kleshny77/MacDuck

Утилита для macOS на SwiftUI для продуктивности: история буфера обмена, Pomodoro и задачи с поддержкой горячих клавиш. Командный проект 3 курса.

Notifications You must be signed in to change notification settings

elinnlle/MacDuck

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 

Repository files navigation

MacDuck 🦆

MacDuck — macOS-приложение на SwiftUI, объединяющее историю буфера обмена, Pomodoro-таймер и управление задачами в едином рабочем пространстве.

Проект разработан в рамках хакатона на 3 курсе. Основной акцент сделан на системной интеграции macOS (глобальные горячие клавиши, floating-окна, работа с буфером обмена и Shortcuts) и организации продуктивного рабочего процесса.


Основные возможности

История буфера обмена

  • Отслеживание содержимого clipboard.
  • Хранение истории копирований.
  • Быстрое восстановление ранее скопированных данных.
  • Работа через глобальные горячие клавиши.
  • Файловое хранение истории.

Pomodoro-таймер

  • Запуск и управление Pomodoro-сессиями.
  • Отслеживание времени фокусировки.
  • Хранение статистики сессий.
  • Связь Pomodoro с задачами.

Управление задачами

  • Создание и хранение задач.
  • Связь задач с фокус-сессиями.
  • Структурированные модели данных.
  • Локальное хранение состояния.

Floating Window

  • Плавающее окно поверх других приложений.
  • Быстрый доступ к функциям.
  • Минималистичный рабочий интерфейс.

Глобальные горячие клавиши

  • Регистрация глобальных hotkeys.
  • Быстрое открытие интерфейса.
  • Интеграция с системными событиями macOS.

Интеграция с Shortcuts

  • Создание системных шорткатов.
  • Запуск автоматизированных сценариев.
  • Взаимодействие с macOS Automation.

Архитектура

Проект организован по слоям:

MacDuck/
  App/
  Scenes/
  Models/
  Services/
  Storage/
  Utilities/

Models

  • ClipboardModels
  • PomodoroModels
  • TaskModels

Отдельные модели для каждого домена приложения.


Services

  • PomodoroService
  • ClipboardHistoryService
  • GlobalHotKeyService
  • ClipboardHotkeyCenter
  • FloatingWindowManager
  • ShortcutCreator
  • ShortcutRunner

Сервисный слой изолирует бизнес-логику от UI и системных API.


Storage

  • ClipboardStorage
  • ClipboardFileStore
  • StatsStorage

Отдельный слой хранения данных:

  • файловое хранение истории,
  • сохранение статистики,
  • управление состоянием.

Системная интеграция

Проект активно использует возможности macOS:

  • Работа с NSPasteboard (буфер обмена).
  • Глобальные горячие клавиши.
  • Плавающие окна поверх других приложений.
  • Shortcuts API.
  • Работа с файловой системой.

Технологический стек

  • Swift
  • SwiftUI (macOS)
  • AppKit integration
  • macOS System APIs
  • Global Hotkeys
  • File-based storage
  • Shortcuts integration

Архитектурные принципы

  • Разделение доменов (Clipboard / Pomodoro / Tasks).
  • Сервисный слой.
  • Изоляция системных API.
  • Чистая структура проекта.
  • Минимизация логики в UI.

Возможности развития

  • Синхронизация между устройствами.
  • Расширенная статистика продуктивности.
  • Cloud-хранение истории буфера.
  • Расширение автоматизации через Shortcuts.
  • Поддержка плагинов.

Авторство

Проект разработан в команде:

  • Матвеенко Эльвира
  • Самсонов Артём
  • Малова Олеся
  • Рычагов Михаил

3 курс направления «Программная инженерия».

About

Утилита для macOS на SwiftUI для продуктивности: история буфера обмена, Pomodoro и задачи с поддержкой горячих клавиш. Командный проект 3 курса.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Swift 100.0%