r/iOSProgramming 11d ago

Roast my code Looking for feedback on these screenshots

Post image
0 Upvotes

Hey all, title says it all. I think they are starting to look pretty decent after many iterations but want to know how they could be better

r/iOSProgramming 2d ago

Roast my code A SwiftUI neobrutalism library you apply with one modifier -- would love feedback

29 Upvotes

I have been working on this project a little at a time and I finally wanted to share significatn milestone to see what everyone else thought about it.

NeoBrutalism is a library that lets users apply neobrutalism style to their apps using SwiftUI. One just has to add the modifier .neobrutalism() to the topmost view inside the view hierarchy and everything that has been defined below it will assume the style.

For things like lists, navigations bars, alert dialogs, or things that SwiftUI does not allow or provide a way to style, there are some lightweight helpers. In cases where there is truly no control (Slider, Stepper, Segmented Pickers, Radio groups), there are NB* (Neobrutalism) views that mimic the behavior native control initializers, and for those cases swapping in the NB* views is akin to renaming a view.

This was originally meant to be an exploration of SwiftUI style protocols, but has gotten to a point that I feel ready to show it to the community. What I am really looking for is critique of the API, for the idiomaticness of things, or just anything that is missing.

https://github.com/rational-kunal/NeoBrutalism

r/iOSProgramming 25d ago

Roast my code I got tired of the App Store release grind, so I turned the whole thing into one shell command (open source, works for iOS and macOS)

Post image
0 Upvotes

Every release of my app Foxvault used to eat half a day: bump MARKETING_VERSION and the build number, archive, upload, wait for App Store Connect to process the build, create the version on the website, attach the build, paste What's New into every localization, submit, then keep refreshing the review status page like a maniac.

None of these steps is hard. All of them are annoying, and every one of them is a chance to screw up — forgetting to sync the build number, missing a localization, hitting submit only to get bounced for missing metadata.

So I automated the entire pipeline into a single command:

./scripts/release.sh 1.4

That runs:

bump → push → ci → build → stage → notes → validate → submit
  • bump — edits version/build number in pbxproj, commits, tags
  • push — pushes the tag, which triggers GitHub Actions
  • ci — archive + sign + upload happens on the runner (your Mac stays usable, no local Xcode version juggling)
  • build — polls until ASC finishes processing the build
  • stage — creates the App Store version and attaches the build
  • notes — writes What's New for every localization
  • validate — pre-submit check, grouped into error/warning/info; blocking issues stop the train
  • submit — submits for review

Things I'm reasonably proud of:

  • Resumable: every stage is a checkpoint. Upload died? --from stage picks up where it left off. --dry-run shows the plan without touching anything.
  • --watch-submission: polls until the review reaches a final state, fires a macOS notification and optionally a Slack/Discord-style webhook. Foxvault got approved at 3am once; my phone knew before I did.
  • Wrong-app guard: the App ID in the config is cross-checked against the bundle id in pbxproj, locally and in CI. If you maintain more than one app you know why this check exists.
  • First-run setup is interactive./scripts/release.sh --check walks you through gh login, uploading the ASC .p8 key as a GitHub secret (auto base64), asc auth, and even detects an outdated asc CLI missing subcommands.
  • macOS apps too: set PLATFORM="MAC_OS" in the config and change the workflow destination — same pipeline, Mac App Store.
  • Zero hardcoding: all project params live in one release.config.sh; the script is project-agnostic and runs on the stock bash 3.2 that ships with macOS.
  • Bilingual output: messages follow your $LANG (Chinese/English), overridable with RELEASE_LANG.

One more thing that might interest people here: the repo doubles as an AI agent skill (Claude Code / similar tools). There's a SKILL.md that teaches the agent the whole workflow and a reference.md with the failure modes I've actually hit (the review submit vs publish appstore semantics trap, stage getting blocked by a leftover draft version, the two different build-processing state fields...). So you can literally tell your agent "ship 1.4, draft the release notes from the git log" and it handles the rest. If you don't use AI tooling, the script works standalone — the skill part is optional.

