Skip to content

Latest commit

 

History

13 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🗓️ calendrier

calendrier is an iOS-based note-taking application using SwiftData (for data persistence), providing users with a clean and simple (yet cute!) interface for managing text and drawing notes. I designed this to be simple and easy to use, while still maintaining functionality. You can view, delete, filter and modify notes as needed.

As someone who loves to delve into UX/UI solutions, I designed this app to provide a simple, yet aesthetically pleasing UI solution, with clean user flows.

MVP, basic demo video

image image image


updates!

  • added some more animations for a smoother UX experience. Toggle your starred notes with a simple 'swipe'.

‼️ features

  • take your notes!: Create standard notes, or hand-drawn notes; integrated using Apple's PencilKit framework. To edit an existing note, simply tap on it.
  • filters & sorting: Sort and filter notes if needed.
  • delete notes: Pretty straightforward, delete any notes with a clean and intuitive UI.
  • persistent storage: Notes are stored using SwiftData, ensuring data persistence. Note, data persistence is local to your device.
  • custom styling: I utilized my own styling, having a modern, yet fun UI using custom colours and subtle animations
  • Rive integration: Integrated Rive, an interactive design animation tool, for animations in backgrounds

In the future, I hope to add image support (i.e. drop images from gallery), and more extensive filtering with your own tags.


⁉️ architecture

  • MVVM Pattern:

    • HomeVM — Handles home page state, filter selection, and note navigation.
    • NotePageVM — Manages individual note state, including title, content, drawing data, and starred status.
  • page hierarchy:

      LandingPageView -> HomePageView <-> NotePageView/NotePageDrawView
    
    • LandingPageView — App entry point.
    • HomePageView — Displays all notes with filter options and deletion mode.
    • NotePageView — Displays a text note for editing or viewing.
    • NotePageDrawView — Displays a drawing note with interactive canvas.
  • Persistence: Uses SwiftData queries (@Query) for dynamic fetching and filtering of notes.


❗️ installation

  1. Clone the repository:

  2. Open Calendrier.xcodeproj in Xcode 18 or later.

  3. Build and run on a simulator or device running iOS 18+.


[IMPORTANT] dependencies

  • SwiftUI (iOS 18)
  • Rive (for animation integration)
  • SwiftData for data persistence (for now, storage is local to your device)
  • PencilKit for drawing functionality

About

A handy, simple & cute note-taking app, with real-time storage with SwiftData.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages