Peanut is an orginizational application focusing on user customization whithin a simple interface.

Related tags

UI Peanut
Overview

logo

Peanut

Language Swift 5.5 Twitter: @dimerabbits

Peanut is an organizational application focusing on user customization within a simple interface.

Table of Contents

User Features

  • Dynamic Organization: Handle multiple projects at once by setting reminders, prioritization, sorting, and your choice of color scheme.
  • Tracking Productivity: Keep a close eye on your progress to ensure there is never a deadline missed. Utilize Peanut to meet the goals specific to your work.
  • Sharing: Post comments to share updates and engage with team members to inspire new ideas.

Architecture

  • Modeled with Core Data using an inverse relationship with parent/child entities "To Many".
  • Integrated with CloudKit to enable sharing functionality.
  • Composed primarily without UIKit except for bridging Quick Actions capability and dismissing the keyboard in TextEditor.
  • Pragmatically utilized MVVM where necessary.
  • Built with Accessibility in mind: VoiceOver, grouping data, adding traits and additional labels.

System Integrations

  • Haptics
  • Spotlight
  • Local Notifications
  • StoreKit (In-app purchasing)
  • Shortcuts
  • Home Screen Quick Actions
  • Widgets
  • Storing data in iCloud
  • Querying data from iCloud
  • Posting Comments through iCloud
  • Ratings and Review Request
  • Sign in with Apple

Additional Coaching Points

  • Core sample data for Canvas previews. - optimizing with previewLayout, preferredColorScheme, etc…
  • Extending 'Error' to handle CloudKit errors.
  • SwiftLint - Working off Command Line and implementing as a build phase. Adjusting .yml arguments.
  • Documenting Code - Documentation Comments, MARKS, FIXME, TODO, Orphaned explanation.
  • Testing (Unit & UI) - Measuring performance, setting benchmarks.
  • Internationalization(i18n) & localization(l10n) - genstrings, plurals, interpolated data, and localized to English and Spanish.
  • State Restoration - @AppStorage / @SceneStorage and attaching tag to the Hashable protocol.

Taking it Further…

  • WelcomeView
  • AboutView
  • Completely localized to Spanish
  • Custom TextField (includes clearing text functionality)
  • Custom Progress View
  • Custom Color Picker LazyHGrid
  • String Interpolation and Rendering Markdown content in text
  • Adjusting List row seperator visibility and color
  • Creating a List / ForEach from a binding
  • additional data model attribute - "note" (TextEditor)
  • CKQueryOperation deprecation fix (recordsMatchedBlock, queryResultBlock)
  • Adding additional NavigationLinks to ProjectSummaryView
  • Adjusting list row seperator, visibility, and color
  • ProgressTiled - Project Summary on TodayView using guage meter
  • Shadows and glows (inner, raised)
  • @FocusState - reading and writing the current focus position in view hierarchy. Dismissing the keyboard
  • NotesHeader - Resigning First Responder to dismiss the keyboard in TextEditor
  • SwiftUI for iOS 15 - confirmationDialog, withAnimation, Button roles, submitLabel, textSelection, symbolRenderingMode, Visual Effect Blurs using Material, focusable, alert, onSubmit, foregroundStyle(semantic colors, gradients, glows, shadows)
  • Incorporating a multitude of Swift 5.5 API’s and Adhering to the latest Apple Interface Guidelines.

Credits

Learning from Paul Hudson.

License

Peanut is MIT licensed, as found in the LICENSE file.

You might also like...
This is the replica of Foursquare application, created using storyboard.
This is the replica of Foursquare application, created using storyboard.

FourSquare-Storyboard- This is the replica of Foursquare application, created using storyboard. API Usage from Foursuare Places Search Get Place Detai

Simple battery shaped UIView
Simple battery shaped UIView

BatteryView Simple battery shaped UIView. Usage let batteryView = BatteryView(frame: smallRect) batteryView.level = 42 // anywhere in 0...100 batteryV

A simple, customizable view for efficiently collecting country information in iOS apps.
A simple, customizable view for efficiently collecting country information in iOS apps.

