Skip to content

Latest commit

 

History

History
230 lines (149 loc) · 9.62 KB

README.md

File metadata and controls

230 lines (149 loc) · 9.62 KB

Vini: a growth tracking app for self-improvement.

Vini is a growth tracking app for you to capture your personal growth, share your mood, and get inspired by others.

為了達到成長目標,我們常追求別人的答案,追求現有的目標框架或系統,進而陷入期待與挫折的循環,甚至因為沒有達成目標,而否定了過程的累積與學習。

Vini 專注在捕捉與紀錄在成長之路上,那些微不足道、看似無用、卻又能帶給自己啟發的微小學習,Vini 相信,生活中的一句話、一篇文章、一部電影、一首觸動人心的歌、或是一場突如其來的大雨,都可能為你帶來新的啟發。

現在就用 Vini 捕捉你的微小學習,用更真實的方式自我成長!


Table of Contents


Features

Set a goal

Create a growth goal as your starting point of self-growth.

Record your new findings

Record a growth content card to capture your new learnings or findings in life.

Archive and celebrate

Archive a growth card with Vini to set a memorable milestone and celebrate your growth.

Review your achievements and insights

Review and get inspired by your past achievements and insights.



Explore and meet others on Vini Cloud

Set your current status and a personal dedicated Vini character on Vini Cloud, and get in touch with other users with private mails.



Do a self-reflection at night

Guided by the mindful questions and enjoy the meditation music to do a self-reflection before going to bed.

Read mails and get inspired

Read new mails only in specified reflection time at night, get inspired, and record your new findings in your growth card.



UX Highlights

Vini provides an immersive and delightful user experience thourgh:

Animations and Sound Effect

Built smooth animation with immersive sound effect when signing in, editing, alerting, archiving, and clicking on something.

Landing.and.Sign-in.MP4
Archiving.a.Growth.Card.MP4
Editing.MP4

Self-Reflection

Provided personal reflection questions with mindful meditation sound.

Reflection.in.Vini.MP4.mp4

Custom Alert Modal

Popped up a Vini-styled alert modal for error handling and providing alert messages for better experience.

Alert.Modal.MP4

User-defined Notification time

Created a user-defined time picker for modifying user's reflection time.

Time.Picker.MP4

Haptic Vibration

Experience different vibration patterns when:

  • Signing in and redirecting to home page.
  • Tapping on confirm or main buttons.
  • Tapping on Discover tab.
  • Tapping on specific Vini on Vini Cloud.
  • Reaching the edge on Vini Cloud.
  • Redirecting to Vini Cloud.
  • Archiving a growth card.

Techniques

  • Implemented OOP and MVC design pattern.
  • Built user interfaces both with Interface Builder and programmatically.
  • Designed and built a custom reuse mechanism of infinite scroll view to help reduce the burden of memory.
  • Designed a random generated algorithm for distributing several custom views on the horizontal scroll view without intersection.
  • Built animation, sound effect, and haptic vibration to create an immersive and delightful user experience.
  • Worked on long-press gesture handling for better archiving experience.
  • Created a reusable alert modal for error handling in both API managers and view controllers.
  • Implemented user-defined notification by using User Notifications.
  • Applied Singleton design pattern to manage Firebase APIs.
  • Utilized Sign-in with Apple and Firebase Authentication to carry out the privacy-preserving sign-in flow.

Libraries

Requirement

  • Xcode 13.0.
  • Swift 5.
  • iOS 13 or higher.

Version

1.1.0

Release Notes

Version Date Notes
1.0.2 2021.11.20 Released in App Store.
1.0.3 2021.11.29 Fix navigation bar color bug.
1.0.4 2021.12.04 Fix reflection text bug in specific devices.
1.0.5 2021.12.17 Fix avatar display bug and improve sound experience.
1.0.6 2022.01.05 Fix signup bug.
1.1.0 2022.06.25 Add delete account feature.

Author