{"id":1467,"date":"2023-09-18T20:11:58","date_gmt":"2023-09-18T20:11:58","guid":{"rendered":"https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/"},"modified":"2023-09-18T20:11:58","modified_gmt":"2023-09-18T20:11:58","slug":"the-ar-measuring-box-etsys-answer-to-big-tape-measure","status":"publish","type":"post","link":"https:\/\/dev95.site\/ar\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/","title":{"rendered":"<div>The AR Measuring Box: Etsy&#8217;s answer to Big Tape Measure<\/div>"},"content":{"rendered":"<div id=\"dev95-1227186409\" class=\"dev95-- dev95-entity-placement\"><script async=\"async\" data-cfasync=\"false\" src=\"https:\/\/pl27862732.profitableratecpmnetwork.com\/2ad7a50e0bbc23ac6801d7b77c501463\/invoke.js\"><\/script>\r\n<div id=\"container-2ad7a50e0bbc23ac6801d7b77c501463\"><\/div><\/div><div>\n<p>A little while ago, Etsy introduced a new feature in its iOS app that could place Etsy sellers&#8217; artwork on a user&#8217;s wall using Apple&#8217;s Augmented Reality (AR) tools. It let them visualize how a piece would look in their space, and even gave them an idea of its size options. When we launched the feature as a beta, it was only available in &#8220;wall art&#8221;-related categories, and after the initial rollout we were eager to expand it to work with more categories. <\/p>\n<p>What differentiates Etsy is the nature of our sellers\u2019 unique items. Our sellers create offerings that can be personalized in numbers of ways, and they often hand-make orders based on demand. Taking the same approach we did with wall art and attempting to show 3D models of millions of Etsy items \u2013 many of which could be further customized \u2013 would be a huge undertaking. Nevertheless, with inspiration from <a href=\"https:\/\/careers.etsy.com\/global\/en\/guiding-principles\">Etsy&#8217;s Guiding Principles<\/a>, we decided to dig deeper into the feature. What could we improve in the way it worked behind the scenes? What about it would make for a compelling extension into the rest of our vast marketplace?<\/p><div id=\"dev95-2943539203\" class=\"dev95- dev95-entity-placement\"><center>\r\n<script>\r\n  atOptions = {\r\n    'key' : '4ba6b6513c00e0ba76511f798ae56401',\r\n    'format' : 'iframe',\r\n    'height' : 50,\r\n    'width' : 320,\r\n    'params' : {}\r\n  };\r\n<\/script>\r\n<script src=\"https:\/\/www.highrevenueformat.com\/4ba6b6513c00e0ba76511f798ae56401\/invoke.js\"><\/script>\r\n\t<\/center><\/div>\n<p>We took steps to improve how we parse seller-provided data, and we used this data with Apple\u2019s AR technology to make it easy for Etsy users to understand the size and scale of an object they might want to buy. We decided we could make tape measures obsolete (or at least not quite as essential) for our home-decor shoppers by building an AR tool to let them visualize\u2013conveniently, accurately, and with minimal effort\u2013how an item would fit in their space.<\/p>\n<h3>Improving dimension parsing<\/h3>\n<p>In our <a href=\"https:\/\/codeascraft.com\/2020\/06\/23\/chaining-ios-machine-learning-computer-vision-and-augmented-reality-to-make-the-magical-real\/\">original post on the wall art experience<\/a>, we mentioned the complexity involved in doing things like inferring an item&#8217;s dimensions from text in its description. Etsy allows sellers to add data about dimensions in a structured way when they create a listing, but that wasn&#8217;t always the case, and some sellers still provide those details in places like the description or the item&#8217;s title. The solution was to create a <a href=\"https:\/\/en.wikipedia.org\/wiki\/Regular_expression\">regex<\/a>-based parser in the iOS App that would glean dimensions (width and height) by sifting through a small number of free-form fields\u2013title, description, customization information, overview\u2013looking for specific patterns. We were satisfied being able to catch most of the formats in which our sellers reported dimensions, handling variable positions of values and units (<code>3 in x 5 in vs 3 x 5 in<\/code>), different long and short names of units, special unit characters (\u2018, \u201c), and so on, in all the different languages that Etsy supports.<\/p>\n<p>Migrating our parsing functionality to the API backend was a first step towards making the AR measuring tool platform-independent, so we could bring it to our Android App as well. It would also be a help in development, since we could iterate improvements to our regex patterns faster outside the <a href=\"https:\/\/www.etsy.com\/codeascraft\/how-etsy-ships-apps?ref=codeascraft\">app release schedule<\/a>. And we\u2019d get more consistent dimensions because we&#8217;d be able to cache the results instead of having to parse them live on the client at each visit.<\/p>\n<p>We knew that an extended AR experience would need to reliably show our users size options for items that had them, so we prioritized the effort to parse out dimensions from variations in listings. We sanitized free-form text input fields that might contain dimensions\u2014inputs like title or description\u2014so that we could catch a wider range of formats. (Several different characters can be used to write quotation marks, used as shorthand for inches and feet, and we needed to handle special characters for new lines, fraction ligatures like \u00bd or \u00bc, etc.) Our regex pattern was split and updated so it could detect:<\/p>\n<ul>\n<li>Measurement units in plural forms (inches, feet, etc.);<\/li>\n<li>Incorrect spellings (e.g. &#8220;foots&#8221;);<\/li>\n<li>Localization of measurement units in the languages spoken by Etsy\u2019s users (&#8220;meters&#8221;, &#8220;metros&#8221;, and &#8220;m\u00e8tres&#8221; in English, Spanish, and French, respectively);<\/li>\n<li>Other formats in which dimensions are captured by sellers like dimensions with unit conversions in parentheses (e.g. <code>12 in x 12 in (30 cm x 30 cm)<\/code>) or with complex measurements in the imperial system (<code>3\u20196\u201d<\/code>).<\/li>\n<\/ul>\n<p>Making our dimension parsing more robust and bringing it server-side had several ancillary benefits. We were able to maintain the functionality of our iOS app while removing a lot of client-side code, even in Etsy\u2019s <a href=\"https:\/\/developer.apple.com\/app-clips\/\">App Clip<\/a>, where size is a matter of utmost importance. And though regex processing isn\u2019t that processor-intensive, the view feature performed better once we implemented server-side caching of parsed dimensions. We figured we could even take the parsing offline (rather than parsing every listing on every visit) by running a backfill process to store dimensions in our database and deliver them to the App along with item details.<\/p>\n<p>We found, thanks to decoupling our parser work from the App release cycle, that we were able to test hypotheses faster and iterate at a quicker pace. So we could proceed to some improvements that would have been quite resource-intensive if we had tried to implement them on the native app side. Sellers often provide dimensions in inconsistent units, for instance, or they might add the same data multiple times in different fields, when there are variations in properties like material or color. We worked out ways to de-duplicate this data during parsing, to minimize the number of size options we show users. (Though where we find dimensions that are specifically associated with variations, we make sure to retain them, since those will more directly correlate with offering prices.) And we made it possible to prioritize structured dimension data, where sellers have captured it in dedicated fields, as a more reliable source of truth than free-form parsing.<\/p>\n<h3>Measuring in 3D<\/h3>\n<h4>The box<\/h4>\n<p>With this new and improved dimension data coming to us from the server, we had to figure out the right way to present it in 3D in iOS. The display needed to be intuitive, so our users would know more or less at a glance what the tool was and how to interact with it. Ultimately, we decided to present a rectangular prism-type object scaled to the parsed dimensions we have for a given listing. <a href=\"https:\/\/developer.apple.com\/scenekit\/\">Apple&#8217;s SceneKit framework<\/a> \u2013 specifically its SCNBox class \u2013 is what creates this box, which of course we style with the Etsy Orange look. So that users understand the box&#8217;s purpose, we make sure to display the length on each side. We use SceneKit&#8217;s SCNNode class to create the pills displaying our measurements.<\/p>\n<div align=\"center\"><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/i.etsystatic.com\/inv\/1e68db\/5342416361\/inv_fullxfull.5342416361_dh5zp24h.jpg?w=300&#038;ssl=1\" alt=\"An orange rectangular prism placed in between furniture with measurements shown on each edge of the prism\" ><\/div>\n<p> Users drag or tap the measuring box to move it around, and it can rotate on all axes \u2013 all made possible by having a different animation for each type of rotation using SCNActions. Rotation is a must-have feature: when we place the measuring box in a user&#8217;s space, we may not always be able to get the orientation correct. We might, as in the illustration below, place a side table vertically on the floor instead of horizontally. Our users would have a poor experience of the measuring tool if they couldn&#8217;t adjust for that. (Note that you may see some blinking yellow dots when you try out the AR experience: these are called feature points, and they&#8217;re useful for debugging, to give us an idea of what surfaces are successfully being detected.)<\/p>\n<div align=\"center\">\n    <img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/media2.giphy.com\/media\/7azdqVEhSRGCthLpob\/giphy.gif?w=300&#038;ssl=1\" alt=\"Tall measuring box placed on the grown that is showing the size of the item (a chest of drawers shown on the top left in a small ). The user taps on an arrow to flip the box so that it is horizontal, matching the shape of the chest of drawers.\" >\n<\/div>\n<p><\/p>\n<h4>Environment occlusion<\/h4>\n<p>In addition to ensuring the box would be scaled correctly, we wanted it to  &#8220;sit&#8221; as realistically as possible in the real world, so we built in <a href=\"https:\/\/developer.apple.com\/documentation\/arkit\/content_anchors\/visualizing_and_interacting_with_a_reconstructed_scene?language=objc\">scene occlusion<\/a>. When a user places the measuring box in a room with other furniture, scene occlusion lets it interact with real-life objects as if the box were actually there. Users get valuable information this way about how an item will fit in their space. Will that end table go between the wall and couch? Will it be tall enough to be visible from behind the couch? (As demonstrated below, the table will indeed be tall enough.)<\/p>\n<div align=\"center\">\n       <img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/i.etsystatic.com\/inv\/ea3000\/5294262044\/inv_fullxfull.5294262044_t18b2i0j.jpg?w=300&#038;ssl=1\" alt=\"Measuring box placed behind couch. Only the top of the box is visible as the rest is being occluded by the couch.\" >\n<\/div>\n<p>\nEnvironment occlusion became a possibility with <a href=\"https:\/\/en.wikipedia.org\/wiki\/Lidar\">LiDAR<\/a>, a method of determining depth using laser light. Although LiDAR has been around for a few decades, used to map everything from archeological sites to agricultural fields, Apple only included LiDAR scanners in iPhones and iPads beginning in 2020, with the 4th-generation iPad Pro and the iPhone 12 Pro.<\/p>\n<p>An iPhone\u2019s LiDAR scanner retrieves depth information from the area it scans and converts it into a series of vertices which connect to form a mesh (or a surface). To add occlusion to our SpriteKit-backed AR feature, we convert the mesh into a 3D object and place it (invisibly to the user) in the environment shown on their phone. As the LiDAR scanner measures more of the environment, we have more meshes to convert into objects and place in 3D. The video below shows an AR session where for debugging purposes we assign a random color to the detected mesh objects. Each different colored outline shown over a real-world object represents a different mesh. Notice how, as we scan more of the room, the device adds more mesh objects as it continues drawing out the environment.<\/p>\n<div align=\"center\">\n    <img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/media0.giphy.com\/media\/bH2wThJwmV7XIXdD8c\/giphy.gif?w=300&#038;ssl=1\" alt=\"The desk and monitor shown become outlined in different colors. As the iPhone camera moves around to scan more of the room, more of the furniture becomes covered in colorful outlines.\" >\n<\/div>\n<p>\nThe user&#8217;s device uses these mesh objects to know when and how to occlude the measuring box. Essentially, these mesh objects help determine where the measuring box is relative to all the real-world items and surfaces it should respect. Taking advantage of occlusion gives our users an especially realistic AR experience. In the side-by-side comparison below, the video on the left shows how mesh objects found in the environment determine what part of the measuring box will be hidden as the camera moves in front of the desk. The video on the right shows the exact same thing, but with the mesh objects hidden. <\/p>\n<table>\n<thead>\n<tr>\n<th>Mesh objects are visible<\/th>\n<th>Mesh objects are hidden<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/media1.giphy.com\/media\/Ulo2PPWfPxLFcvkKs0\/giphy.gif?w=300&#038;ssl=1\" alt=\"The measuring box is placed under a desk. The desk, as well as the monitor, floor, and most of the environment are digitally covered in different colors. As the camera moves to the side of the desk, more of the box becomes occluded by the side of the desk.\" ><\/td>\n<td><img data-recalc-dims=\"1\" decoding=\"async\" src=\"https:\/\/i0.wp.com\/media1.giphy.com\/media\/R1waynZYyozQ5vxoJz\/giphy.gif?w=300&#038;ssl=1\" alt=\"The measuring box is placed under a desk similar to the previous video. As the camera moves to the side of the desk, more of the box becomes occluded by the side of the desk making it seem like the box is actually in the room.\" ><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Closing thoughts<\/h3>\n<p>This project took a 2D concept, our Wall View experience, and literally extended it into 3-dimensional space using Apple\u2019s newest AR tools. And though the preparatory work we did improving our dimension parser may not be anything to look at, without the consistency and accuracy of that parsed information this newly realistic and interactive tool would not have been possible. Nearly a million Etsy items now have real-size AR functionality added to them, viewed by tens of thousands of Etsy users every week. As our marketplace evolves and devices become more powerful, working on features like this only increases our appetite for more and brings us closer to providing our users with a marketplace that lets them make the most informed decision about their purchases effortlessly. <\/p>\n<p><em>Special shoutout to Jacob Van Order and Siri McClean as well as the rest of our team for their work on this.<\/em><\/p>\n<\/div>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_1467\" class=\"pvc_stats total_only\" data-element-id=\"1467\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" version=\"1.0\" viewbox=\"0 0 502 315\" preserveaspectratio=\"xMidYMid meet\"><g transform=\"translate(0,332) scale(0.1,-0.1)\" fill=\"\" stroke=\"none\"><path d=\"M2394 3279 l-29 -30 -3 -207 c-2 -182 0 -211 15 -242 39 -76 157 -76 196 0 15 31 17 60 15 243 l-3 209 -33 29 c-26 23 -41 29 -80 29 -41 0 -53 -5 -78 -31z\"\/><path d=\"M3085 3251 c-45 -19 -58 -50 -96 -229 -47 -217 -49 -260 -13 -295 52 -53 146 -42 177 20 16 31 87 366 87 410 0 70 -86 122 -155 94z\"\/><path d=\"M1751 3234 c-13 -9 -29 -31 -37 -50 -12 -29 -10 -49 21 -204 19 -94 39 -189 45 -210 14 -50 54 -80 110 -80 34 0 48 6 76 34 21 21 34 44 34 59 0 14 -18 113 -40 219 -37 178 -43 195 -70 221 -36 32 -101 37 -139 11z\"\/><path d=\"M1163 3073 c-36 -7 -73 -59 -73 -102 0 -56 133 -378 171 -413 34 -32 83 -37 129 -13 70 36 67 87 -16 290 -86 209 -89 214 -129 231 -35 14 -42 15 -82 7z\"\/><path d=\"M3689 3066 c-15 -9 -33 -30 -42 -48 -48 -103 -147 -355 -147 -375 0 -98 131 -148 192 -74 13 15 57 108 97 206 80 196 84 226 37 273 -30 30 -99 39 -137 18z\"\/><path d=\"M583 2784 c-38 -19 -67 -74 -58 -113 9 -42 211 -354 242 -373 16 -10 45 -18 66 -18 51 0 107 52 107 100 0 39 -1 41 -124 234 -80 126 -108 162 -133 173 -41 17 -61 16 -100 -3z\"\/><path d=\"M4250 2784 c-14 -9 -74 -91 -133 -183 -95 -150 -107 -173 -107 -213 0 -55 33 -94 87 -104 67 -13 90 8 211 198 130 202 137 225 78 284 -27 27 -42 34 -72 34 -22 0 -50 -8 -64 -16z\"\/><path d=\"M2275 2693 c-553 -48 -1095 -270 -1585 -649 -135 -104 -459 -423 -483 -476 -23 -49 -22 -139 2 -186 73 -142 361 -457 571 -626 285 -228 642 -407 990 -497 242 -63 336 -73 660 -74 310 0 370 5 595 52 535 111 1045 392 1455 803 122 121 250 273 275 326 19 41 19 137 0 174 -41 79 -309 363 -465 492 -447 370 -946 591 -1479 653 -113 14 -422 18 -536 8z m395 -428 c171 -34 330 -124 456 -258 112 -119 167 -219 211 -378 27 -96 24 -300 -5 -401 -72 -255 -236 -447 -474 -557 -132 -62 -201 -76 -368 -76 -167 0 -236 14 -368 76 -213 98 -373 271 -451 485 -162 444 86 934 547 1084 153 49 292 57 452 25z m909 -232 c222 -123 408 -262 593 -441 76 -74 138 -139 138 -144 0 -16 -233 -242 -330 -319 -155 -123 -309 -223 -461 -299 l-81 -41 32 46 c18 26 49 83 70 128 143 306 141 649 -6 957 -25 52 -61 116 -79 142 l-34 47 45 -20 c26 -10 76 -36 113 -56z m-2057 25 c-40 -58 -105 -190 -130 -263 -110 -324 -59 -707 132 -981 25 -35 42 -64 37 -64 -19 0 -241 119 -326 174 -188 122 -406 314 -532 468 l-58 71 108 103 c185 178 428 349 672 473 66 33 121 60 123 61 2 0 -10 -19 -26 -42z\"\/><path d=\"M2375 1950 c-198 -44 -350 -190 -395 -379 -18 -76 -8 -221 19 -290 114 -284 457 -406 731 -260 98 52 188 154 231 260 27 69 37 214 19 290 -38 163 -166 304 -326 360 -67 23 -215 33 -279 19z\"\/><\/g><\/svg><\/i> <img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/i0.wp.com\/dev95.site\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif?resize=16%2C16&#038;ssl=1\" border=\"0\" \/><\/p>\n<div class=\"pvc_clear\"><\/div>","protected":false},"excerpt":{"rendered":"<p>A little while ago, Etsy introduced a new feature in its iOS app that could place Etsy sellers&#8217; artwork on a user&#8217;s wall using Apple&#8217;s Augmented Reality (AR) tools. It let them visualize how a piece would look in their<\/p>\n<div class=\"hosteria-entry-more\"><a href=\"https:\/\/dev95.site\/ar\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/\" class=\"no-underline font-light  group-hover:text-primary-800 dark:group-hover:text-primary-300 py-1\">Read more &gt;&gt;&gt;<\/a><\/div>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_1467\" class=\"pvc_stats total_only\" data-element-id=\"1467\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" version=\"1.0\" viewbox=\"0 0 502 315\" preserveaspectratio=\"xMidYMid meet\"><g transform=\"translate(0,332) scale(0.1,-0.1)\" fill=\"\" stroke=\"none\"><path d=\"M2394 3279 l-29 -30 -3 -207 c-2 -182 0 -211 15 -242 39 -76 157 -76 196 0 15 31 17 60 15 243 l-3 209 -33 29 c-26 23 -41 29 -80 29 -41 0 -53 -5 -78 -31z\"\/><path d=\"M3085 3251 c-45 -19 -58 -50 -96 -229 -47 -217 -49 -260 -13 -295 52 -53 146 -42 177 20 16 31 87 366 87 410 0 70 -86 122 -155 94z\"\/><path d=\"M1751 3234 c-13 -9 -29 -31 -37 -50 -12 -29 -10 -49 21 -204 19 -94 39 -189 45 -210 14 -50 54 -80 110 -80 34 0 48 6 76 34 21 21 34 44 34 59 0 14 -18 113 -40 219 -37 178 -43 195 -70 221 -36 32 -101 37 -139 11z\"\/><path d=\"M1163 3073 c-36 -7 -73 -59 -73 -102 0 -56 133 -378 171 -413 34 -32 83 -37 129 -13 70 36 67 87 -16 290 -86 209 -89 214 -129 231 -35 14 -42 15 -82 7z\"\/><path d=\"M3689 3066 c-15 -9 -33 -30 -42 -48 -48 -103 -147 -355 -147 -375 0 -98 131 -148 192 -74 13 15 57 108 97 206 80 196 84 226 37 273 -30 30 -99 39 -137 18z\"\/><path d=\"M583 2784 c-38 -19 -67 -74 -58 -113 9 -42 211 -354 242 -373 16 -10 45 -18 66 -18 51 0 107 52 107 100 0 39 -1 41 -124 234 -80 126 -108 162 -133 173 -41 17 -61 16 -100 -3z\"\/><path d=\"M4250 2784 c-14 -9 -74 -91 -133 -183 -95 -150 -107 -173 -107 -213 0 -55 33 -94 87 -104 67 -13 90 8 211 198 130 202 137 225 78 284 -27 27 -42 34 -72 34 -22 0 -50 -8 -64 -16z\"\/><path d=\"M2275 2693 c-553 -48 -1095 -270 -1585 -649 -135 -104 -459 -423 -483 -476 -23 -49 -22 -139 2 -186 73 -142 361 -457 571 -626 285 -228 642 -407 990 -497 242 -63 336 -73 660 -74 310 0 370 5 595 52 535 111 1045 392 1455 803 122 121 250 273 275 326 19 41 19 137 0 174 -41 79 -309 363 -465 492 -447 370 -946 591 -1479 653 -113 14 -422 18 -536 8z m395 -428 c171 -34 330 -124 456 -258 112 -119 167 -219 211 -378 27 -96 24 -300 -5 -401 -72 -255 -236 -447 -474 -557 -132 -62 -201 -76 -368 -76 -167 0 -236 14 -368 76 -213 98 -373 271 -451 485 -162 444 86 934 547 1084 153 49 292 57 452 25z m909 -232 c222 -123 408 -262 593 -441 76 -74 138 -139 138 -144 0 -16 -233 -242 -330 -319 -155 -123 -309 -223 -461 -299 l-81 -41 32 46 c18 26 49 83 70 128 143 306 141 649 -6 957 -25 52 -61 116 -79 142 l-34 47 45 -20 c26 -10 76 -36 113 -56z m-2057 25 c-40 -58 -105 -190 -130 -263 -110 -324 -59 -707 132 -981 25 -35 42 -64 37 -64 -19 0 -241 119 -326 174 -188 122 -406 314 -532 468 l-58 71 108 103 c185 178 428 349 672 473 66 33 121 60 123 61 2 0 -10 -19 -26 -42z\"\/><path d=\"M2375 1950 c-198 -44 -350 -190 -395 -379 -18 -76 -8 -221 19 -290 114 -284 457 -406 731 -260 98 52 188 154 231 260 27 69 37 214 19 290 -38 163 -166 304 -326 360 -67 23 -215 33 -279 19z\"\/><\/g><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/dev95.site\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=\"0\" \/><\/p>\n<div class=\"pvc_clear\"><\/div>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fp_fajr_begins":"","fp_fajr_iqamah":"","fp_dhuhr_begins":"","fp_dhuhr_iqamah":"","fp_asr_begins":"","fp_asr_iqamah":"","fp_maghrib_begins":"","fp_maghrib_iqamah":"","fp_isha_begins":"","fp_isha_iqamah":"","fp_midnight":"","fp_midnight_name":"","fp_sunrise":"","fp_single_prayer_begins_title":"","fp_single_prayer_iqamah_title":"","fp_prayer_times_for_today":"","fp_hijra_date":"","fp_fajr_name":"","fp_dhuhr_name":"","fp_asr_name":"","fp_maghrib_name":"","fp_isha_name":"","fp_sunrise_name":"","fp_currentDate":"","fp_current_time":"","fp_current_title":"","fp_current_location":"","fp_masjid_name":"","fp_prayer_title":"","fp_next_prayer_iqamah_time":"","fp_next_prayer_iqamah_title":"","fp_next_prayer_begins_time":"","fp_next_prayer_begins_title":"","fp_next_prayer_title":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[37],"tags":[],"class_list":["post-1467","post","type-post","status-publish","format-standard","hentry","category-posts"],"a3_pvc":{"activated":true,"total_views":0,"today_views":0},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>The AR Measuring Box: Etsy&#039;s answer to Big Tape Measure - Dev95<\/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:\/\/dev95.site\/ar\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/\" \/>\n<meta property=\"og:locale\" content=\"ar_AR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The AR Measuring Box: Etsy&#039;s answer to Big Tape Measure - Dev95\" \/>\n<meta property=\"og:description\" content=\"A little while ago, Etsy introduced a new feature in its iOS app that could place Etsy sellers&#8217; artwork on a user&#8217;s wall using Apple&#8217;s Augmented Reality (AR) tools. It let them visualize how a piece would look in theirRead more &gt;&gt;&gt;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dev95.site\/ar\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/\" \/>\n<meta property=\"og:site_name\" content=\"Dev95\" \/>\n<meta property=\"article:published_time\" content=\"2023-09-18T20:11:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i.etsystatic.com\/inv\/1e68db\/5342416361\/inv_fullxfull.5342416361_dh5zp24h.jpg?version=0\" \/>\n<meta name=\"author\" content=\"dev95\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u0643\u064f\u062a\u0628 \u0628\u0648\u0627\u0633\u0637\u0629\" \/>\n\t<meta name=\"twitter:data1\" content=\"dev95\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u0648\u0642\u062a \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0627\u0644\u0645\u064f\u0642\u062f\u0651\u0631\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 \u062f\u0642\u0627\u0626\u0642\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/dev95.site\\\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\\\/\"},\"author\":{\"name\":\"dev95\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#\\\/schema\\\/person\\\/b807805ffe2916206b04d0938bce0298\"},\"headline\":\"The AR Measuring Box: Etsy&#8217;s answer to Big Tape Measure\",\"datePublished\":\"2023-09-18T20:11:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\\\/\"},\"wordCount\":1779,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i.etsystatic.com\\\/inv\\\/1e68db\\\/5342416361\\\/inv_fullxfull.5342416361_dh5zp24h.jpg?version=0\",\"articleSection\":[\"Posts\"],\"inLanguage\":\"ar\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/dev95.site\\\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/dev95.site\\\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\\\/\",\"url\":\"https:\\\/\\\/dev95.site\\\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\\\/\",\"name\":\"The AR Measuring Box: Etsy's answer to Big Tape Measure - Dev95\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i.etsystatic.com\\\/inv\\\/1e68db\\\/5342416361\\\/inv_fullxfull.5342416361_dh5zp24h.jpg?version=0\",\"datePublished\":\"2023-09-18T20:11:58+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\\\/#breadcrumb\"},\"inLanguage\":\"ar\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/dev95.site\\\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ar\",\"@id\":\"https:\\\/\\\/dev95.site\\\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i.etsystatic.com\\\/inv\\\/1e68db\\\/5342416361\\\/inv_fullxfull.5342416361_dh5zp24h.jpg?version=0\",\"contentUrl\":\"https:\\\/\\\/i.etsystatic.com\\\/inv\\\/1e68db\\\/5342416361\\\/inv_fullxfull.5342416361_dh5zp24h.jpg?version=0\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/dev95.site\\\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/dev95.site\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"The AR Measuring Box: Etsy&#8217;s answer to Big Tape Measure\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#website\",\"url\":\"https:\\\/\\\/dev95.site\\\/\",\"name\":\"Dev95\",\"description\":\"A comprehensive platform for data and knowledge, delivering reliable content that meets the aspirations of readers and enthusiasts.\",\"publisher\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/dev95.site\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ar\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#organization\",\"name\":\"Dev95\",\"url\":\"https:\\\/\\\/dev95.site\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ar\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/dev95.site\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/rbrrbr-6.png?fit=512%2C512&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/dev95.site\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/rbrrbr-6.png?fit=512%2C512&ssl=1\",\"width\":512,\"height\":512,\"caption\":\"Dev95\"},\"image\":{\"@id\":\"https:\\\/\\\/dev95.site\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/dev95.site\\\/#\\\/schema\\\/person\\\/b807805ffe2916206b04d0938bce0298\",\"name\":\"dev95\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ar\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g\",\"caption\":\"dev95\"},\"url\":\"https:\\\/\\\/dev95.site\\\/ar\\\/author\\\/mohammad\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"The AR Measuring Box: Etsy's answer to Big Tape Measure - Dev95","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:\/\/dev95.site\/ar\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/","og_locale":"ar_AR","og_type":"article","og_title":"The AR Measuring Box: Etsy's answer to Big Tape Measure - Dev95","og_description":"A little while ago, Etsy introduced a new feature in its iOS app that could place Etsy sellers&#8217; artwork on a user&#8217;s wall using Apple&#8217;s Augmented Reality (AR) tools. It let them visualize how a piece would look in theirRead more &gt;&gt;&gt;","og_url":"https:\/\/dev95.site\/ar\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/","og_site_name":"Dev95","article_published_time":"2023-09-18T20:11:58+00:00","og_image":[{"url":"https:\/\/i.etsystatic.com\/inv\/1e68db\/5342416361\/inv_fullxfull.5342416361_dh5zp24h.jpg?version=0","type":"","width":"","height":""}],"author":"dev95","twitter_card":"summary_large_image","twitter_misc":{"\u0643\u064f\u062a\u0628 \u0628\u0648\u0627\u0633\u0637\u0629":"dev95","\u0648\u0642\u062a \u0627\u0644\u0642\u0631\u0627\u0621\u0629 \u0627\u0644\u0645\u064f\u0642\u062f\u0651\u0631":"9 \u062f\u0642\u0627\u0626\u0642"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/#article","isPartOf":{"@id":"https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/"},"author":{"name":"dev95","@id":"https:\/\/dev95.site\/#\/schema\/person\/b807805ffe2916206b04d0938bce0298"},"headline":"The AR Measuring Box: Etsy&#8217;s answer to Big Tape Measure","datePublished":"2023-09-18T20:11:58+00:00","mainEntityOfPage":{"@id":"https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/"},"wordCount":1779,"commentCount":0,"publisher":{"@id":"https:\/\/dev95.site\/#organization"},"image":{"@id":"https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/#primaryimage"},"thumbnailUrl":"https:\/\/i.etsystatic.com\/inv\/1e68db\/5342416361\/inv_fullxfull.5342416361_dh5zp24h.jpg?version=0","articleSection":["Posts"],"inLanguage":"ar","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/","url":"https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/","name":"The AR Measuring Box: Etsy's answer to Big Tape Measure - Dev95","isPartOf":{"@id":"https:\/\/dev95.site\/#website"},"primaryImageOfPage":{"@id":"https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/#primaryimage"},"image":{"@id":"https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/#primaryimage"},"thumbnailUrl":"https:\/\/i.etsystatic.com\/inv\/1e68db\/5342416361\/inv_fullxfull.5342416361_dh5zp24h.jpg?version=0","datePublished":"2023-09-18T20:11:58+00:00","breadcrumb":{"@id":"https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/#breadcrumb"},"inLanguage":"ar","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/"]}]},{"@type":"ImageObject","inLanguage":"ar","@id":"https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/#primaryimage","url":"https:\/\/i.etsystatic.com\/inv\/1e68db\/5342416361\/inv_fullxfull.5342416361_dh5zp24h.jpg?version=0","contentUrl":"https:\/\/i.etsystatic.com\/inv\/1e68db\/5342416361\/inv_fullxfull.5342416361_dh5zp24h.jpg?version=0"},{"@type":"BreadcrumbList","@id":"https:\/\/dev95.site\/the-ar-measuring-box-etsys-answer-to-big-tape-measure\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dev95.site\/"},{"@type":"ListItem","position":2,"name":"The AR Measuring Box: Etsy&#8217;s answer to Big Tape Measure"}]},{"@type":"WebSite","@id":"https:\/\/dev95.site\/#website","url":"https:\/\/dev95.site\/","name":"Dev95","description":"A comprehensive platform for data and knowledge, delivering reliable content that meets the aspirations of readers and enthusiasts.","publisher":{"@id":"https:\/\/dev95.site\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dev95.site\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ar"},{"@type":"Organization","@id":"https:\/\/dev95.site\/#organization","name":"Dev95","url":"https:\/\/dev95.site\/","logo":{"@type":"ImageObject","inLanguage":"ar","@id":"https:\/\/dev95.site\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/dev95.site\/wp-content\/uploads\/2026\/07\/rbrrbr-6.png?fit=512%2C512&ssl=1","contentUrl":"https:\/\/i0.wp.com\/dev95.site\/wp-content\/uploads\/2026\/07\/rbrrbr-6.png?fit=512%2C512&ssl=1","width":512,"height":512,"caption":"Dev95"},"image":{"@id":"https:\/\/dev95.site\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/dev95.site\/#\/schema\/person\/b807805ffe2916206b04d0938bce0298","name":"dev95","image":{"@type":"ImageObject","inLanguage":"ar","@id":"https:\/\/secure.gravatar.com\/avatar\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a70a73d950838b20cd80d7ebdc955737e802e8cd896044c5473b32b946c0662a?s=96&d=mm&r=g","caption":"dev95"},"url":"https:\/\/dev95.site\/ar\/author\/mohammad\/"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/posts\/1467","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/comments?post=1467"}],"version-history":[{"count":0,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/posts\/1467\/revisions"}],"wp:attachment":[{"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/media?parent=1467"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/categories?post=1467"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dev95.site\/ar\/wp-json\/wp\/v2\/tags?post=1467"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}