CountryPickerView CountryPickerView is a simple, customizable view for selecting countries in iOS apps. You can clone/download the repository and run

Swift based simple information view with pointed arrow.
Swift based simple information view with pointed arrow.

InfoView View to show small text information blocks with arrow pointed to another view.In most cases it will be a button that was pressed. Example To

🏞 A simple iOS photo and video browser with optional grid view, captions and selections written in Swift5.0
🏞 A simple iOS photo and video browser with optional grid view, captions and selections written in Swift5.0

Introduction 🏞 MediaBrowser can display one or more images or videos by providing either UIImage objects, PHAsset objects, or URLs to library assets,

Simple parallax header for UIScrollView
Simple parallax header for UIScrollView

MXParallaxHeader ⚠️ This project is no longer maintained, see #124 ⚠️ MXParallaxHeader is a simple header class for UIScrollView. In addition, MXScrol

Simple selection dialog
Simple selection dialog

SelectionDialog Simple selection dialog inspired from ios-custom-alertview Preview Requirements iOS 8.0+ Swift 3 Xcode 8.0 Installation CocoaPods use_

Simple PhotoBrowser/Viewer inspired by facebook, twitter photo browsers written by swift
Simple PhotoBrowser/Viewer inspired by facebook, twitter photo browsers written by swift

SKPhotoBrowser Simple PhotoBrowser/Viewer inspired by facebook, twitter photo browsers written by swift features Display one or more images by providi

Simple and highly customizable iOS tag list view, in Swift.
Simple and highly customizable iOS tag list view, in Swift.

TagListView Simple and highly customizable iOS tag list view, in Swift. Supports Storyboard, Auto Layout, and @IBDesignable. Usage The most convenient

🍞 Toast for Swift - Toaster Android-like toast with very simple interface

Toaster Android-like toast with very simple interface. (formerly JLToast) Screenshots Features Queueing: Centralized toast center manages the toast qu

Suyeol Jeon 1.6k Jan 3, 2023
UI framework that allows developers to integrate an amazing selection interface into their applications

UI framework that allows developers to integrate an amazing selection interface into their applications! Each bubble has a set of parameters, which could be configured individually.

AJIJIi 5 Jul 12, 2022
Full configurable spreadsheet view user interfaces for iOS applications. With this framework, you can easily create complex layouts like schedule, gantt chart or timetable as if you are using Excel.

kishikawakatsumi/SpreadsheetView has moved! It is being actively maintained at bannzai/SpreadsheetView. This fork was created when the project was mov

Kishikawa Katsumi 34 Sep 26, 2022
Provides an iOS view controller allowing a user to draw their signature with their finger in a realistic style.

Swift version now available! Mimicking pen-on-paper signatures with a touch screen presents a difficult set of challenges. The rate touch events are e

Uber Open Source 1.3k Jan 6, 2023
Dump local MacOS user hashes to a hashcat-compatible string.

mimic Dumps local MacOS user hashes to a hashcat-compatible string. Simply uses Objective-C instead of dscl/defaults read or other noisy binaries, to

null 0 Dec 29, 2021
Creating a simple selectable tag view in SwiftUI is quite a challenge. here is a simple & elegant example of it.

SwiftUI TagView Creating a simple selectable tag view in SwiftUI is quite a challenge. here is a simple & elegant example of it. Usage: Just copy the

Ahmadreza 16 Dec 28, 2022
A custom reusable circular / progress slider control for iOS application.

HGCircularSlider Example To run the example project, clone the repo, and run pod install from the Example directory first. You also may like HGPlaceho

Hamza Ghazouani 2.4k Jan 6, 2023
Swift Package for distributing Mozilla's Rust-based application components

Swift Package for Mozilla's Rust Components This repository is a Swift Package for distributing releases of Mozilla's various Rust-based application c

Mozilla 19 Dec 30, 2022
Application to test MVVM architecture with Combine and UIKit librarys.

Application to test MVVM architecture with Combine and UIKit librarys.

Jose Javier Escudero Gómez 0 Dec 14, 2021