Popularity
1.9
Growing
Activity
9.3
Declining
87
2
3

Description

BreadBuddy is the reference I wish I had when I was first learning how to build apps with Swift/SwiftUI.

Programming language: Swift
License: BSD 2-clause "Simplified" License
Tags: UI     Swift     SwiftUI     Mvvm     CADI    

BreadBuddy alternatives and similar libraries

Based on the "UI" category.
Alternatively, view BreadBuddy alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of BreadBuddy or a related project?

Add another 'UI' Library

README

BreadBuddy

BreadBuddy is a recipe scheduler for iOS. I use it to schedule my overnight pizza dough, and my partner uses it to schedule her awesomely complicated (but incredibly yummy) sourdough baguettes!

Screenshots

Download

BreadBuddy Download Link

Open Source

BreadBuddy is the reference I wish I had when I was first learning how to build apps with Swift/SwiftUI. It was therefore built to be open source.

Code Philosophy

The source code for BreadBuddy is meant to be read, tested, and replaced. The app is influenced by—but not beholden to—Clean Code, SOLID, and TDD.

⛳️ CADI

BreadBuddy is built with SwiftUI and MVVM. And is organized with CADI, an acronym that stands for Core, App, Data, Interface. Pronounced like, and inspired by, "Caddie", the system compliments MVVM through the use of folders, local packages, and protocols to make feature iteration, code replacement, and refactoring a relative breeze...

  • Core/*
    • Models (the M in MVVM)
    • Core data representations
    • Services (domain logic)
    • Made as thin as possible
    • Type extensions
    • Critical unit tests
  • App/
    • @main entry point
    • Configuration files
    • Asset catalogues
    • Environment/plist variables
  • Data/
    • Database
    • UserDefaults, CoreData, GRDB.swift, or similar
    • Stores
    • With protocols to allow for future data layer substitutions
  • Interface/
    • Views (the V in M*V*VM)
    • Organized by Screen
    • Co-located/nested ViewModels (the VM in MV*VM*)
    • Fonts
    • Colors
    • Sugar*
    • Custom and reusable UI components

​ *Core and Sugar are local packages firewall-ed from the rest of the app

Notable Files