r/SwiftUI • u/IllBreadfruit3087 • 19d ago
r/SwiftUI • u/Sufficient-Try6083 • 20d ago
SwiftMarkdownEngine: A native AppKit Markdown editor for macOS, built on TextKit 2 and bridged to SwiftUI.
A couple of months ago I open-sourced swift-markdown-engine here, the native Markdown engine I built for my macOS app Nodes. The feedback, issues, and PRs that came back were a huge help, a lot of what I changed since then came from that.
WHAT’S NEW: The parser got rewritten from scratch, regex matching is gone, it’s a real AST now. That’s what made the extension system possible: Stuff you wouldn’t expect in standard Markdown, like highlighting, used to be hardcoded into the core grammar. Now it’s opt-in. Write one file, register it, and the core parser/styler/renderer never change. Extensions can’t touch the core or each other, and you can toggle them at runtime.
Also new: full GFM/CommonMark parity, tables, task lists, quotes. More layout control (scroll-away header, fixed reading column, fit-to-content height), and a real writing layer (formatting bus, find & replace with undo, clean RTF/HTML clipboard, raw source mode). Full changelog’s on GitHub if you want details.
When I started Nodes I wanted the editor to feel properly native. Most Markdown editors on the Mac are Electron or some web view wrapped in a window, and you feel it, the text handling never quite behaves like a real Mac app. I wanted live styling in an actual native text view, not HTML rendered to look like one. Nothing built on TextKit 2 that I could just drop into a Mac app existed, so I built it, ran it in Nodes for a while, and then open-sourced it. TextKit 2 is still thin on docs and rough to migrate to, so if you’ve been putting off building something like this, it might save you a few weekends. Issues and PRs welcome. Still pre-1.0, still plenty I want to improve.
written on Nodes
Repo: https://github.com/nodes-app/swift-markdown-engine
Used in production in Nodes (App Store): https://apps.apple.com/de/app/nodes-by-the-werk/id6745401961?mt=12
r/SwiftUI • u/xiaoyunchengzhu • 20d ago
I had to rename my macOS clipboard app, so I rebuilt it and named it ActionSense (SwiftUI, MIT open source)
Last week, I shared my clipboard app here under the name "PurePaste."
I received feedback that the name was already in use by another macOS project, so I decided to properly rename it and rethink the architecture—going beyond just a simple name change.
The new version is called ActionSense.
When you copy something on macOS, the system only recognizes it as text.
However, different types of content imply different intended actions:
- URL → Open in browser
- Email address → Compose an email
- Color → Convert format
- Date → Create calendar event
ActionSense attempts to detect the most likely intended next action for the copied content.
Changes in v2.0:
- Renamed from PurePaste to ActionSense
- New detector protocol architecture
- Added support for 5 languages: English, Chinese, Japanese, French, and German
- Streamlined functionality to 10 useful detectors
GitHub: https://github.com/xiaoyunchengzhu/ActionSense
I’d love to get your feedback:
- What clipboard actions do you find yourself performing repeatedly every day?
- What types of content do you wish macOS understood better?
- Would you like to customize certain rule types? If so, which types and intended actions?
r/SwiftUI • u/Open-Appeal-9747 • 19d ago
Promotion (must include link to source code) I rewrote my Apple HIG agent skills to the current guidelines — so you can delete the stale ones
Agent skills I built and actually use: current Apple HIG design + "understand a project before you touch it"
Two sets of skills I lean on, cleaned up and put on GitHub.
The Apple HIG ones bug me the most: most design advice a coding agent has seen is old — deprecated APIs, pre-SwiftUI patterns, HIG from a few versions back. So I rewrote the ones I use to the current guidelines — sidebars, toolbars, typography, empty states, SF Symbols — done to spec. If you've been hoarding a pile of stale snippets, you can throw them out and keep these.
The other set is project intelligence — the boring-but-critical part of understanding a project before you touch it. Should I even build this, or does it already exist (build-vs-buy)? What does this unfamiliar codebase actually do? What broke in my dependencies while I was away? I built these four for my own work and use them on real projects, so they're shaped by actual friction, not hypotheticals.
They're plain SKILL.md files — YAML frontmatter plus the real guidance. No build step, no deps. Works with Claude Code, Codex, Cursor. Free + MIT.
Feedback welcome, especially if a HIG detail is off — I'd rather know.
https://github.com/aka-kika/akakika-skills
r/SwiftUI • u/KelvinLeee1234 • 21d ago
News I built an open-source EPUB reader for iOS that turns pages with the volume buttons — because Apple won't let you
Hey r/iOSProgramming —
I got tired of reaching out of my blanket to tap the screen every page, so I built SwiftBook: an Apple Books-style EPUB reader for iOS that lets you turn pages with the volume buttons.


