{"users":[{"id":2,"username":"npalardy","name":"Norman Palardy","avatar_template":"/user_avatar/ifnotnil.com/npalardy/{size}/10_2.png","admin":true,"moderator":true,"trust_level":3},{"id":31,"username":"DaveS","name":"Dave Sisemore","avatar_template":"/user_avatar/ifnotnil.com/daves/{size}/79_2.png","trust_level":3},{"id":202,"username":"rgb","name":"","avatar_template":"/letter_avatar_proxy/v4/letter/r/858c86/{size}.png","trust_level":2},{"id":375,"username":"andyb","name":"A Biltzan","avatar_template":"/letter_avatar_proxy/v4/letter/a/96bed5/{size}.png","trust_level":2},{"id":192,"username":"ihope","name":"A","avatar_template":"/letter_avatar_proxy/v4/letter/i/4af34b/{size}.png","trust_level":2},{"id":110,"username":"pjsmith67","name":"Phil Smith","avatar_template":"/user_avatar/ifnotnil.com/pjsmith67/{size}/5028_2.png","trust_level":3},{"id":178,"username":"DrScott","name":"Scott B. Steinman","avatar_template":"/user_avatar/ifnotnil.com/drscott/{size}/1465_2.png","trust_level":1},{"id":61,"username":"bkeeney","name":"Bob Keeney","avatar_template":"/user_avatar/ifnotnil.com/bkeeney/{size}/225_2.png","trust_level":3},{"id":17,"username":"MarkusWinter","name":"Markus Winter","avatar_template":"/user_avatar/ifnotnil.com/markuswinter/{size}/32_2.png","trust_level":2},{"id":119,"username":"thorstenstueker","name":"WhoeverHeIs","avatar_template":"/letter_avatar_proxy/v4/letter/t/aca169/{size}.png","trust_level":2},{"id":49,"username":"samRowlands","name":"Sam Rowlands","avatar_template":"/user_avatar/ifnotnil.com/samrowlands/{size}/121_2.png","trust_level":2},{"id":253,"username":"markus","name":"Markus Schneider","avatar_template":"/letter_avatar_proxy/v4/letter/m/b782af/{size}.png","trust_level":2},{"id":71,"username":"Walter","name":"Walter Purvis","avatar_template":"/user_avatar/ifnotnil.com/walter/{size}/417_2.png","trust_level":2},{"id":219,"username":"Goeffie","name":"","avatar_template":"/letter_avatar_proxy/v4/letter/g/b5ac83/{size}.png","trust_level":2},{"id":245,"username":"Torsten_B","name":"Torsten Bernhard","avatar_template":"/letter_avatar_proxy/v4/letter/t/ecae2f/{size}.png","trust_level":3},{"id":67,"username":"supcumps","name":"Philip Cumpston","avatar_template":"/user_avatar/ifnotnil.com/supcumps/{size}/362_2.png","trust_level":2},{"id":285,"username":"nonchai","name":"","avatar_template":"/letter_avatar_proxy/v4/letter/n/3be4f8/{size}.png","trust_level":2},{"id":3,"username":"HalGumbert","name":"Hal Gumbert","avatar_template":"/user_avatar/ifnotnil.com/halgumbert/{size}/2198_2.png","trust_level":3},{"id":6,"username":"Tim","name":"","avatar_template":"/user_avatar/ifnotnil.com/tim/{size}/13_2.png","trust_level":2},{"id":328,"username":"Abbie","name":"Abbie Gonzalez (they/them)","avatar_template":"/user_avatar/ifnotnil.com/abbie/{size}/4533_2.png","trust_level":2},{"id":260,"username":"tempelorg","name":"Thomas Tempelmann","avatar_template":"/user_avatar/ifnotnil.com/tempelorg/{size}/2660_2.png","trust_level":2},{"id":280,"username":"mbierly","name":"Mike Bierly","avatar_template":"/letter_avatar_proxy/v4/letter/m/e274bd/{size}.png","trust_level":2},{"id":214,"username":"YogiYang","name":"Yogi Yang","avatar_template":"/letter_avatar_proxy/v4/letter/y/ecccb3/{size}.png","trust_level":2},{"id":187,"username":"RDSWES","name":"","avatar_template":"/letter_avatar_proxy/v4/letter/r/c37758/{size}.png","trust_level":2}],"primary_groups":[],"flair_groups":[],"topic_list":{"can_create_topic":false,"filter":"latest","more_topics_url":"/c/swift/21?page=1","per_page":30,"top_tags":[{"id":2,"name":"swift","slug":"swift"},{"id":31,"name":"tutorials","slug":"tutorials"},{"id":23,"name":"xojo","slug":"xojo"},{"id":51,"name":"swiftui","slug":"swiftui"},{"id":44,"name":"concurrency","slug":"concurrency"},{"id":49,"name":"indiedev","slug":"indiedev"},{"id":50,"name":"indiemacdev","slug":"indiemacdev"},{"id":40,"name":"linux","slug":"linux"},{"id":48,"name":"macdev","slug":"macdev"},{"id":54,"name":"server","slug":"server"},{"id":43,"name":"windows","slug":"windows"}],"topics":[{"fancy_title":"About the Swift category","id":3398,"title":"About the Swift category","slug":"about-the-swift-category","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2023-07-16T18:36:27.345Z","last_posted_at":null,"bumped":true,"bumped_at":"2023-07-17T03:05:58.374Z","archetype":"regular","unseen":false,"pinned":true,"unpinned":null,"excerpt":"Discussion of Swift and its use in various programming topics \nThis is for topics SPECIFIC to Swift \nif the question / post is more general in nature, or applies to many languages, then maybe it should be in General Prog&hellip;","visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":154,"like_count":0,"has_summary":false,"last_poster_username":"npalardy","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Some NSControl don&rsquo;t return an &ldquo;Image&rdquo;","id":4703,"title":"Some NSControl don't return an \"Image\"","slug":"some-nscontrol-dont-return-an-image","posts_count":5,"reply_count":3,"highest_post_number":5,"image_url":null,"created_at":"2026-05-22T20:11:54.488Z","last_posted_at":"2026-05-23T19:41:48.427Z","bumped":true,"bumped_at":"2026-05-23T19:41:48.427Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":135,"like_count":0,"has_summary":false,"last_poster_username":"rgb","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":true,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster, Accepted Answer","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":202,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Extracting Properties from Custom NSControl","id":4698,"title":"Extracting Properties from Custom NSControl","slug":"extracting-properties-from-custom-nscontrol","posts_count":8,"reply_count":5,"highest_post_number":8,"image_url":null,"created_at":"2026-05-16T15:56:02.737Z","last_posted_at":"2026-05-19T05:11:59.074Z","bumped":true,"bumped_at":"2026-05-19T05:11:59.074Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":163,"like_count":0,"has_summary":false,"last_poster_username":"npalardy","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":202,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"UITableview Spacing","id":4664,"title":"UITableview Spacing","slug":"uitableview-spacing","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"https://ifnotnil.com/uploads/default/original/2X/8/821a75328ff2fe04f6d997c4d37a161905f00db5.png","created_at":"2026-03-20T20:39:45.078Z","last_posted_at":"2026-03-20T20:39:45.186Z","bumped":true,"bumped_at":"2026-03-20T20:39:45.186Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":45,"like_count":0,"has_summary":false,"last_poster_username":"DaveS","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":31,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Any one have an idea how to make a reference between an ENUM and a TEXTFILE?","id":4658,"title":"Any one have an idea how to make a reference between an ENUM and a TEXTFILE?","slug":"any-one-have-an-idea-how-to-make-a-reference-between-an-enum-and-a-textfile","posts_count":7,"reply_count":3,"highest_post_number":7,"image_url":null,"created_at":"2026-03-06T19:26:50.221Z","last_posted_at":"2026-03-06T21:15:44.736Z","bumped":true,"bumped_at":"2026-03-06T21:15:44.736Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":105,"like_count":2,"has_summary":false,"last_poster_username":"DaveS","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":375,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Sound - Swift","id":4642,"title":"Sound - Swift","slug":"sound-swift","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":null,"created_at":"2026-02-01T17:31:09.124Z","last_posted_at":"2026-02-02T05:50:47.542Z","bumped":true,"bumped_at":"2026-02-02T05:50:47.542Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":99,"like_count":0,"has_summary":false,"last_poster_username":"DaveS","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":192,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Building a NSMenu","id":4576,"title":"Building a NSMenu","slug":"building-a-nsmenu","posts_count":5,"reply_count":1,"highest_post_number":5,"image_url":null,"created_at":"2026-01-01T18:33:43.848Z","last_posted_at":"2026-01-05T21:23:44.126Z","bumped":true,"bumped_at":"2026-01-05T21:23:44.126Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":245,"like_count":0,"has_summary":false,"last_poster_username":"rgb","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":true,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster, Accepted Answer","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":110,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":178,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":202,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Swift for Xojo Developers for 2026","id":4552,"title":"Swift for Xojo Developers for 2026","slug":"swift-for-xojo-developers-for-2026","posts_count":3,"reply_count":0,"highest_post_number":3,"image_url":null,"created_at":"2025-12-16T16:20:31.324Z","last_posted_at":"2025-12-17T20:54:12.130Z","bumped":true,"bumped_at":"2025-12-17T20:54:12.130Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":244,"like_count":10,"has_summary":false,"last_poster_username":"DaveS","category_id":21,"op_like_count":10,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":110,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Anyone good at creating Xcode Launch Screens for Swift?","id":4485,"title":"Anyone good at creating Xcode Launch Screens for Swift?","slug":"anyone-good-at-creating-xcode-launch-screens-for-swift","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":"https://ifnotnil.com/uploads/default/optimized/2X/f/f7770d240835b252ef210f295ab04a49e12e20d0_2_476x1024.png","created_at":"2025-11-03T17:12:45.507Z","last_posted_at":"2025-11-03T17:12:45.619Z","bumped":true,"bumped_at":"2025-11-03T17:12:45.619Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":86,"like_count":0,"has_summary":false,"last_poster_username":"DaveS","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":31,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Stop dragging entire Scene in iOS26","id":4484,"title":"Stop dragging entire Scene in iOS26","slug":"stop-dragging-entire-scene-in-ios26","posts_count":2,"reply_count":0,"highest_post_number":2,"image_url":null,"created_at":"2025-11-02T21:41:43.666Z","last_posted_at":"2025-11-02T22:26:21.721Z","bumped":true,"bumped_at":"2025-11-02T22:26:21.721Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":215,"like_count":2,"has_summary":false,"last_poster_username":"DaveS","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":true,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster, Accepted Answer","user_id":31,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Syntax Highlighting NSTextView for SWIFT macOS","id":4473,"title":"Syntax Highlighting NSTextView for SWIFT macOS","slug":"syntax-highlighting-nstextview-for-swift-macos","posts_count":13,"reply_count":10,"highest_post_number":13,"image_url":null,"created_at":"2025-10-15T21:40:02.783Z","last_posted_at":"2025-10-30T06:49:38.336Z","bumped":true,"bumped_at":"2025-10-30T06:49:38.336Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":454,"like_count":8,"has_summary":false,"last_poster_username":"thorstenstueker","category_id":21,"op_like_count":1,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":61,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":17,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":119,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Document-based SwiftUI app question about SwiftData","id":4458,"title":"Document-based SwiftUI app question about SwiftData","slug":"document-based-swiftui-app-question-about-swiftdata","posts_count":4,"reply_count":1,"highest_post_number":4,"image_url":null,"created_at":"2025-09-06T13:18:10.027Z","last_posted_at":"2025-09-07T07:23:20.341Z","bumped":true,"bumped_at":"2025-09-07T07:29:19.359Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":2,"name":"swift","slug":"swift"}],"tags_descriptions":{},"views":218,"like_count":1,"has_summary":false,"last_poster_username":"markus","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":178,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":49,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":253,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"SpriteKit is the bomb!","id":4441,"title":"SpriteKit is the bomb!","slug":"spritekit-is-the-bomb","posts_count":4,"reply_count":2,"highest_post_number":4,"image_url":null,"created_at":"2025-08-25T02:45:51.573Z","last_posted_at":"2025-08-25T21:07:02.546Z","bumped":true,"bumped_at":"2025-08-25T21:07:02.546Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":881,"like_count":8,"has_summary":false,"last_poster_username":"DaveS","category_id":21,"op_like_count":4,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":375,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":31,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Building Declarative UI using SWIFTUI","id":4440,"title":"Building Declarative UI using SWIFTUI","slug":"building-declarative-ui-using-swiftui","posts_count":7,"reply_count":1,"highest_post_number":7,"image_url":null,"created_at":"2025-08-22T19:08:52.828Z","last_posted_at":"2025-08-23T14:35:07.770Z","bumped":true,"bumped_at":"2025-08-23T14:35:07.770Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":319,"like_count":9,"has_summary":false,"last_poster_username":"Walter","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":375,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":178,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":253,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":71,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Missing Objects in NSWindow","id":4436,"title":"Missing Objects in NSWindow","slug":"missing-objects-in-nswindow","posts_count":5,"reply_count":3,"highest_post_number":5,"image_url":null,"created_at":"2025-08-17T14:57:03.688Z","last_posted_at":"2025-08-18T13:48:34.891Z","bumped":true,"bumped_at":"2025-08-18T13:48:34.891Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":159,"like_count":0,"has_summary":false,"last_poster_username":"DaveS","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":true,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster, Accepted Answer","user_id":31,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"SwiftUI equivalent of DesktopPagePanel","id":4408,"title":"SwiftUI equivalent of DesktopPagePanel","slug":"swiftui-equivalent-of-desktoppagepanel","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":null,"created_at":"2025-07-24T00:13:29.344Z","last_posted_at":"2025-07-24T04:48:22.165Z","bumped":true,"bumped_at":"2025-07-24T04:48:22.165Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":117,"like_count":3,"has_summary":false,"last_poster_username":"DaveS","category_id":21,"op_like_count":1,"pinned_globally":false,"featured_link":null,"has_accepted_answer":true,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":375,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster, Accepted Answer","user_id":49,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":31,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Device to Device File Transfer","id":4381,"title":"Device to Device File Transfer","slug":"device-to-device-file-transfer","posts_count":9,"reply_count":5,"highest_post_number":9,"image_url":null,"created_at":"2025-06-28T22:57:45.653Z","last_posted_at":"2025-06-29T18:09:23.474Z","bumped":true,"bumped_at":"2025-06-29T18:09:23.474Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":148,"like_count":0,"has_summary":false,"last_poster_username":"npalardy","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Compiled Executable Name","id":4366,"title":"Compiled Executable Name","slug":"compiled-executable-name","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":null,"created_at":"2025-06-07T19:44:48.528Z","last_posted_at":"2025-06-10T17:59:24.505Z","bumped":true,"bumped_at":"2025-06-10T17:59:24.505Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":127,"like_count":3,"has_summary":false,"last_poster_username":"Goeffie","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":true,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster, Accepted Answer","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":219,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"My recent experiences with Swift and SwiftUI","id":4280,"title":"My recent experiences with Swift and SwiftUI","slug":"my-recent-experiences-with-swift-and-swiftui","posts_count":29,"reply_count":22,"highest_post_number":29,"image_url":"https://ifnotnil.com/uploads/default/original/2X/6/62e7f903923b39b549c24791127bd27e24de441a.jpeg","created_at":"2025-03-04T02:03:36.108Z","last_posted_at":"2025-05-29T08:19:56.498Z","bumped":true,"bumped_at":"2025-05-29T08:19:56.498Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":2,"name":"swift","slug":"swift"},{"id":51,"name":"swiftui","slug":"swiftui"}],"tags_descriptions":{},"views":1214,"like_count":39,"has_summary":false,"last_poster_username":"DrScott","category_id":21,"op_like_count":9,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster","user_id":178,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":49,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":253,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":31,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Documentbased SwiftData apps Xcode 15-&gt;16","id":4302,"title":"Documentbased SwiftData apps Xcode 15->16","slug":"documentbased-swiftdata-apps-xcode-15-16","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":null,"created_at":"2025-04-02T10:32:40.610Z","last_posted_at":"2025-05-28T15:16:29.961Z","bumped":true,"bumped_at":"2025-05-28T15:16:29.961Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":178,"like_count":0,"has_summary":false,"last_poster_username":"npalardy","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":true,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster, Accepted Answer","user_id":253,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Quick Tip : Borderless Windows in Swift","id":4314,"title":"Quick Tip : Borderless Windows in Swift","slug":"quick-tip-borderless-windows-in-swift","posts_count":2,"reply_count":0,"highest_post_number":2,"image_url":null,"created_at":"2025-04-17T21:26:29.887Z","last_posted_at":"2025-04-18T03:06:38.814Z","bumped":true,"bumped_at":"2025-04-18T03:06:38.814Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":31,"name":"tutorials","slug":"tutorials"}],"tags_descriptions":{},"views":107,"like_count":0,"has_summary":false,"last_poster_username":"npalardy","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Swift : Custom Color Picker - COMMENTS?","id":4315,"title":"Swift : Custom Color Picker - COMMENTS?","slug":"swift-custom-color-picker-comments","posts_count":3,"reply_count":1,"highest_post_number":3,"image_url":"https://ifnotnil.com/uploads/default/optimized/2X/6/67d8bfe95cbf8f4848d027a798155bf9346d17fe_2_872x1024.png","created_at":"2025-04-17T22:38:49.111Z","last_posted_at":"2025-04-18T00:49:59.130Z","bumped":true,"bumped_at":"2025-04-18T00:49:59.130Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":2,"name":"swift","slug":"swift"}],"tags_descriptions":{},"views":91,"like_count":1,"has_summary":false,"last_poster_username":"DaveS","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":178,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"SwiftUI Favorite Button Constructor","id":4282,"title":"SwiftUI Favorite Button Constructor","slug":"swiftui-favorite-button-constructor","posts_count":4,"reply_count":0,"highest_post_number":4,"image_url":null,"created_at":"2025-03-06T04:36:59.856Z","last_posted_at":"2025-03-07T02:35:11.697Z","bumped":true,"bumped_at":"2025-03-07T02:35:11.697Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":51,"name":"swiftui","slug":"swiftui"}],"tags_descriptions":{},"views":141,"like_count":6,"has_summary":false,"last_poster_username":"samRowlands","category_id":21,"op_like_count":1,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster","user_id":49,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":253,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":245,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Swift Translator","id":4172,"title":"Swift Translator","slug":"swift-translator","posts_count":22,"reply_count":17,"highest_post_number":22,"image_url":null,"created_at":"2024-11-10T00:46:34.603Z","last_posted_at":"2024-12-05T21:41:17.895Z","bumped":true,"bumped_at":"2024-12-05T21:41:17.895Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":369,"like_count":4,"has_summary":false,"last_poster_username":"npalardy","category_id":21,"op_like_count":4,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":67,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":253,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":285,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Draw a line on an NSWINDOW","id":4181,"title":"Draw a line on an NSWINDOW","slug":"draw-a-line-on-an-nswindow","posts_count":7,"reply_count":2,"highest_post_number":7,"image_url":null,"created_at":"2024-11-20T19:34:23.592Z","last_posted_at":"2024-11-21T16:23:05.513Z","bumped":true,"bumped_at":"2024-11-21T16:23:05.513Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":146,"like_count":2,"has_summary":false,"last_poster_username":"DaveS","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":true,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster, Accepted Answer","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":202,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Swift macOS MouseMove","id":4149,"title":"Swift macOS MouseMove","slug":"swift-macos-mousemove","posts_count":4,"reply_count":1,"highest_post_number":4,"image_url":null,"created_at":"2024-10-19T22:37:51.871Z","last_posted_at":"2024-10-22T16:11:08.750Z","bumped":true,"bumped_at":"2024-10-22T16:11:08.750Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":209,"like_count":2,"has_summary":false,"last_poster_username":"DaveS","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":true,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster, Accepted Answer","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":49,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"GameController JoyStick","id":4036,"title":"GameController JoyStick","slug":"gamecontroller-joystick","posts_count":10,"reply_count":4,"highest_post_number":14,"image_url":"https://ifnotnil.com/uploads/default/original/2X/d/db38166b4d7ceb864baca4ca8884da90ad68e826.png","created_at":"2024-07-15T22:05:46.431Z","last_posted_at":"2024-07-17T07:01:17.424Z","bumped":true,"bumped_at":"2024-07-17T07:01:17.424Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":182,"like_count":2,"has_summary":false,"last_poster_username":"thorstenstueker","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":3,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":6,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":328,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":119,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"How best to navigate a &ldquo;long&rdquo; listbox [table]","id":3941,"title":"How best to navigate a \"long\" listbox [table]","slug":"how-best-to-navigate-a-long-listbox-table","posts_count":27,"reply_count":19,"highest_post_number":27,"image_url":"https://ifnotnil.com/uploads/default/optimized/2X/0/0045216681cd31451679009ce8f851a814c8a915_2_1024x576.jpeg","created_at":"2024-04-15T00:41:31.583Z","last_posted_at":"2024-04-18T23:21:38.530Z","bumped":true,"bumped_at":"2024-04-18T23:21:38.530Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[],"tags_descriptions":{},"views":426,"like_count":1,"has_summary":false,"last_poster_username":"DaveS","category_id":21,"op_like_count":0,"pinned_globally":false,"featured_link":null,"has_accepted_answer":true,"can_vote":false,"posters":[{"extras":"latest","description":"Original Poster, Most Recent Poster, Accepted Answer","user_id":31,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":3,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":260,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":280,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"Swift Server Meetup 24 April - the agenda is here","id":3928,"title":"Swift Server Meetup 24 April - the agenda is here","slug":"swift-server-meetup-24-april-the-agenda-is-here","posts_count":1,"reply_count":0,"highest_post_number":1,"image_url":null,"created_at":"2024-04-07T16:54:12.742Z","last_posted_at":"2024-04-07T16:54:12.835Z","bumped":true,"bumped_at":"2024-04-07T16:54:12.835Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":54,"name":"server","slug":"server"}],"tags_descriptions":{},"views":119,"like_count":1,"has_summary":false,"last_poster_username":"Torsten_B","category_id":21,"op_like_count":1,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":"latest single","description":"Original Poster, Most Recent Poster","user_id":245,"primary_group_id":null,"flair_group_id":null}]},{"fancy_title":"SwiftUI for Web development","id":3906,"title":"SwiftUI for Web development","slug":"swiftui-for-web-development","posts_count":22,"reply_count":17,"highest_post_number":22,"image_url":null,"created_at":"2024-03-26T13:52:48.594Z","last_posted_at":"2024-04-02T21:25:37.159Z","bumped":true,"bumped_at":"2024-04-02T21:25:37.159Z","archetype":"regular","unseen":false,"pinned":false,"unpinned":null,"visible":true,"closed":false,"archived":false,"bookmarked":null,"liked":null,"tags":[{"id":51,"name":"swiftui","slug":"swiftui"}],"tags_descriptions":{},"views":764,"like_count":9,"has_summary":false,"last_poster_username":"thorstenstueker","category_id":21,"op_like_count":1,"pinned_globally":false,"featured_link":null,"has_accepted_answer":false,"can_vote":false,"posters":[{"extras":null,"description":"Original Poster","user_id":49,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":214,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Frequent Poster","user_id":187,"primary_group_id":null,"flair_group_id":null},{"extras":null,"description":"Recent Poster","user_id":2,"primary_group_id":null,"flair_group_id":null},{"extras":"latest","description":"Most Recent Poster","user_id":119,"primary_group_id":null,"flair_group_id":null}]}]}}