8000
Skip to content

barreiro-max/CalendarMVVM

Repository files navigation

CalendarMVVM

A SwiftUI calendar application built with MVVM architecture, featuring full date management, event handling, and modern iOS integrations.

The app uses Date API from Swift Foundation for all date calculations, supports local notifications via UserNotifications, and provides a Widget using WidgetKit.


Demonstration

calendar_demo.MOV

✨ Features

  • 📅 Display calendar with current month and date highlights
  • ➕ Create, ✏️ Edit, 🗑 Delete events
  • 🕑 Full date calculations using Swift Foundation Date API
  • 🔄 Asynchronous pagination for infinite scrolling of dates
  • 🎨 Calendar grid layout using SwiftUI Grid
  • 🔔 Local notifications for events via UserNotifications
  • 🧩 WidgetKit support to show upcoming events on the home screen

🧠 Architecture

  • MVVM: clear separation between Views, ViewModels, and Models
  • ViewModel: handles logic, state management, and data formatting
  • Models: store events and dates
  • Views: SwiftUI views rendering calendar grid, events, and interactions

🔹 Notes

  • Fully SwiftUI-based with modern Swift concurrency patterns
  • Uses Grid for flexible date layout
  • Designed as a reference for building modular, testable calendar apps

📄 License

This project is licensed under the MIT License.

About

SwiftUI calendar app with MVVM architecture, event management (create/edit/delete), infinite date pagination, UserNotifications, WidgetKit support, and a flexible Grid-based layout using Swift Foundation Date API.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

0