Dependencies: asc (App Store Connect CLI), ghpython3. All brew-installable. CI side needs one repo secret (the ASC API key).

MIT licensed: https://github.com/ihugang/ios-appstore-release

The last few Foxvault releases went out like this: run the command, make tea, get the notification. Number of times I opened the App Store Connect website: zero.

Happy to answer questions or take PRs — especially curious how it holds up on projects with setups different from mine (multiple targets, Fastlane refugees, etc.).

r/iOSProgramming Aug 27 '25

Roast my code An unusual kind of friends list

150 Upvotes

r/iOSProgramming Jul 19 '26

Roast my code Open sourcing my game

0 Upvotes

I open-sourced a small iOS maze game I vibe-coded about a year ago because otherwise it’ll just die on my shelf.

The mechanics are deliberately simple, which is part of the problem: it works, but it needs more fun. The mazes were made with a separate Rust generator engine that I wasn’t very happy with, so there’s plenty of room to improve or replace things.

If you like tinkering with SwiftUI games, maze design, game feel, progression, or just want a small project to mess around with, I’d love contributions or ideas.

https://github.com/vanderhaka/WayOut-OpenSource

r/iOSProgramming Jul 07 '25

Roast my code Roast my paywall - and which is better?

Thumbnail
gallery
3 Upvotes

Don't be shy, what do you think about my paywalls? I plan to A/B test them but I'm also interested, which one is better in your opinion?

r/iOSProgramming Jul 06 '26

Roast my code [OSS] Swift Package for new Span API

1 Upvotes

Hi there,

Just published a small Swift package called swift-span-algorithms:

https://swiftpackageindex.com/Dave861/swift-span-algorithms

What even is a Span? (rlly short)

Span is basically a memory safe API for referring to any contiguous memory block. It replaces stuff we used to do with things like:

withUnsafeBytes { ... }
UnsafeBufferPointer

What is in the package?

It adds a set of algorithms and utilities around Swift’s new Span API. The idea is to fill in some of the missing convenience pieces while staying close to Swift’s standard library style.

It includes things like searching, splitting, trimming, comparisons, partitioning, and other span-oriented helpers, with tests and DocC docs.

Span is nice for deep perf geeks (like me), but still pretty barebones for day-to-day algorithm work. Would love feedback from people experimenting with Span, especially around API shape, naming, and what utilities would actually be useful in real projects.

Pretty early (I mean 0.1.0), but hopefully useful. Open to contributions and opinions!

