{"id":32673,"date":"2024-11-01T09:10:45","date_gmt":"2024-11-01T09:10:45","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=32673"},"modified":"2024-11-01T11:24:55","modified_gmt":"2024-11-01T11:24:55","slug":"swift-uikit-style-iphone-app-development-adding-swipe-functionality-to-gallery-app","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/32673\/","title":{"rendered":"Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App"},"content":{"rendered":"<p><body><\/p>\n<h2>1. Introduction<\/h2>\n<p>\n        One way to enhance user experience (UX) in modern mobile app development is to include intuitive UI design and smooth user interactions.<br \/>\n        This article will detail how to create a gallery app using the UIKIT framework in the iOS app development process with the Swift language.<br \/>\n        Specifically, we will add an image swipe feature to the app, allowing users to interact with the content more engagingly.\n    <\/p>\n<h2>2. Introduction to Swift and UIKIT<\/h2>\n<p>\n        Swift is a programming language developed by Apple and is widely used for developing iOS and macOS apps.<br \/>\n        UIKIT is a framework that provides various classes necessary for constructing the user interface of iOS apps.<br \/>\n        Thanks to UIKIT, developers can easily create and manage various UI elements such as buttons, labels, and images.<br \/>\n        Combining these two enables efficient app development.\n    <\/p>\n<h2>3. Basic Structure of the Gallery App<\/h2>\n<p>\n        The basic structure of the gallery app allows users to view a list of images and select a specific image to enlarge.<br \/>\n        The basic UI consists of the following elements:\n    <\/p>\n<ul>\n<li>UICollectionView to display a list of images<\/li>\n<li>UIImageView to display the selected image<\/li>\n<li>A gesture recognizer capable of recognizing swipe gestures<\/li>\n<\/ul>\n<h2>4. Project Setup<\/h2>\n<p>\n        Create a new project using Xcode. <br \/>\n        While creating the project, select the \u201cSingle View App\u201d template and set the language to Swift.<br \/>\n        This will provide the basic structure of an iOS app.\n    <\/p>\n<h2>5. Adding UI Components<\/h2>\n<p>\n        The following are the steps to add UI components for the gallery app.\n    <\/p>\n<h3>5.1. Setting up UICollectionView<\/h3>\n<p>\n        First, select UIViewController in the Storyboard and add UICollectionView.<br \/>\n        The UICollectionView will be used to display the list of images. <br \/>\n        Set the Delegate and DataSource of UICollectionView to the ViewController.<br \/>\n        Then, adjust the layout of the UICollectionView using AutoLayout.\n    <\/p>\n<pre>\n        <code>\n        class GalleryViewController: UIViewController, UICollectionViewDelegate, UICollectionViewDataSource {\n            @IBOutlet weak var collectionView: UICollectionView!\n            \n            var images: [UIImage] = [] \/\/ Array to store images\n            \n            override func viewDidLoad() {\n                super.viewDidLoad()\n                collectionView.delegate = self\n                collectionView.dataSource = self\n                loadImages() \/\/ Load images\n            }\n\n            func loadImages() {\n                \/\/ Code to add images to the array.\n                \/\/ Add .png image files to the project and include them here.\n                for i in 1...10 {\n                    if let image = UIImage(named: \"image\\(i)\") {\n                        images.append(image)\n                    }\n                }\n                collectionView.reloadData()\n            }\n\n            func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {\n                return images.count\n            }\n\n            func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {\n                let cell = collectionView.dequeueReusableCell(withReuseIdentifier: \"ImageCell\", for: indexPath) as! ImageCell\n                cell.imageView.image = images[indexPath.row]\n                return cell\n            }\n        }\n        <\/code>\n        <\/pre>\n<h3>5.2. Adding UIImageView<\/h3>\n<p>\n        To display the selected image, we add a UIImageView.<br \/>\n        This will be placed in a separate ViewController, allowing the image to be enlarged on that screen.<br \/>\n        When users select an image from the UICollectionView, the UIImageView is updated with the specific image.\n    <\/p>\n<pre>\n        <code>\n        class ImageViewController: UIViewController {\n            @IBOutlet weak var imageView: UIImageView!\n            var selectedImage: UIImage?\n\n            override func viewDidLoad() {\n                super.viewDidLoad()\n                imageView.image = selectedImage\n            }\n        }\n        <\/code>\n        <\/pre>\n<h2>6. Adding Swipe Gestures<\/h2>\n<p>\n        We add gesture recognizers to allow users to swipe to view the previous or next image. <br \/>\n        This will be implemented using UISwipeGestureRecognizer.<br \/>\n        When users swipe left or right on the image, the currently selected image will change, allowing for smooth transitions.\n    <\/p>\n<pre>\n        <code>\n        class ImageViewController: UIViewController {\n            \/\/ Existing code...\n\n            override func viewDidLoad() {\n                super.viewDidLoad()\n                imageView.image = selectedImage\n                setupGestureRecognizers()\n            }\n\n            private func setupGestureRecognizers() {\n                let leftSwipe = UISwipeGestureRecognizer(target: self, action: #selector(handleSwipe(_:)))\n                leftSwipe.direction = .left\n                imageView.addGestureRecognizer(leftSwipe)\n\n                let rightSwipe = UISwipeGestureRecognizer(target: self, action: #selector(handleSwipe(_:)))\n                rightSwipe.direction = .right\n                imageView.addGestureRecognizer(rightSwipe)\n                imageView.isUserInteractionEnabled = true \/\/ Enable user interaction\n            }\n\n            @objc private func handleSwipe(_ gesture: UISwipeGestureRecognizer) {\n                if gesture.direction == .left {\n                    \/\/ Switch to the next image\n                    showNextImage()\n                } else if gesture.direction == .right {\n                    \/\/ Switch to the previous image\n                    showPreviousImage()\n                }\n            }\n\n            private func showNextImage() {\n                \/\/ Logic to load the next image\n            }\n\n            private func showPreviousImage() {\n                \/\/ Logic to load the previous image\n            }\n        }\n        <\/code>\n        <\/pre>\n<h2>7. Implementing Image Transition Logic<\/h2>\n<p>\n        In the image transition logic, we will select the previous or next image based on the currently selected image.<br \/>\n        We will implement a way to store the current image index and access the image array based on this index.\n    <\/p>\n<pre>\n        <code>\n        class ImageViewController: UIViewController {\n            var currentIndex: Int = 0\n            \n            override func viewDidLoad() {\n                super.viewDidLoad()\n                imageView.image = selectedImage\n                currentIndex = images.firstIndex(of: selectedImage) ?? 0 \/\/ Set current index\n                setupGestureRecognizers()\n            }\n\n            private func showNextImage() {\n                if currentIndex < images.count - 1 {\n                    currentIndex += 1\n                    imageView.image = images[currentIndex]\n                }\n            }\n\n            private func showPreviousImage() {\n                if currentIndex > 0 {\n                    currentIndex -= 1\n                    imageView.image = images[currentIndex]\n                }\n            }\n        }\n        <\/code>\n        <\/pre>\n<h2>8. Final Testing and Running of the Gallery App<\/h2>\n<p>\n        After completing all development processes, run the gallery app on actual devices or simulators to test if it works properly.<br \/>\n        Check if the swipe functionality operates as expected and provides a smooth experience for users.<br \/>\n        If bugs or issues are found, conduct appropriate fix processes.\n    <\/p>\n<h2>9. Conclusion<\/h2>\n<p>\n        This article covered how to develop a gallery app using Swift and UIKIT,<br \/>\n        as well as the process of adding a simple image swipe feature.<br \/>\n        We examined the basic principles and implementation methods to provide an interface that allows users to easily explore multiple images.<br \/>\n        There is room for further improvement with various additional features to enhance the gallery app.\n    <\/p>\n<h2>10. Additional Considerations<\/h2>\n<p>\n        To further expand the functionality of the gallery app, various elements can be considered.<br \/>\n        For instance, adding features for image enlargement or sharing, or exploring methods to sync images with the cloud.<br \/>\n        There are also various ways to improve the design of the app to enhance user experience.\n    <\/p>\n<h2>In Conclusion<\/h2>\n<p>\n        App development using Swift and UIKIT is a complex task that requires not only creative thinking but also technical approaches and know-how.<br \/>\n        Through continuous learning and experience, improve your app development skills to create better apps.<br \/>\n        I hope this blog post will provide you with useful information.\n    <\/p>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"<p>1. Introduction One way to enhance user experience (UX) in modern mobile app development is to include intuitive UI design and smooth user interactions. This article will detail how to create a gallery app using the UIKIT framework in the iOS app development process with the Swift language. Specifically, we will add an image swipe &hellip; <a href=\"https:\/\/atmokpo.com\/w\/32673\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[127],"tags":[],"class_list":["post-32673","post","type-post","status-publish","format-standard","hentry","category-swift-iphone-app-development-uikit"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/atmokpo.com\/w\/32673\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"1. Introduction One way to enhance user experience (UX) in modern mobile app development is to include intuitive UI design and smooth user interactions. This article will detail how to create a gallery app using the UIKIT framework in the iOS app development process with the Swift language. Specifically, we will add an image swipe &hellip; \ub354 \ubcf4\uae30 &quot;Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/32673\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:10:45+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T11:24:55+00:00\" \/>\n<meta name=\"author\" content=\"root\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:site\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:label1\" content=\"\uae00\uc4f4\uc774\" \/>\n\t<meta name=\"twitter:data1\" content=\"root\" \/>\n\t<meta name=\"twitter:label2\" content=\"\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04\" \/>\n\t<meta name=\"twitter:data2\" content=\"4\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/atmokpo.com\/w\/32673\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/32673\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App\",\"datePublished\":\"2024-11-01T09:10:45+00:00\",\"dateModified\":\"2024-11-01T11:24:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/32673\/\"},\"wordCount\":637,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"articleSection\":[\"Swift iPhone app development (UIKit)\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/32673\/\",\"url\":\"https:\/\/atmokpo.com\/w\/32673\/\",\"name\":\"Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:10:45+00:00\",\"dateModified\":\"2024-11-01T11:24:55+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/32673\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/32673\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/32673\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\ud648\",\"item\":\"https:\/\/atmokpo.com\/w\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/atmokpo.com\/w\/#website\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/atmokpo.com\/w\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"contentUrl\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"width\":400,\"height\":400,\"caption\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\"},\"image\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/bebubo4\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\",\"name\":\"root\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"caption\":\"root\"},\"sameAs\":[\"http:\/\/atmokpo.com\/w\"],\"url\":\"https:\/\/atmokpo.com\/w\/author\/root\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/atmokpo.com\/w\/32673\/","og_locale":"ko_KR","og_type":"article","og_title":"Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"1. Introduction One way to enhance user experience (UX) in modern mobile app development is to include intuitive UI design and smooth user interactions. This article will detail how to create a gallery app using the UIKIT framework in the iOS app development process with the Swift language. Specifically, we will add an image swipe &hellip; \ub354 \ubcf4\uae30 \"Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App\"","og_url":"https:\/\/atmokpo.com\/w\/32673\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:10:45+00:00","article_modified_time":"2024-11-01T11:24:55+00:00","author":"root","twitter_card":"summary_large_image","twitter_creator":"@bebubo4","twitter_site":"@bebubo4","twitter_misc":{"\uae00\uc4f4\uc774":"root","\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04":"4\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/atmokpo.com\/w\/32673\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/32673\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App","datePublished":"2024-11-01T09:10:45+00:00","dateModified":"2024-11-01T11:24:55+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/32673\/"},"wordCount":637,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"articleSection":["Swift iPhone app development (UIKit)"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/32673\/","url":"https:\/\/atmokpo.com\/w\/32673\/","name":"Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:10:45+00:00","dateModified":"2024-11-01T11:24:55+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/32673\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/32673\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/32673\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\ud648","item":"https:\/\/atmokpo.com\/w\/en\/"},{"@type":"ListItem","position":2,"name":"Swift UIKIT Style, iPhone App Development, Adding Swipe Functionality to Gallery App"}]},{"@type":"WebSite","@id":"https:\/\/atmokpo.com\/w\/#website","url":"https:\/\/atmokpo.com\/w\/","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","description":"","publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/atmokpo.com\/w\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/atmokpo.com\/w\/#organization","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","url":"https:\/\/atmokpo.com\/w\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/","url":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","contentUrl":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","width":400,"height":400,"caption":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8"},"image":{"@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/bebubo4"]},{"@type":"Person","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7","name":"root","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","caption":"root"},"sameAs":["http:\/\/atmokpo.com\/w"],"url":"https:\/\/atmokpo.com\/w\/author\/root\/"}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/32673","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/comments?post=32673"}],"version-history":[{"count":1,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/32673\/revisions"}],"predecessor-version":[{"id":32674,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/32673\/revisions\/32674"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=32673"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=32673"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=32673"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}