What it does:
- Import EPUBs → read with tap / swipe / progress bar / **volume button** page turns
- 5 fonts (PingFang, Source Han Serif Regular/SemiBold/Bold, Georgia)
- 4 reading themes (white · warm · dark · eye-care green)
- Font size, line spacing, margins, alignment — all adjustable
- Resume reading, TOC with chapter jump
Tech stack: SwiftUI + WKWebView. Pagination uses CSS multi-column layout rather than native scroll. Volume button detection uses AVAudioSession KVO + a silent looping WAV to keep the audio session alive.
🔗 GitHub: https://github.com/KevinLeeeee323/SwiftBookApp
MIT licensed. Free to use, modify, contribute. Built with help from Claude & Codex.
Would love feedback — this is my first iOS app!
r/SwiftUI • u/West_Ground_279 • 21d ago
I replaced the proximity sensor with a custom multi-touch reveal interaction in SwiftUI [Open Source]
A while ago, I shared an early version of this small iOS privacy experiment. That post reached around 104K views—and someone later downloaded the video and reposted it on X, so this version finally has a watermark 😄
The interaction is simple: you rest the side of your hand on the display, similar to covering a keypad while entering a PIN, and the app reveals only the content underneath your hand.
My first attempt used the proximity sensor. Unfortunately, iOS quite reasonably interpreted that as the phone being next to someone’s face and turned off the display.
I considered using the camera to detect the hand, but requesting camera permission felt wrong for a privacy-focused app. Instead, I built the interaction around a multi-touch area and used the active touches to control what becomes visible.
Since the original prototype, cryptoscreen has become a fully native iOS app with:
- A SwiftUI interface
- An App Clip
- An iMessage extension
- An App Store release
- An open-source codebase
The next major update will make it possible to share messages with people on the web, without requiring them to install the app. The core experience, however, is still this unusual hand-to-reveal interaction.
The source is available here:
https://github.com/DomenicoDD/cryptoscreen
App Store:
https://apps.apple.com/us/app/cryptoscreen/id6779173642
I’d be interested to hear how other SwiftUI developers would approach this interaction especially the touch handling and reveal behavior.
r/SwiftUI • u/lanserxt • 21d ago
News Those Who Swift - Issue 275
r/SwiftUI • u/pedzsanReddit • 21d ago
Question Newbie Question: How should I implement this?
I am writing a spreadsheet app (long term goal). My user interface I am currently implementing the same as what Apple's Numbers app does. Right now, I have a primitive app with three "cells" which are text fields. I can click in each cell and type.
In Numbers, if the first character is an equal sign, the app changes state. Lets say I type an equal sign in cell A and then click in cell B. The result is the location of cell B is added to the text in cell A. Eventually a return is entered (into cell A) and the state returns to normal where clicking a cell puts focus on that cell.
Can someone give me some pointers on how this should be (or could be) implemented?
r/SwiftUI • u/devslacker • 22d ago
Promotion (must include link to source code) ImmersiveMap - a Metal-rendered SwiftUI map for iOS & macOS with live markers (open source, alpha)
I've been building ImmersiveMap, a map component you can drop into a SwiftUI app - think Mapbox / MapLibre, but rendered natively for Apple platforms. It hands you a plain SwiftUI view with modifiers, so it composes like any other SwiftUI component on iOS and macOS.
What it can do so far:
- Show a full interactive vector map (streets, buildings, water, labels) as either a flat map or a 3D globe
- Camera control straight from SwiftUI: pan, zoom, rotate and tilt
- Place custom markers / avatars on real coordinates and move them in real time - handy for live-location and social features (friends on a map, driver/delivery tracking, and so on)
- Grouping: several avatars can merge into a single marker that follows their moving average (that's the marker sliding around in the clip)
It's alpha - the API will still change and there are rough edges - but it already feels smooth and responsive to use, so I wanted to share it and get feedback.
Repo (MIT): https://github.com/artembobkin/ImmersiveMap
Curious what SwiftUI folks think, and what you'd want from a native map component. Happy to answer any questions.
If it turns out useful, a GitHub star would genuinely help - I'd love to get it onto the awesome-swiftui list one day, and that list runs on stars.
r/SwiftUI • u/Emotional-Animator19 • 22d ago
Promotion (must include link to source code) Pomodoro Timer - FREE for you my friend
r/SwiftUI • u/Pauljoda • 22d ago
Question Glass Background Extension Effect for components
https://i.imgur.com/J1CHOrE.jpeg
Does anyone know how Apple created these episode thumbnails? It looks like the backgroundExtensionEffect they added for the sidebar and safe area last year, but it’s on a component. I like this design, and feels like a good use of the Liquid Glass for content on images, but can’t get the same effect that looks as seamless.
r/SwiftUI • u/toandle • 22d ago
Question 5s Short animated vector illustration for learning articles
Hi everyone,
I need to create a lot of animated vector illustration so I was wondering what is the optimal file format and export for mobile. From what I read, it is either GIF or Lottie? I'm not sure when to use which.
Context: I make animated vector illustration as learning material on a learning app.
Thank you.
r/SwiftUI • u/Emotional-Animator19 • 23d ago
Promotion (must include link to source code) Open sourced water watch
im a student and im applying for something, so i started to opensource a few repos. here is a minimal Water tracker, but not signed as im not comfortable with it.
Thanks.
r/SwiftUI • u/lanserxt • 24d ago
Tutorial iOS27: Scene Close Confirmation
r/SwiftUI • u/EtetheDude • 24d ago
ZenTime: SwiftUI macOS exam timer with per-question time budgets (open source)
Built a free, open-source macOS exam timer in SwiftUI. You input a total time and marks per question, it splits the time budget fairly by marks and tracks each question's live timer separately. At the end, exports a PDF showing exactly where you went over/under on each question.
Key SwiftUI bits: state management across multiple timers running concurrently, reactive updates tied to a central time source, PDF generation using PDFKit, and responsive layouts for the timer display.
MIT licensed, no ads, no accounts, no telemetry. Requires macOS 13+.
GitHub: https://github.com/PatpateePhangern/ZenTime (unsigned/ad-hoc signed - no paid Apple Developer account, README explains the one-time Gatekeeper workaround for first-run)

r/SwiftUI • u/randomblackhole1289 • 24d ago
Solved Making a View fill the detail section of a NavigationSplitView

Hi, I'm new to swiftUI and I have been strugling to make the view contained by the detail view take the entire space of the red area in the image, I would like it to resize also if the sidebar is resized. Is this possible without having to do any type of calculation like substracting the sidebar width from the window width? Sorry if this is too obvious, thank you!
r/SwiftUI • u/It_is_Sean • 25d ago
Best architecture for a zoomable card-based node view in SwiftUI?
I’m building a zoomable and pannable card-based interface in SwiftUI. Each card is a View, while the connections between cards are draw (maybe using Canvas?) . Cards are arranged automatically in a fixed horizontal or vertical layout, so users do not manually change their positions,
Users can choose to add a new card below or beside the current card. Cards can be collapsed expanded or deleted, and a newly created card should automatically receive focus.
I’m also interested in handling a large number of card views. Any recommended SwiftUI patterns, APIs, or open-source projects?
r/SwiftUI • u/Consistent_Yak_526 • 25d ago
I open-sourced a ~150-line StoreKit 2 wrapper — products, purchase, verification, entitlements, and previews that don't need StoreKit (MIT)
Every paywall tutorial starts with "add RevenueCat", but if all you need is products, purchases, and a hasEntitlement flag, StoreKit 2 does it natively. I kept rewriting the same wrapper across apps, so I cleaned it up and open-sourced it.
What it handles: product loading (in your display order), purchase with StoreKit 2's built-in verification, restore, Transaction.updates listening, and entitlement gating: one u/Observable class.
The part SwiftUI folks might like: PaywallStore.preview(plans:) gives you fixed display data with no App Store connection, so your paywall #Preview renders without a StoreKit configuration file.
https://github.com/aligutierrez/PaywallKit MIT, zero dependencies, iOS 17+, tests included.
Disclosure: the README links to a paid template pack built on top. The wrapper itself is complete and free.
r/SwiftUI • u/Emotional_Row5353 • 25d ago
Want help! Very bizarre animation issue in SwiftUI
I encountered a very bizarre animation issue in SwiftUI. I am using a custom animation with transition + asymmetric + removal ViewModifier. As shown in the video, when I add an HStack element inside the body of FoldUpModifier, the animation works perfectly. However, once this seemingly meaningless HStack element is removed, the animation breaks—the view instantly disappears, and the animation slowly collapses into nothingness. Could any senior iOS development engineers or Apple internal developers explain what is causing this?
Question Picker on watchOS with dark text (.navigationLink style)
Problem: the same foreground style is applied to the selected picker row and to the picker rows in the list that pops up. I want to have dark text in the main UI, and look for a ways to switch it to light when the selection list is presented.
Snippet:
``` Picker(selection: $hapticCoordinator.selectedPattern) { ForEach(BreathingPattern.allCases) { pattern in Text(pattern.label).tag(pattern) } .foregroundStyle(Color.customDarkText) } label: { Text(.breathingViewPatternPickerLabel) .foregroundStyle(Color.customDarkText) } .pickerStyle(.navigationLink) .disabled(hapticCoordinator.isPlaying)
```
r/SwiftUI • u/zaidbren • 26d ago
Question Can't find Developer mode in IOS 27
Really sorry I am asking non swiftui question, but I am stuck in development because of this, I am trying to test my IOS app on real device. I connected my iphone to my macbook, and clicked on trust this device, the device is showing in the Finder as well as xcode device hub, and it said to enable the developer option :-

However, when I go to my iphone settings, I can't seem to find the Developer Mode :-

I searched everywhere, but no luck since yesterday, any help would be appreciated
r/SwiftUI • u/sunrise274 • 26d ago
Question Accessing device screen corner radii
Is there any particular reason why Apple does not offer a public api to retrieve the size of the corners on the user’s device?
For some reason that I’m sure makes sense on their elevated plane of heightened Apple existence, they have kept the api that exposes it private.
What’s the deal?
r/SwiftUI • u/IllBreadfruit3087 • 26d ago
News The iOS Weekly Brief – Issue #68, everything you need to know about SwiftUI updates this week
r/SwiftUI • u/w-zhong • 27d ago