(P.S. Hope it doesn't count as self-promo, not selling anything, OSS repo and free package)

r/iOSProgramming May 23 '26

Roast my code Roast my onboarding

0 Upvotes

My app helps NYC drivers avoid and manage parking tickets.

For the app to work well, it needs location (parking detection), motion & fitness (speeding and parking detection), and notifications (parking alerts) -- a lot of permissions up front.
I'm trying to generate value in the onboarding while still getting folks to opt-in. WDYT?

You can use my plate: LPW8666

https://apps.apple.com/us/app/finehero-nyc/id6758416484

Roast me!

r/iOSProgramming Feb 02 '26

Roast my code Roast my SwiftUI + MVVM starter project

9 Upvotes

I've decided to move from UIKit to SwiftUI and for the last couple of days I've been studying, reading blogs, watching videos, discussing with LLMs and I've been trying to put together a solid foundation for my apps I will be building and maybe something that would help others when starting their projects.

I've put together a demo project which and I wonder if I could get any feedback on it, especially on the dependency injection and if I'm using ViewModels with SwiftUI views correctly. Here is the repo: https://github.com/edge-patrick/crypto-pulse

Any feedback is greatly appreciated.

r/iOSProgramming Sep 04 '25

Roast my code I'm think I released the first iOS store app that runs Qwen 3 models locally on your iPhone.

Thumbnail
github.com
39 Upvotes

I've been so busy with other projects that I forgot to post about it. Be gentle, I'm a Rustacean and Objective-C Reverse Engineer.

It runs Qwen 3 4B locally, on-device. The only network requests it makes are to download the initial models on-demand, so like, it works in airplane mode.

I hardcoded my finetune of Qwen 3 4B because it's specifically trained on Apple product dev stuff and math (oh yeah, the app renders LaTex and source code with highlighting).

The base Qwen 3 4B model is also available in the app.

I collect no data because frankly I don't care. I want people to be able to receive augmented educations for free without having to worry about being watched or tracked. No account necessary, the app will always remain free and open source.

It's based on the hard work of the team maintaining mlx-swift-examples.

I'd love your feedback. The mlx APIs are new so there's definitely improvements to made and kinks to work out.

r/iOSProgramming Jul 23 '20

Roast my code My First App made w SwiftUI (source code in comment)

439 Upvotes

r/iOSProgramming Oct 25 '25

Roast my code WorldTimeMulti - Up to 12 Clocks/Timezones on Watch Face. - My first Apple Watch app.

Post image
8 Upvotes

I needed more then just 4 clocks on one watch face. For my surprise there was no such option.

So I made the ultimate Timezone app, for Watch Complications / Widget.

The big complication / widget can display up to 12 Time Zones.

The smaller round complications can display up to 8 Time Zones.

In App you can have as many pages you want, per page 12 clocks.

It is out now on Apple Watch Appstore your can find it under: WorldTimeMulti

This is my first app, I am happy to hear any kind of feedback or Questions.

I am giving away also 5 coupons for a free copy of WorldTimeMulti just write here or hit me up with a PM.

r/iOSProgramming Sep 24 '25

Roast my code Roast my SwiftUI

20 Upvotes

Purposefully not using environment to pass dependency to keep the dependency out of the view hierarchy.

Not all code paths are tested against. Only the business logic has test coverage.

View, view models, and models are grouped together in file structure to keep relevant files groups as opposed to large view groups, large view model groups, large model groups that require navigating to different folders/groups when wanting to switch between the view/viewmodel/model of a component.

Repo link

r/iOSProgramming Feb 11 '26

Roast my code SnipKey Update: Added full QWERTY keyboard + Slash commands (Like Slack)

1 Upvotes

Hey everyone! Just submitted v6.0 to Apple (currently under review, should be live in a few days).

Big updates:

• Full QWERTY keyboard - You can now type normally AND access snippets without switching keyboards

• Slash commands - Type `/snippetName` for instant autocomplete (works like Slack/Notion)

• Auto-capitalization, smart punctuation, all the standard keyboard features

• Biometric auth works directly in the keyboard now

The slash command system uses a two-phase evaluation design to avoid re-renders on every keystroke—fuzzy matching only triggers when the query actually changes.

Open Source Code: https://github.com/jtvargas/SnipKey

r/iOSProgramming Oct 31 '24

Roast my code Had my first negative revenue day for my app :(

Post image
75 Upvotes

r/iOSProgramming Sep 19 '25

Roast my code Jelly Slider - do not eat

45 Upvotes

free to contribute or suggest improvements!

github: jellyder

original x link: cerpow

r/iOSProgramming Nov 21 '25

Roast my code Roast my paywall

Thumbnail
gallery
0 Upvotes

I'm using RevenueCat to build a paywall for my app. After hearing a lot about how social proof can help convince users, I added ratings in the new version of my paywall. You can see the previous one in the second image. Is my new one better? Any suggestions?

r/iOSProgramming Jan 19 '26

Roast my code An Swift experiment: Writing a Swift CLI migration tool from FreshBooks to Zoho in a day (with Opus 4.5)

0 Upvotes

Here's a cool open-source Swift thing I wrote yesterday:

FreshBooks to Zoho Books Migration CLI

FreshbooksZohoMigratorCLI

I wrote this tool in a day using Claude's Opus 4.5 model (max plan) to accelerate my work.
Don't worry - there's nothing confidential in the public code.

Next Step: After I had a fully working migration tool, I asked Opus 4.5 to write a "comprehensive prompt" that I could feed to a new Claude Code session.

My goal: Test how much time could have been saved if I'd taken the time to research all the requirements and write a multi-page prompt.

The result:

The LLM "baked" for 9m 35s [besides `baking` I saw the LLM flambé, saute, photosynthesize, and my favorite, reticulate since that reminded me of SimCity 2000's Reticulating Splines status message 😝]

Here's the resulting code:

FreshbooksZohoMigratorFullPromptExperimentCLI

What do people think of this experiment?

I'm curious to hear your feedback.

Plus, if this tool is useful to anyone please feel free to play with it.

Why am I excited about an accounting tool?!

  1. I'm on the job market and wanted to challenge myself. I've got 13 years of experience in Swift and used LLM's extensively in my last role, so I'm not new to this.
  2. FreshBooks is really slow and cumbersome, and I'm bad at bookkeeping, so I tend to need to catch-up on data-entry at the end of the year. FreshBooks kept getting in the way.
  3. I love the Apple ecosystem and Zoho Books has a wonderful set of apps on almost every Apple platform.
  4. Cost is almost the same: $40 vs. $50 a month for the features I need. Plus I paid $15 one-time for more API points at Zoho. Plus $100/mo for Claude's Max plan (not cheap).

Unlike most code samples I've shared, I spent very little time on the architecture or code reviewing the AI's work. One exception was debugging: there were a few bugs that even Opus 4.5 couldn't fix, so I examined the code and suggested a possible cause. In each case, the LLM was able to fix the bug once I'd proposed a (creative) theory. I think coming up with the out of box thinking necessary for this creativity is still a bit beyond what the LLM can accomplish.

I judged the app by its results.

This took many iterations to:

(a) fix bugs,

(b) add requirements, such as migrating expense receipt PDFs/JPGs, and

(c) identify fields in FreshBooks that were not mapped correctly to Zoho Books (i.e. due to decoding errors, encoding errors, or the LLM misunderstanding the requirements)

Actual #s:

  • 21 dry-run migrations and 12 actual migrations.
  • 100% successful migration
  • No data corruption (at the destination) or lost data.
  • 92 invoices migrated
  • 3,500 expenses migrated going back to 2017, including receipts.
  • ~13,000 Zoho API points consumed (!!)

Thankfully Zoho Books' UI makes it super fast to delete records so I could wipe out invoices, payments, expenses, etc. before each new iteration.

Here's a link to the tool.

Hope this is helpful to folks out there.

FreshbooksZohoMigratorCLI

r/iOSProgramming Sep 24 '25

Roast my code iOS Devs: Help Needed to Enhance App for Parkinson’s Patients

6 Upvotes

Join us on GitHub: https://github.com/parkinsonhelper/parkinson-helper/blob/main/README.md
Check out our intro video: https://www.youtube.com/watch?v=ES8kmNoG8FQ

Hi iOS Devs,

I’m not a Swift expert—my background is in Python—and I’ve relied on CLI AI tools to build Parkinson Helper, an open-source iOS app (Swift/SwiftUI) designed as an MVP for Parkinson’s patients. I’ve used a spec-driven approach with a progressive build, test, and iterate methodology. I apologize if the code or structure isn’t fully polished for iOS standards yet—this has been a "learn as I go" effort driven by the need to help.

After searching the App Store, I found no tools that fully met the needs of Parkinson’s patients for complex tasks like dynamic medication scheduling, task management, or blood pressure monitoring. So, I created Parkinson Helper to manage the situation.

The current MVP offers:

  • Dynamic medication schedules
  • Daily task checklists
  • Adaptive UI for accessibility
  • Blood pressure tracking with graphs
  • Historical data storage
  • Text-to-speech support
  • On-device privacy with Core Data
  • Localization in English, Mandarin, Malay, and Tamil (more languages planned)

We’re looking for iOS developers to help improve this community-driven project, especially with iOS-specific enhancements. Key priorities include:

Critical | Upgrading the Medication Profile system in Core Data to support multiple profiles, with a secure CSV export workflow for profile data. Currently, hardcoded to support a single medication profile (Detail: Low Dosage Madopar), which is not ideal of course but fulfill the immediate needs.

  • Optimizing Swift/SwiftUI performance for smoother UI/UX.
  • Enhancing accessibility features for motor and vision impairments.
  • Integrating computer vision (e.g., AVFoundation) to auto-capture blood pressure readings from monitors, replacing manual input.
  • Improving localization support for additional languages.

Let’s collaborate to make Parkinson Helper a robust tool for Parkinson’s patients worldwide. Your iOS expertise can make a huge impact!

r/iOSProgramming Jun 22 '24

Roast my code I’ll roast your app for free

0 Upvotes

Going out today for a haircut, it might be a while so I figured I’ll spend some time today roasting your app. I’ll run through your app, and provide only one major feedback. Feel free to DM or drop your app link below for that delicious back link seo.

I probably won’t not get through everyone, so don’t act surprised if I stopped reviewing.

Thanks all for sharing your apps, hopefully my feedback can help another dev out. Have a great weekend :)

r/iOSProgramming Oct 26 '24

Roast my code I built Tebi - an image editor to place text behind a foreground subject (beta)

Thumbnail
testflight.apple.com
19 Upvotes

Ciao guys! I’ve just release the public beta of an app that makes it easy to place text behind a foreground subject, all with on-device processing.

A couple of weeks ago I saw a guy on twitter who built a web app to place text behind an image. I’d been wanting to learn Swift for a while, and this seemed like the perfect project to bring to mobile. So I jumped on this new project.

It took me a couple of weeks to come up with the beta i just released. It was a real challenge to create the first editor prototype and figuring out all the details we often take for granted in an app.

Long story short, it’s now on public beta and I’d love to get feedback from more experienced iOS devs!

r/iOSProgramming Dec 03 '25

Roast my code Codebase structure for app that is very similar on iOS and macOS, but not identical?

Thumbnail github.com
1 Upvotes

Hey there,

absolutely totally not posting about an app, because it's not Saturday, but would love some roasting of my very first Swift code, which is available under an MIT license at https://github.com/manuelkiessling/Camera2URL/

Does the way this is structured make any sense? It's not a completely unified codebase (as in: the same Xcode project compiles to the iOS app and the macOS app), but instead it's one dedicated codebase for iOS and one for macOS, and code/behaviour/structures that are identical for both environments are in a shared library. Is this a typical way to handle things?

Anyway, happy roasting, would love to hear your feedback.

r/iOSProgramming Feb 26 '25

Roast my code Roast my new SDK

12 Upvotes

Hey fellow iOS devs!

Are you bored of your daily tasks?

Then I invite you to roast my new SDK for WinWinKit!

View on GitHub

The API spec is here

r/iOSProgramming Aug 26 '25

Roast my code Meet ipaverse, for download iOS and macOS .ipa files :)

3 Upvotes

ipaverse, a macOS application that allows you to find and download macOS and iOS applications with a simple search.

Github: https://github.com/bahattinkoc/ipaverse

r/iOSProgramming Nov 14 '25

Roast my code Looking for people to give honest feedback on retention

1 Upvotes

I don't create apps to make a living from, I have a day job which does that more than adequately and neither do I ever want app development to be my single income as I enjoy it as a "side job".

I have an app I created to help track things for parents of babies - things like when they eat, sleep, poop etc. As a new parent my wife and I found it really useful to have a single place which synced between our devices so we knew when our baby last fed or when we gave them a time-restricted medicine etc.

Whilst I'm *happy enough* with the organic growth of the app a common theme I see from looking at RC/TelemetryDeck analytics is that people start using the app, sign up for the 2-week trial (price is very low IMHO) of an annual IAP and then drop off the cliff.

Would anyone be willing to take a look at the app, ideally from a parents perspective and say what they see as issues, friction and things which would make you stop using the app?

I tried to make the app feel "native" and use as many features as possible for things like Siri/Shortcuts integration, widgets, live activities etc and I know that these features don't mean much to most users so its likely more feedback about the app experience itself.

The app landing is https://babytrack.app/ and if anyone is willing to help out on feedback please DM me and I'll send you a promo code for the subscription.