Skip to content

jatinpandey/things

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Things

A notepad for what's on your mind.

A "thing" has a name, a date, optional tags (people / places / feelings), and the ability to star/favorite what matters. Swipe-left a card to mark it completed. Completed cards show up on their own searchable page.

Stack

  • SwiftUI, iOS 17+
  • Single-target Xcode project, no third-party dependencies
  • UserDefaults JSON persistence (Persistence.swift)
  • App icon and project.pbxproj are generated by scripts (see below) so they stay reproducible

Run

open Things.xcodeproj

…then ⌘R against any iPhone simulator.

Project layout

Things/
├── ThingsApp.swift           # @main
├── Models/
│   ├── Thing.swift           # model + date helpers + grouping
│   └── Persistence.swift     # UserDefaults JSON store
├── Theme/
│   ├── Theme.swift           # color tokens, fonts (violet accent)
│   └── Icons.swift           # custom SwiftUI shapes
└── Views/
    ├── ContentView.swift     # 3-tab TabView (Home / Add / Completed)
    ├── HomeView.swift        # active list, swipe-left to complete
    ├── CompletedView.swift   # done list, swipe to undo / delete
    ├── DetailView.swift      # detail + mark done / edit / delete
    ├── EditorView.swift      # create / edit sheet
    ├── ThingCard.swift       # the card primitive
    ├── AppIconView.swift     # in-app preview of the app icon
    └── FlowLayout.swift      # tag wrap layout

Regenerating

The Xcode project file and the app icon are both generated:

python3 scripts/generate_xcodeproj.py    # rewrites Things.xcodeproj/project.pbxproj
python3 scripts/generate_icons.py        # rewrites Assets.xcassets/AppIcon.appiconset/icon-1024.png

Re-run generate_xcodeproj.py after adding or removing a Swift file — it auto-discovers everything under Things/.

About

Personal curated customizable list of Things

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors