designmd-forge 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (907) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +119 -0
  3. package/dist/__tests__/designStore.test.js +41 -0
  4. package/dist/__tests__/linter.test.js +23 -0
  5. package/dist/__tests__/sectionParser.test.js +60 -0
  6. package/dist/__tests__/server.test.js +129 -0
  7. package/dist/constants.js +12 -0
  8. package/dist/data/authoring-guide.md +113 -0
  9. package/dist/data/designs/airbnb.md +545 -0
  10. package/dist/data/designs/airtable.md +554 -0
  11. package/dist/data/designs/apple.md +562 -0
  12. package/dist/data/designs/binance.md +634 -0
  13. package/dist/data/designs/bmw-m.md +503 -0
  14. package/dist/data/designs/bmw.md +544 -0
  15. package/dist/data/designs/bugatti.md +454 -0
  16. package/dist/data/designs/cal.md +542 -0
  17. package/dist/data/designs/card-heavy.md +250 -0
  18. package/dist/data/designs/claude.md +589 -0
  19. package/dist/data/designs/clay.md +541 -0
  20. package/dist/data/designs/clickhouse.md +544 -0
  21. package/dist/data/designs/cohere.md +451 -0
  22. package/dist/data/designs/coinbase.md +570 -0
  23. package/dist/data/designs/composio.md +506 -0
  24. package/dist/data/designs/content-first.md +236 -0
  25. package/dist/data/designs/cursor.md +537 -0
  26. package/dist/data/designs/data-dashboard.md +300 -0
  27. package/dist/data/designs/dell-1996.md +632 -0
  28. package/dist/data/designs/elevenlabs.md +504 -0
  29. package/dist/data/designs/enterprise-neutral.md +252 -0
  30. package/dist/data/designs/expo.md +526 -0
  31. package/dist/data/designs/ferrari.md +531 -0
  32. package/dist/data/designs/figma.md +578 -0
  33. package/dist/data/designs/framer.md +544 -0
  34. package/dist/data/designs/hashicorp.md +575 -0
  35. package/dist/data/designs/hp.md +670 -0
  36. package/dist/data/designs/ibm.md +550 -0
  37. package/dist/data/designs/intercom.md +546 -0
  38. package/dist/data/designs/ios-acorns-android.md +430 -0
  39. package/dist/data/designs/ios-acorns-expo.md +381 -0
  40. package/dist/data/designs/ios-acorns-swiftui.md +378 -0
  41. package/dist/data/designs/ios-acorns.md +384 -0
  42. package/dist/data/designs/ios-airbnb-android.md +658 -0
  43. package/dist/data/designs/ios-airbnb-expo.md +457 -0
  44. package/dist/data/designs/ios-airbnb-swiftui.md +464 -0
  45. package/dist/data/designs/ios-airbnb.md +410 -0
  46. package/dist/data/designs/ios-alltrails-android.md +451 -0
  47. package/dist/data/designs/ios-alltrails-expo.md +400 -0
  48. package/dist/data/designs/ios-alltrails-swiftui.md +343 -0
  49. package/dist/data/designs/ios-alltrails.md +344 -0
  50. package/dist/data/designs/ios-amazon-android.md +686 -0
  51. package/dist/data/designs/ios-amazon-expo.md +433 -0
  52. package/dist/data/designs/ios-amazon-music-android.md +416 -0
  53. package/dist/data/designs/ios-amazon-music-expo.md +368 -0
  54. package/dist/data/designs/ios-amazon-music-swiftui.md +436 -0
  55. package/dist/data/designs/ios-amazon-music.md +389 -0
  56. package/dist/data/designs/ios-amazon-swiftui.md +460 -0
  57. package/dist/data/designs/ios-amazon.md +440 -0
  58. package/dist/data/designs/ios-apple-fitness-android.md +462 -0
  59. package/dist/data/designs/ios-apple-fitness-expo.md +373 -0
  60. package/dist/data/designs/ios-apple-fitness-swiftui.md +373 -0
  61. package/dist/data/designs/ios-apple-fitness.md +399 -0
  62. package/dist/data/designs/ios-apple-maps-android.md +646 -0
  63. package/dist/data/designs/ios-apple-maps-expo.md +557 -0
  64. package/dist/data/designs/ios-apple-maps-swiftui.md +588 -0
  65. package/dist/data/designs/ios-apple-maps.md +447 -0
  66. package/dist/data/designs/ios-apple-music-android.md +737 -0
  67. package/dist/data/designs/ios-apple-music-expo.md +596 -0
  68. package/dist/data/designs/ios-apple-music-swiftui.md +578 -0
  69. package/dist/data/designs/ios-apple-music.md +494 -0
  70. package/dist/data/designs/ios-apple-notes-android.md +675 -0
  71. package/dist/data/designs/ios-apple-notes-expo.md +468 -0
  72. package/dist/data/designs/ios-apple-notes-swiftui.md +489 -0
  73. package/dist/data/designs/ios-apple-notes.md +413 -0
  74. package/dist/data/designs/ios-apple-tv-android.md +405 -0
  75. package/dist/data/designs/ios-apple-tv-expo.md +341 -0
  76. package/dist/data/designs/ios-apple-tv-swiftui.md +348 -0
  77. package/dist/data/designs/ios-apple-tv.md +390 -0
  78. package/dist/data/designs/ios-apple-wallet-android.md +617 -0
  79. package/dist/data/designs/ios-apple-wallet-expo.md +487 -0
  80. package/dist/data/designs/ios-apple-wallet-swiftui.md +425 -0
  81. package/dist/data/designs/ios-apple-wallet.md +360 -0
  82. package/dist/data/designs/ios-asana-android.md +435 -0
  83. package/dist/data/designs/ios-asana-expo.md +411 -0
  84. package/dist/data/designs/ios-asana-swiftui.md +416 -0
  85. package/dist/data/designs/ios-asana.md +433 -0
  86. package/dist/data/designs/ios-audible-android.md +450 -0
  87. package/dist/data/designs/ios-audible-expo.md +328 -0
  88. package/dist/data/designs/ios-audible-swiftui.md +418 -0
  89. package/dist/data/designs/ios-audible.md +364 -0
  90. package/dist/data/designs/ios-bandcamp-android.md +471 -0
  91. package/dist/data/designs/ios-bandcamp-expo.md +378 -0
  92. package/dist/data/designs/ios-bandcamp-swiftui.md +374 -0
  93. package/dist/data/designs/ios-bandcamp.md +372 -0
  94. package/dist/data/designs/ios-bear-android.md +496 -0
  95. package/dist/data/designs/ios-bear-expo.md +449 -0
  96. package/dist/data/designs/ios-bear-swiftui.md +479 -0
  97. package/dist/data/designs/ios-bear.md +412 -0
  98. package/dist/data/designs/ios-bereal-android.md +392 -0
  99. package/dist/data/designs/ios-bereal-expo.md +299 -0
  100. package/dist/data/designs/ios-bereal-swiftui.md +319 -0
  101. package/dist/data/designs/ios-bereal.md +336 -0
  102. package/dist/data/designs/ios-binance-android.md +481 -0
  103. package/dist/data/designs/ios-binance-expo.md +404 -0
  104. package/dist/data/designs/ios-binance-swiftui.md +418 -0
  105. package/dist/data/designs/ios-binance.md +410 -0
  106. package/dist/data/designs/ios-bluesky-android.md +442 -0
  107. package/dist/data/designs/ios-bluesky-expo.md +362 -0
  108. package/dist/data/designs/ios-bluesky-swiftui.md +328 -0
  109. package/dist/data/designs/ios-bluesky.md +338 -0
  110. package/dist/data/designs/ios-booking-android.md +471 -0
  111. package/dist/data/designs/ios-booking-expo.md +364 -0
  112. package/dist/data/designs/ios-booking-swiftui.md +377 -0
  113. package/dist/data/designs/ios-booking.md +346 -0
  114. package/dist/data/designs/ios-bumble-android.md +756 -0
  115. package/dist/data/designs/ios-bumble-expo.md +629 -0
  116. package/dist/data/designs/ios-bumble-swiftui.md +546 -0
  117. package/dist/data/designs/ios-bumble.md +424 -0
  118. package/dist/data/designs/ios-cal-ai-android.md +664 -0
  119. package/dist/data/designs/ios-cal-ai-expo.md +415 -0
  120. package/dist/data/designs/ios-cal-ai-swiftui.md +486 -0
  121. package/dist/data/designs/ios-cal-ai.md +387 -0
  122. package/dist/data/designs/ios-calm-android.md +431 -0
  123. package/dist/data/designs/ios-calm-expo.md +384 -0
  124. package/dist/data/designs/ios-calm-swiftui.md +327 -0
  125. package/dist/data/designs/ios-calm.md +356 -0
  126. package/dist/data/designs/ios-canva-android.md +469 -0
  127. package/dist/data/designs/ios-canva-expo.md +374 -0
  128. package/dist/data/designs/ios-canva-swiftui.md +422 -0
  129. package/dist/data/designs/ios-canva.md +395 -0
  130. package/dist/data/designs/ios-cash-app-android.md +601 -0
  131. package/dist/data/designs/ios-cash-app-expo.md +453 -0
  132. package/dist/data/designs/ios-cash-app-swiftui.md +463 -0
  133. package/dist/data/designs/ios-cash-app.md +365 -0
  134. package/dist/data/designs/ios-character-ai-android.md +489 -0
  135. package/dist/data/designs/ios-character-ai-expo.md +420 -0
  136. package/dist/data/designs/ios-character-ai-swiftui.md +417 -0
  137. package/dist/data/designs/ios-character-ai.md +392 -0
  138. package/dist/data/designs/ios-charles-schwab-android.md +454 -0
  139. package/dist/data/designs/ios-charles-schwab-expo.md +388 -0
  140. package/dist/data/designs/ios-charles-schwab-swiftui.md +394 -0
  141. package/dist/data/designs/ios-charles-schwab.md +380 -0
  142. package/dist/data/designs/ios-chatgpt-android.md +753 -0
  143. package/dist/data/designs/ios-chatgpt-expo.md +644 -0
  144. package/dist/data/designs/ios-chatgpt-swiftui.md +653 -0
  145. package/dist/data/designs/ios-chatgpt.md +466 -0
  146. package/dist/data/designs/ios-chime-android.md +438 -0
  147. package/dist/data/designs/ios-chime-expo.md +419 -0
  148. package/dist/data/designs/ios-chime-swiftui.md +383 -0
  149. package/dist/data/designs/ios-chime.md +389 -0
  150. package/dist/data/designs/ios-chipotle-android.md +397 -0
  151. package/dist/data/designs/ios-chipotle-expo.md +301 -0
  152. package/dist/data/designs/ios-chipotle-swiftui.md +345 -0
  153. package/dist/data/designs/ios-chipotle.md +340 -0
  154. package/dist/data/designs/ios-citymapper-android.md +466 -0
  155. package/dist/data/designs/ios-citymapper-expo.md +420 -0
  156. package/dist/data/designs/ios-citymapper-swiftui.md +424 -0
  157. package/dist/data/designs/ios-citymapper.md +394 -0
  158. package/dist/data/designs/ios-claude-android.md +625 -0
  159. package/dist/data/designs/ios-claude-expo.md +671 -0
  160. package/dist/data/designs/ios-claude-swiftui.md +649 -0
  161. package/dist/data/designs/ios-claude.md +447 -0
  162. package/dist/data/designs/ios-clickup-android.md +484 -0
  163. package/dist/data/designs/ios-clickup-expo.md +423 -0
  164. package/dist/data/designs/ios-clickup-swiftui.md +416 -0
  165. package/dist/data/designs/ios-clickup.md +431 -0
  166. package/dist/data/designs/ios-clubhouse-android.md +524 -0
  167. package/dist/data/designs/ios-clubhouse-expo.md +425 -0
  168. package/dist/data/designs/ios-clubhouse-swiftui.md +447 -0
  169. package/dist/data/designs/ios-clubhouse.md +406 -0
  170. package/dist/data/designs/ios-coffee-meets-bagel-android.md +461 -0
  171. package/dist/data/designs/ios-coffee-meets-bagel-expo.md +372 -0
  172. package/dist/data/designs/ios-coffee-meets-bagel-swiftui.md +368 -0
  173. package/dist/data/designs/ios-coffee-meets-bagel.md +376 -0
  174. package/dist/data/designs/ios-coinbase-android.md +611 -0
  175. package/dist/data/designs/ios-coinbase-expo.md +500 -0
  176. package/dist/data/designs/ios-coinbase-swiftui.md +490 -0
  177. package/dist/data/designs/ios-coinbase.md +409 -0
  178. package/dist/data/designs/ios-copilot-android.md +625 -0
  179. package/dist/data/designs/ios-copilot-expo.md +423 -0
  180. package/dist/data/designs/ios-copilot-swiftui.md +471 -0
  181. package/dist/data/designs/ios-copilot.md +367 -0
  182. package/dist/data/designs/ios-craft-android.md +459 -0
  183. package/dist/data/designs/ios-craft-expo.md +417 -0
  184. package/dist/data/designs/ios-craft-swiftui.md +449 -0
  185. package/dist/data/designs/ios-craft.md +449 -0
  186. package/dist/data/designs/ios-crunchyroll-android.md +432 -0
  187. package/dist/data/designs/ios-crunchyroll-expo.md +388 -0
  188. package/dist/data/designs/ios-crunchyroll-swiftui.md +417 -0
  189. package/dist/data/designs/ios-crunchyroll.md +388 -0
  190. package/dist/data/designs/ios-crypto-com-android.md +461 -0
  191. package/dist/data/designs/ios-crypto-com-expo.md +404 -0
  192. package/dist/data/designs/ios-crypto-com-swiftui.md +419 -0
  193. package/dist/data/designs/ios-crypto-com.md +410 -0
  194. package/dist/data/designs/ios-deepseek-android.md +471 -0
  195. package/dist/data/designs/ios-deepseek-expo.md +391 -0
  196. package/dist/data/designs/ios-deepseek-swiftui.md +354 -0
  197. package/dist/data/designs/ios-deepseek.md +393 -0
  198. package/dist/data/designs/ios-deezer-android.md +475 -0
  199. package/dist/data/designs/ios-deezer-expo.md +400 -0
  200. package/dist/data/designs/ios-deezer-swiftui.md +430 -0
  201. package/dist/data/designs/ios-deezer.md +388 -0
  202. package/dist/data/designs/ios-deliveroo-android.md +493 -0
  203. package/dist/data/designs/ios-deliveroo-expo.md +424 -0
  204. package/dist/data/designs/ios-deliveroo-swiftui.md +398 -0
  205. package/dist/data/designs/ios-deliveroo.md +420 -0
  206. package/dist/data/designs/ios-delta-android.md +439 -0
  207. package/dist/data/designs/ios-delta-expo.md +381 -0
  208. package/dist/data/designs/ios-delta-swiftui.md +400 -0
  209. package/dist/data/designs/ios-delta.md +397 -0
  210. package/dist/data/designs/ios-discord-android.md +611 -0
  211. package/dist/data/designs/ios-discord-expo.md +618 -0
  212. package/dist/data/designs/ios-discord-swiftui.md +630 -0
  213. package/dist/data/designs/ios-discord.md +451 -0
  214. package/dist/data/designs/ios-disney-plus-android.md +464 -0
  215. package/dist/data/designs/ios-disney-plus-expo.md +358 -0
  216. package/dist/data/designs/ios-disney-plus-swiftui.md +412 -0
  217. package/dist/data/designs/ios-disney-plus.md +355 -0
  218. package/dist/data/designs/ios-dominos-android.md +417 -0
  219. package/dist/data/designs/ios-dominos-expo.md +316 -0
  220. package/dist/data/designs/ios-dominos-swiftui.md +340 -0
  221. package/dist/data/designs/ios-dominos.md +347 -0
  222. package/dist/data/designs/ios-doordash-android.md +527 -0
  223. package/dist/data/designs/ios-doordash-expo.md +323 -0
  224. package/dist/data/designs/ios-doordash-swiftui.md +301 -0
  225. package/dist/data/designs/ios-doordash.md +393 -0
  226. package/dist/data/designs/ios-dropbox-android.md +522 -0
  227. package/dist/data/designs/ios-dropbox-expo.md +393 -0
  228. package/dist/data/designs/ios-dropbox-swiftui.md +400 -0
  229. package/dist/data/designs/ios-dropbox.md +374 -0
  230. package/dist/data/designs/ios-duolingo-android.md +641 -0
  231. package/dist/data/designs/ios-duolingo-expo.md +597 -0
  232. package/dist/data/designs/ios-duolingo-swiftui.md +539 -0
  233. package/dist/data/designs/ios-duolingo.md +409 -0
  234. package/dist/data/designs/ios-ebay-android.md +436 -0
  235. package/dist/data/designs/ios-ebay-expo.md +344 -0
  236. package/dist/data/designs/ios-ebay-swiftui.md +308 -0
  237. package/dist/data/designs/ios-ebay.md +355 -0
  238. package/dist/data/designs/ios-espn-android.md +468 -0
  239. package/dist/data/designs/ios-espn-expo.md +387 -0
  240. package/dist/data/designs/ios-espn-swiftui.md +410 -0
  241. package/dist/data/designs/ios-espn.md +384 -0
  242. package/dist/data/designs/ios-etsy-android.md +439 -0
  243. package/dist/data/designs/ios-etsy-expo.md +351 -0
  244. package/dist/data/designs/ios-etsy-swiftui.md +296 -0
  245. package/dist/data/designs/ios-etsy.md +355 -0
  246. package/dist/data/designs/ios-evernote-android.md +419 -0
  247. package/dist/data/designs/ios-evernote-expo.md +379 -0
  248. package/dist/data/designs/ios-evernote-swiftui.md +380 -0
  249. package/dist/data/designs/ios-evernote.md +416 -0
  250. package/dist/data/designs/ios-expedia-android.md +451 -0
  251. package/dist/data/designs/ios-expedia-expo.md +433 -0
  252. package/dist/data/designs/ios-expedia-swiftui.md +399 -0
  253. package/dist/data/designs/ios-expedia.md +431 -0
  254. package/dist/data/designs/ios-facebook-android.md +628 -0
  255. package/dist/data/designs/ios-facebook-expo.md +471 -0
  256. package/dist/data/designs/ios-facebook-swiftui.md +459 -0
  257. package/dist/data/designs/ios-facebook.md +452 -0
  258. package/dist/data/designs/ios-feeld-android.md +431 -0
  259. package/dist/data/designs/ios-feeld-expo.md +379 -0
  260. package/dist/data/designs/ios-feeld-swiftui.md +401 -0
  261. package/dist/data/designs/ios-feeld.md +378 -0
  262. package/dist/data/designs/ios-fidelity-android.md +426 -0
  263. package/dist/data/designs/ios-fidelity-expo.md +396 -0
  264. package/dist/data/designs/ios-fidelity-swiftui.md +398 -0
  265. package/dist/data/designs/ios-fidelity.md +387 -0
  266. package/dist/data/designs/ios-figma-android.md +578 -0
  267. package/dist/data/designs/ios-figma-expo.md +504 -0
  268. package/dist/data/designs/ios-figma-swiftui.md +542 -0
  269. package/dist/data/designs/ios-figma.md +404 -0
  270. package/dist/data/designs/ios-fitbit-android.md +439 -0
  271. package/dist/data/designs/ios-fitbit-expo.md +389 -0
  272. package/dist/data/designs/ios-fitbit-swiftui.md +380 -0
  273. package/dist/data/designs/ios-fitbit.md +396 -0
  274. package/dist/data/designs/ios-flickr-android.md +506 -0
  275. package/dist/data/designs/ios-flickr-expo.md +434 -0
  276. package/dist/data/designs/ios-flickr-swiftui.md +421 -0
  277. package/dist/data/designs/ios-flickr.md +394 -0
  278. package/dist/data/designs/ios-flighty-android.md +418 -0
  279. package/dist/data/designs/ios-flighty-expo.md +353 -0
  280. package/dist/data/designs/ios-flighty-swiftui.md +337 -0
  281. package/dist/data/designs/ios-flighty.md +357 -0
  282. package/dist/data/designs/ios-flo-android.md +447 -0
  283. package/dist/data/designs/ios-flo-expo.md +363 -0
  284. package/dist/data/designs/ios-flo-swiftui.md +355 -0
  285. package/dist/data/designs/ios-flo.md +351 -0
  286. package/dist/data/designs/ios-garmin-connect-android.md +531 -0
  287. package/dist/data/designs/ios-garmin-connect-expo.md +429 -0
  288. package/dist/data/designs/ios-garmin-connect-swiftui.md +459 -0
  289. package/dist/data/designs/ios-garmin-connect.md +419 -0
  290. package/dist/data/designs/ios-gas-android.md +438 -0
  291. package/dist/data/designs/ios-gas-expo.md +350 -0
  292. package/dist/data/designs/ios-gas-swiftui.md +329 -0
  293. package/dist/data/designs/ios-gas.md +387 -0
  294. package/dist/data/designs/ios-gemini-android.md +568 -0
  295. package/dist/data/designs/ios-gemini-expo.md +416 -0
  296. package/dist/data/designs/ios-gemini-swiftui.md +424 -0
  297. package/dist/data/designs/ios-gemini.md +351 -0
  298. package/dist/data/designs/ios-github-android.md +507 -0
  299. package/dist/data/designs/ios-github-expo.md +486 -0
  300. package/dist/data/designs/ios-github-swiftui.md +459 -0
  301. package/dist/data/designs/ios-github.md +394 -0
  302. package/dist/data/designs/ios-gmail-android.md +548 -0
  303. package/dist/data/designs/ios-gmail-expo.md +457 -0
  304. package/dist/data/designs/ios-gmail-swiftui.md +470 -0
  305. package/dist/data/designs/ios-gmail.md +441 -0
  306. package/dist/data/designs/ios-goodreads-android.md +436 -0
  307. package/dist/data/designs/ios-goodreads-expo.md +407 -0
  308. package/dist/data/designs/ios-goodreads-swiftui.md +378 -0
  309. package/dist/data/designs/ios-goodreads.md +385 -0
  310. package/dist/data/designs/ios-google-calendar-android.md +565 -0
  311. package/dist/data/designs/ios-google-calendar-expo.md +616 -0
  312. package/dist/data/designs/ios-google-calendar-swiftui.md +585 -0
  313. package/dist/data/designs/ios-google-calendar.md +431 -0
  314. package/dist/data/designs/ios-google-maps-android.md +614 -0
  315. package/dist/data/designs/ios-google-maps-expo.md +515 -0
  316. package/dist/data/designs/ios-google-maps-swiftui.md +484 -0
  317. package/dist/data/designs/ios-google-maps.md +451 -0
  318. package/dist/data/designs/ios-grammarly-android.md +449 -0
  319. package/dist/data/designs/ios-grammarly-expo.md +383 -0
  320. package/dist/data/designs/ios-grammarly-swiftui.md +381 -0
  321. package/dist/data/designs/ios-grammarly.md +392 -0
  322. package/dist/data/designs/ios-grindr-android.md +494 -0
  323. package/dist/data/designs/ios-grindr-expo.md +358 -0
  324. package/dist/data/designs/ios-grindr-swiftui.md +357 -0
  325. package/dist/data/designs/ios-grindr.md +356 -0
  326. package/dist/data/designs/ios-grok-android.md +471 -0
  327. package/dist/data/designs/ios-grok-expo.md +388 -0
  328. package/dist/data/designs/ios-grok-swiftui.md +397 -0
  329. package/dist/data/designs/ios-grok.md +357 -0
  330. package/dist/data/designs/ios-groupme-android.md +551 -0
  331. package/dist/data/designs/ios-groupme-expo.md +442 -0
  332. package/dist/data/designs/ios-groupme-swiftui.md +439 -0
  333. package/dist/data/designs/ios-groupme.md +424 -0
  334. package/dist/data/designs/ios-grubhub-android.md +506 -0
  335. package/dist/data/designs/ios-grubhub-expo.md +428 -0
  336. package/dist/data/designs/ios-grubhub-swiftui.md +408 -0
  337. package/dist/data/designs/ios-grubhub.md +427 -0
  338. package/dist/data/designs/ios-happn-android.md +464 -0
  339. package/dist/data/designs/ios-happn-expo.md +411 -0
  340. package/dist/data/designs/ios-happn-swiftui.md +401 -0
  341. package/dist/data/designs/ios-happn.md +400 -0
  342. package/dist/data/designs/ios-headspace-android.md +688 -0
  343. package/dist/data/designs/ios-headspace-expo.md +574 -0
  344. package/dist/data/designs/ios-headspace-swiftui.md +498 -0
  345. package/dist/data/designs/ios-headspace.md +430 -0
  346. package/dist/data/designs/ios-hevy-android.md +473 -0
  347. package/dist/data/designs/ios-hevy-expo.md +405 -0
  348. package/dist/data/designs/ios-hevy-swiftui.md +367 -0
  349. package/dist/data/designs/ios-hevy.md +410 -0
  350. package/dist/data/designs/ios-hinge-android.md +743 -0
  351. package/dist/data/designs/ios-hinge-expo.md +580 -0
  352. package/dist/data/designs/ios-hinge-swiftui.md +512 -0
  353. package/dist/data/designs/ios-hinge.md +405 -0
  354. package/dist/data/designs/ios-hopper-android.md +440 -0
  355. package/dist/data/designs/ios-hopper-expo.md +353 -0
  356. package/dist/data/designs/ios-hopper-swiftui.md +340 -0
  357. package/dist/data/designs/ios-hopper.md +354 -0
  358. package/dist/data/designs/ios-hulu-android.md +435 -0
  359. package/dist/data/designs/ios-hulu-expo.md +331 -0
  360. package/dist/data/designs/ios-hulu-swiftui.md +374 -0
  361. package/dist/data/designs/ios-hulu.md +353 -0
  362. package/dist/data/designs/ios-iheartradio-android.md +481 -0
  363. package/dist/data/designs/ios-iheartradio-expo.md +417 -0
  364. package/dist/data/designs/ios-iheartradio-swiftui.md +423 -0
  365. package/dist/data/designs/ios-iheartradio.md +381 -0
  366. package/dist/data/designs/ios-imessage-android.md +426 -0
  367. package/dist/data/designs/ios-imessage-expo.md +384 -0
  368. package/dist/data/designs/ios-imessage-swiftui.md +378 -0
  369. package/dist/data/designs/ios-imessage.md +394 -0
  370. package/dist/data/designs/ios-instacart-android.md +471 -0
  371. package/dist/data/designs/ios-instacart-expo.md +349 -0
  372. package/dist/data/designs/ios-instacart-swiftui.md +378 -0
  373. package/dist/data/designs/ios-instacart.md +360 -0
  374. package/dist/data/designs/ios-instagram-android.md +646 -0
  375. package/dist/data/designs/ios-instagram-expo.md +310 -0
  376. package/dist/data/designs/ios-instagram-swiftui.md +333 -0
  377. package/dist/data/designs/ios-instagram.md +376 -0
  378. package/dist/data/designs/ios-jira-android.md +432 -0
  379. package/dist/data/designs/ios-jira-expo.md +375 -0
  380. package/dist/data/designs/ios-jira-swiftui.md +433 -0
  381. package/dist/data/designs/ios-jira.md +424 -0
  382. package/dist/data/designs/ios-kakaotalk-android.md +491 -0
  383. package/dist/data/designs/ios-kakaotalk-expo.md +418 -0
  384. package/dist/data/designs/ios-kakaotalk-swiftui.md +406 -0
  385. package/dist/data/designs/ios-kakaotalk.md +414 -0
  386. package/dist/data/designs/ios-kayak-android.md +466 -0
  387. package/dist/data/designs/ios-kayak-expo.md +407 -0
  388. package/dist/data/designs/ios-kayak-swiftui.md +426 -0
  389. package/dist/data/designs/ios-kayak.md +392 -0
  390. package/dist/data/designs/ios-kick-android.md +487 -0
  391. package/dist/data/designs/ios-kick-expo.md +434 -0
  392. package/dist/data/designs/ios-kick-swiftui.md +429 -0
  393. package/dist/data/designs/ios-kick.md +389 -0
  394. package/dist/data/designs/ios-kik-android.md +433 -0
  395. package/dist/data/designs/ios-kik-expo.md +363 -0
  396. package/dist/data/designs/ios-kik-swiftui.md +363 -0
  397. package/dist/data/designs/ios-kik.md +392 -0
  398. package/dist/data/designs/ios-kindle-android.md +439 -0
  399. package/dist/data/designs/ios-kindle-expo.md +356 -0
  400. package/dist/data/designs/ios-kindle-swiftui.md +372 -0
  401. package/dist/data/designs/ios-kindle.md +369 -0
  402. package/dist/data/designs/ios-klarna-android.md +420 -0
  403. package/dist/data/designs/ios-klarna-expo.md +349 -0
  404. package/dist/data/designs/ios-klarna-swiftui.md +360 -0
  405. package/dist/data/designs/ios-klarna.md +356 -0
  406. package/dist/data/designs/ios-lemon8-android.md +492 -0
  407. package/dist/data/designs/ios-lemon8-expo.md +413 -0
  408. package/dist/data/designs/ios-lemon8-swiftui.md +428 -0
  409. package/dist/data/designs/ios-lemon8.md +378 -0
  410. package/dist/data/designs/ios-life360-android.md +474 -0
  411. package/dist/data/designs/ios-life360-expo.md +375 -0
  412. package/dist/data/designs/ios-life360-swiftui.md +390 -0
  413. package/dist/data/designs/ios-life360.md +402 -0
  414. package/dist/data/designs/ios-line-android.md +517 -0
  415. package/dist/data/designs/ios-line-expo.md +402 -0
  416. package/dist/data/designs/ios-line-swiftui.md +361 -0
  417. package/dist/data/designs/ios-line.md +362 -0
  418. package/dist/data/designs/ios-linear-android.md +457 -0
  419. package/dist/data/designs/ios-linear-expo.md +367 -0
  420. package/dist/data/designs/ios-linear-swiftui.md +401 -0
  421. package/dist/data/designs/ios-linear.md +368 -0
  422. package/dist/data/designs/ios-linkedin-android.md +620 -0
  423. package/dist/data/designs/ios-linkedin-expo.md +469 -0
  424. package/dist/data/designs/ios-linkedin-swiftui.md +472 -0
  425. package/dist/data/designs/ios-linkedin.md +444 -0
  426. package/dist/data/designs/ios-locket-android.md +500 -0
  427. package/dist/data/designs/ios-locket-expo.md +375 -0
  428. package/dist/data/designs/ios-locket-swiftui.md +375 -0
  429. package/dist/data/designs/ios-locket.md +381 -0
  430. package/dist/data/designs/ios-lyft-android.md +406 -0
  431. package/dist/data/designs/ios-lyft-expo.md +333 -0
  432. package/dist/data/designs/ios-lyft-swiftui.md +315 -0
  433. package/dist/data/designs/ios-lyft.md +337 -0
  434. package/dist/data/designs/ios-marriott-bonvoy-android.md +488 -0
  435. package/dist/data/designs/ios-marriott-bonvoy-expo.md +412 -0
  436. package/dist/data/designs/ios-marriott-bonvoy-swiftui.md +461 -0
  437. package/dist/data/designs/ios-marriott-bonvoy.md +379 -0
  438. package/dist/data/designs/ios-mastodon-android.md +476 -0
  439. package/dist/data/designs/ios-mastodon-expo.md +379 -0
  440. package/dist/data/designs/ios-mastodon-swiftui.md +349 -0
  441. package/dist/data/designs/ios-mastodon.md +337 -0
  442. package/dist/data/designs/ios-match-android.md +496 -0
  443. package/dist/data/designs/ios-match-expo.md +393 -0
  444. package/dist/data/designs/ios-match-swiftui.md +450 -0
  445. package/dist/data/designs/ios-match.md +382 -0
  446. package/dist/data/designs/ios-max-android.md +454 -0
  447. package/dist/data/designs/ios-max-expo.md +342 -0
  448. package/dist/data/designs/ios-max-swiftui.md +332 -0
  449. package/dist/data/designs/ios-max.md +352 -0
  450. package/dist/data/designs/ios-mcdonalds-android.md +497 -0
  451. package/dist/data/designs/ios-mcdonalds-expo.md +382 -0
  452. package/dist/data/designs/ios-mcdonalds-swiftui.md +394 -0
  453. package/dist/data/designs/ios-mcdonalds.md +410 -0
  454. package/dist/data/designs/ios-messenger-android.md +523 -0
  455. package/dist/data/designs/ios-messenger-expo.md +379 -0
  456. package/dist/data/designs/ios-messenger-swiftui.md +369 -0
  457. package/dist/data/designs/ios-messenger.md +361 -0
  458. package/dist/data/designs/ios-microsoft-teams-android.md +446 -0
  459. package/dist/data/designs/ios-microsoft-teams-expo.md +362 -0
  460. package/dist/data/designs/ios-microsoft-teams-swiftui.md +384 -0
  461. package/dist/data/designs/ios-microsoft-teams.md +359 -0
  462. package/dist/data/designs/ios-midjourney-android.md +503 -0
  463. package/dist/data/designs/ios-midjourney-expo.md +406 -0
  464. package/dist/data/designs/ios-midjourney-swiftui.md +376 -0
  465. package/dist/data/designs/ios-midjourney.md +407 -0
  466. package/dist/data/designs/ios-miro-android.md +475 -0
  467. package/dist/data/designs/ios-miro-expo.md +421 -0
  468. package/dist/data/designs/ios-miro-swiftui.md +407 -0
  469. package/dist/data/designs/ios-miro.md +424 -0
  470. package/dist/data/designs/ios-monday-android.md +426 -0
  471. package/dist/data/designs/ios-monday-expo.md +382 -0
  472. package/dist/data/designs/ios-monday-swiftui.md +386 -0
  473. package/dist/data/designs/ios-monday.md +415 -0
  474. package/dist/data/designs/ios-monzo-android.md +423 -0
  475. package/dist/data/designs/ios-monzo-expo.md +391 -0
  476. package/dist/data/designs/ios-monzo-swiftui.md +371 -0
  477. package/dist/data/designs/ios-monzo.md +382 -0
  478. package/dist/data/designs/ios-myfitnesspal-android.md +631 -0
  479. package/dist/data/designs/ios-myfitnesspal-expo.md +489 -0
  480. package/dist/data/designs/ios-myfitnesspal-swiftui.md +500 -0
  481. package/dist/data/designs/ios-myfitnesspal.md +408 -0
  482. package/dist/data/designs/ios-netflix-android.md +570 -0
  483. package/dist/data/designs/ios-netflix-expo.md +528 -0
  484. package/dist/data/designs/ios-netflix-swiftui.md +543 -0
  485. package/dist/data/designs/ios-netflix.md +476 -0
  486. package/dist/data/designs/ios-nextdoor-android.md +399 -0
  487. package/dist/data/designs/ios-nextdoor-expo.md +317 -0
  488. package/dist/data/designs/ios-nextdoor-swiftui.md +343 -0
  489. package/dist/data/designs/ios-nextdoor.md +332 -0
  490. package/dist/data/designs/ios-nike-run-club-android.md +598 -0
  491. package/dist/data/designs/ios-nike-run-club-expo.md +459 -0
  492. package/dist/data/designs/ios-nike-run-club-swiftui.md +474 -0
  493. package/dist/data/designs/ios-nike-run-club.md +400 -0
  494. package/dist/data/designs/ios-noom-android.md +455 -0
  495. package/dist/data/designs/ios-noom-expo.md +362 -0
  496. package/dist/data/designs/ios-noom-swiftui.md +369 -0
  497. package/dist/data/designs/ios-noom.md +404 -0
  498. package/dist/data/designs/ios-notion-android.md +575 -0
  499. package/dist/data/designs/ios-notion-expo.md +543 -0
  500. package/dist/data/designs/ios-notion-swiftui.md +562 -0
  501. package/dist/data/designs/ios-notion.md +506 -0
  502. package/dist/data/designs/ios-nubank-android.md +447 -0
  503. package/dist/data/designs/ios-nubank-expo.md +391 -0
  504. package/dist/data/designs/ios-nubank-swiftui.md +391 -0
  505. package/dist/data/designs/ios-nubank.md +388 -0
  506. package/dist/data/designs/ios-obsidian-android.md +456 -0
  507. package/dist/data/designs/ios-obsidian-expo.md +401 -0
  508. package/dist/data/designs/ios-obsidian-swiftui.md +412 -0
  509. package/dist/data/designs/ios-obsidian.md +363 -0
  510. package/dist/data/designs/ios-okcupid-android.md +496 -0
  511. package/dist/data/designs/ios-okcupid-expo.md +378 -0
  512. package/dist/data/designs/ios-okcupid-swiftui.md +343 -0
  513. package/dist/data/designs/ios-okcupid.md +364 -0
  514. package/dist/data/designs/ios-opentable-android.md +426 -0
  515. package/dist/data/designs/ios-opentable-expo.md +350 -0
  516. package/dist/data/designs/ios-opentable-swiftui.md +328 -0
  517. package/dist/data/designs/ios-opentable.md +411 -0
  518. package/dist/data/designs/ios-oura-android.md +426 -0
  519. package/dist/data/designs/ios-oura-expo.md +353 -0
  520. package/dist/data/designs/ios-oura-swiftui.md +327 -0
  521. package/dist/data/designs/ios-oura.md +356 -0
  522. package/dist/data/designs/ios-overcast-android.md +508 -0
  523. package/dist/data/designs/ios-overcast-expo.md +420 -0
  524. package/dist/data/designs/ios-overcast-swiftui.md +427 -0
  525. package/dist/data/designs/ios-overcast.md +414 -0
  526. package/dist/data/designs/ios-pandora-android.md +477 -0
  527. package/dist/data/designs/ios-pandora-expo.md +406 -0
  528. package/dist/data/designs/ios-pandora-swiftui.md +413 -0
  529. package/dist/data/designs/ios-pandora.md +366 -0
  530. package/dist/data/designs/ios-panera-android.md +414 -0
  531. package/dist/data/designs/ios-panera-expo.md +352 -0
  532. package/dist/data/designs/ios-panera-swiftui.md +369 -0
  533. package/dist/data/designs/ios-panera.md +412 -0
  534. package/dist/data/designs/ios-paramount-plus-android.md +415 -0
  535. package/dist/data/designs/ios-paramount-plus-expo.md +363 -0
  536. package/dist/data/designs/ios-paramount-plus-swiftui.md +372 -0
  537. package/dist/data/designs/ios-paramount-plus.md +400 -0
  538. package/dist/data/designs/ios-paypal-android.md +535 -0
  539. package/dist/data/designs/ios-paypal-expo.md +429 -0
  540. package/dist/data/designs/ios-paypal-swiftui.md +466 -0
  541. package/dist/data/designs/ios-paypal.md +393 -0
  542. package/dist/data/designs/ios-peacock-android.md +453 -0
  543. package/dist/data/designs/ios-peacock-expo.md +393 -0
  544. package/dist/data/designs/ios-peacock-swiftui.md +420 -0
  545. package/dist/data/designs/ios-peacock.md +411 -0
  546. package/dist/data/designs/ios-peloton-android.md +470 -0
  547. package/dist/data/designs/ios-peloton-expo.md +401 -0
  548. package/dist/data/designs/ios-peloton-swiftui.md +409 -0
  549. package/dist/data/designs/ios-peloton.md +415 -0
  550. package/dist/data/designs/ios-perplexity-android.md +553 -0
  551. package/dist/data/designs/ios-perplexity-expo.md +703 -0
  552. package/dist/data/designs/ios-perplexity-swiftui.md +602 -0
  553. package/dist/data/designs/ios-perplexity.md +453 -0
  554. package/dist/data/designs/ios-pinterest-android.md +551 -0
  555. package/dist/data/designs/ios-pinterest-expo.md +466 -0
  556. package/dist/data/designs/ios-pinterest-swiftui.md +464 -0
  557. package/dist/data/designs/ios-pinterest.md +427 -0
  558. package/dist/data/designs/ios-plenty-of-fish-android.md +462 -0
  559. package/dist/data/designs/ios-plenty-of-fish-expo.md +380 -0
  560. package/dist/data/designs/ios-plenty-of-fish-swiftui.md +429 -0
  561. package/dist/data/designs/ios-plenty-of-fish.md +387 -0
  562. package/dist/data/designs/ios-plex-android.md +403 -0
  563. package/dist/data/designs/ios-plex-expo.md +333 -0
  564. package/dist/data/designs/ios-plex-swiftui.md +349 -0
  565. package/dist/data/designs/ios-plex.md +379 -0
  566. package/dist/data/designs/ios-pluto-tv-android.md +413 -0
  567. package/dist/data/designs/ios-pluto-tv-expo.md +379 -0
  568. package/dist/data/designs/ios-pluto-tv-swiftui.md +411 -0
  569. package/dist/data/designs/ios-pluto-tv.md +362 -0
  570. package/dist/data/designs/ios-pocket-casts-android.md +492 -0
  571. package/dist/data/designs/ios-pocket-casts-expo.md +430 -0
  572. package/dist/data/designs/ios-pocket-casts-swiftui.md +479 -0
  573. package/dist/data/designs/ios-pocket-casts.md +427 -0
  574. package/dist/data/designs/ios-postman-android.md +472 -0
  575. package/dist/data/designs/ios-postman-expo.md +372 -0
  576. package/dist/data/designs/ios-postman-swiftui.md +377 -0
  577. package/dist/data/designs/ios-postman.md +405 -0
  578. package/dist/data/designs/ios-prime-video-android.md +447 -0
  579. package/dist/data/designs/ios-prime-video-expo.md +365 -0
  580. package/dist/data/designs/ios-prime-video-swiftui.md +333 -0
  581. package/dist/data/designs/ios-prime-video.md +351 -0
  582. package/dist/data/designs/ios-quora-android.md +513 -0
  583. package/dist/data/designs/ios-quora-expo.md +362 -0
  584. package/dist/data/designs/ios-quora-swiftui.md +375 -0
  585. package/dist/data/designs/ios-quora.md +359 -0
  586. package/dist/data/designs/ios-raya-android.md +401 -0
  587. package/dist/data/designs/ios-raya-expo.md +366 -0
  588. package/dist/data/designs/ios-raya-swiftui.md +393 -0
  589. package/dist/data/designs/ios-raya.md +366 -0
  590. package/dist/data/designs/ios-reddit-android.md +605 -0
  591. package/dist/data/designs/ios-reddit-expo.md +553 -0
  592. package/dist/data/designs/ios-reddit-swiftui.md +514 -0
  593. package/dist/data/designs/ios-reddit.md +460 -0
  594. package/dist/data/designs/ios-resy-android.md +430 -0
  595. package/dist/data/designs/ios-resy-expo.md +344 -0
  596. package/dist/data/designs/ios-resy-swiftui.md +330 -0
  597. package/dist/data/designs/ios-resy.md +412 -0
  598. package/dist/data/designs/ios-revolut-android.md +433 -0
  599. package/dist/data/designs/ios-revolut-expo.md +379 -0
  600. package/dist/data/designs/ios-revolut-swiftui.md +372 -0
  601. package/dist/data/designs/ios-revolut.md +353 -0
  602. package/dist/data/designs/ios-robinhood-android.md +587 -0
  603. package/dist/data/designs/ios-robinhood-expo.md +416 -0
  604. package/dist/data/designs/ios-robinhood-swiftui.md +431 -0
  605. package/dist/data/designs/ios-robinhood.md +380 -0
  606. package/dist/data/designs/ios-runna-android.md +485 -0
  607. package/dist/data/designs/ios-runna-expo.md +388 -0
  608. package/dist/data/designs/ios-runna-swiftui.md +413 -0
  609. package/dist/data/designs/ios-runna.md +390 -0
  610. package/dist/data/designs/ios-shazam-android.md +436 -0
  611. package/dist/data/designs/ios-shazam-expo.md +348 -0
  612. package/dist/data/designs/ios-shazam-swiftui.md +394 -0
  613. package/dist/data/designs/ios-shazam.md +338 -0
  614. package/dist/data/designs/ios-signal-android.md +462 -0
  615. package/dist/data/designs/ios-signal-expo.md +361 -0
  616. package/dist/data/designs/ios-signal-swiftui.md +350 -0
  617. package/dist/data/designs/ios-signal.md +357 -0
  618. package/dist/data/designs/ios-skype-android.md +398 -0
  619. package/dist/data/designs/ios-skype-expo.md +368 -0
  620. package/dist/data/designs/ios-skype-swiftui.md +369 -0
  621. package/dist/data/designs/ios-skype.md +406 -0
  622. package/dist/data/designs/ios-skyscanner-android.md +451 -0
  623. package/dist/data/designs/ios-skyscanner-expo.md +423 -0
  624. package/dist/data/designs/ios-skyscanner-swiftui.md +419 -0
  625. package/dist/data/designs/ios-skyscanner.md +421 -0
  626. package/dist/data/designs/ios-slack-android.md +695 -0
  627. package/dist/data/designs/ios-slack-expo.md +601 -0
  628. package/dist/data/designs/ios-slack-swiftui.md +594 -0
  629. package/dist/data/designs/ios-slack.md +474 -0
  630. package/dist/data/designs/ios-sleep-cycle-android.md +436 -0
  631. package/dist/data/designs/ios-sleep-cycle-expo.md +380 -0
  632. package/dist/data/designs/ios-sleep-cycle-swiftui.md +409 -0
  633. package/dist/data/designs/ios-sleep-cycle.md +386 -0
  634. package/dist/data/designs/ios-snapchat-android.md +671 -0
  635. package/dist/data/designs/ios-snapchat-expo.md +528 -0
  636. package/dist/data/designs/ios-snapchat-swiftui.md +557 -0
  637. package/dist/data/designs/ios-snapchat.md +478 -0
  638. package/dist/data/designs/ios-sofi-android.md +446 -0
  639. package/dist/data/designs/ios-sofi-expo.md +387 -0
  640. package/dist/data/designs/ios-sofi-swiftui.md +379 -0
  641. package/dist/data/designs/ios-sofi.md +385 -0
  642. package/dist/data/designs/ios-soundcloud-android.md +488 -0
  643. package/dist/data/designs/ios-soundcloud-expo.md +364 -0
  644. package/dist/data/designs/ios-soundcloud-swiftui.md +399 -0
  645. package/dist/data/designs/ios-soundcloud.md +359 -0
  646. package/dist/data/designs/ios-southwest-android.md +446 -0
  647. package/dist/data/designs/ios-southwest-expo.md +389 -0
  648. package/dist/data/designs/ios-southwest-swiftui.md +405 -0
  649. package/dist/data/designs/ios-southwest.md +405 -0
  650. package/dist/data/designs/ios-spotify-android.md +427 -0
  651. package/dist/data/designs/ios-spotify-expo.md +321 -0
  652. package/dist/data/designs/ios-spotify-swiftui.md +312 -0
  653. package/dist/data/designs/ios-spotify.md +366 -0
  654. package/dist/data/designs/ios-starbucks-android.md +622 -0
  655. package/dist/data/designs/ios-starbucks-expo.md +497 -0
  656. package/dist/data/designs/ios-starbucks-swiftui.md +500 -0
  657. package/dist/data/designs/ios-starbucks.md +440 -0
  658. package/dist/data/designs/ios-strava-android.md +656 -0
  659. package/dist/data/designs/ios-strava-expo.md +501 -0
  660. package/dist/data/designs/ios-strava-swiftui.md +465 -0
  661. package/dist/data/designs/ios-strava.md +433 -0
  662. package/dist/data/designs/ios-strong-android.md +479 -0
  663. package/dist/data/designs/ios-strong-expo.md +396 -0
  664. package/dist/data/designs/ios-strong-swiftui.md +363 -0
  665. package/dist/data/designs/ios-strong.md +415 -0
  666. package/dist/data/designs/ios-substack-android.md +440 -0
  667. package/dist/data/designs/ios-substack-expo.md +395 -0
  668. package/dist/data/designs/ios-substack-swiftui.md +371 -0
  669. package/dist/data/designs/ios-substack.md +372 -0
  670. package/dist/data/designs/ios-swiggy-android.md +549 -0
  671. package/dist/data/designs/ios-swiggy-expo.md +443 -0
  672. package/dist/data/designs/ios-swiggy-swiftui.md +471 -0
  673. package/dist/data/designs/ios-swiggy.md +432 -0
  674. package/dist/data/designs/ios-taco-bell-android.md +529 -0
  675. package/dist/data/designs/ios-taco-bell-expo.md +407 -0
  676. package/dist/data/designs/ios-taco-bell-swiftui.md +419 -0
  677. package/dist/data/designs/ios-taco-bell.md +430 -0
  678. package/dist/data/designs/ios-telegram-android.md +676 -0
  679. package/dist/data/designs/ios-telegram-expo.md +594 -0
  680. package/dist/data/designs/ios-telegram-swiftui.md +518 -0
  681. package/dist/data/designs/ios-telegram.md +458 -0
  682. package/dist/data/designs/ios-the-league-android.md +454 -0
  683. package/dist/data/designs/ios-the-league-expo.md +391 -0
  684. package/dist/data/designs/ios-the-league-swiftui.md +409 -0
  685. package/dist/data/designs/ios-the-league.md +368 -0
  686. package/dist/data/designs/ios-things-3-android.md +421 -0
  687. package/dist/data/designs/ios-things-3-expo.md +351 -0
  688. package/dist/data/designs/ios-things-3-swiftui.md +359 -0
  689. package/dist/data/designs/ios-things-3.md +339 -0
  690. package/dist/data/designs/ios-threads-android.md +588 -0
  691. package/dist/data/designs/ios-threads-expo.md +468 -0
  692. package/dist/data/designs/ios-threads-swiftui.md +452 -0
  693. package/dist/data/designs/ios-threads.md +424 -0
  694. package/dist/data/designs/ios-threema-android.md +496 -0
  695. package/dist/data/designs/ios-threema-expo.md +415 -0
  696. package/dist/data/designs/ios-threema-swiftui.md +446 -0
  697. package/dist/data/designs/ios-threema.md +397 -0
  698. package/dist/data/designs/ios-tidal-android.md +398 -0
  699. package/dist/data/designs/ios-tidal-expo.md +323 -0
  700. package/dist/data/designs/ios-tidal-swiftui.md +340 -0
  701. package/dist/data/designs/ios-tidal.md +351 -0
  702. package/dist/data/designs/ios-tiktok-android.md +654 -0
  703. package/dist/data/designs/ios-tiktok-expo.md +578 -0
  704. package/dist/data/designs/ios-tiktok-swiftui.md +595 -0
  705. package/dist/data/designs/ios-tiktok.md +387 -0
  706. package/dist/data/designs/ios-tinder-android.md +681 -0
  707. package/dist/data/designs/ios-tinder-expo.md +512 -0
  708. package/dist/data/designs/ios-tinder-swiftui.md +497 -0
  709. package/dist/data/designs/ios-tinder.md +415 -0
  710. package/dist/data/designs/ios-todoist-android.md +711 -0
  711. package/dist/data/designs/ios-todoist-expo.md +607 -0
  712. package/dist/data/designs/ios-todoist-swiftui.md +573 -0
  713. package/dist/data/designs/ios-todoist.md +418 -0
  714. package/dist/data/designs/ios-trello-android.md +412 -0
  715. package/dist/data/designs/ios-trello-expo.md +332 -0
  716. package/dist/data/designs/ios-trello-swiftui.md +359 -0
  717. package/dist/data/designs/ios-trello.md +344 -0
  718. package/dist/data/designs/ios-tripadvisor-android.md +450 -0
  719. package/dist/data/designs/ios-tripadvisor-expo.md +322 -0
  720. package/dist/data/designs/ios-tripadvisor-swiftui.md +326 -0
  721. package/dist/data/designs/ios-tripadvisor.md +356 -0
  722. package/dist/data/designs/ios-tubi-android.md +453 -0
  723. package/dist/data/designs/ios-tubi-expo.md +419 -0
  724. package/dist/data/designs/ios-tubi-swiftui.md +463 -0
  725. package/dist/data/designs/ios-tubi.md +383 -0
  726. package/dist/data/designs/ios-tumblr-android.md +462 -0
  727. package/dist/data/designs/ios-tumblr-expo.md +374 -0
  728. package/dist/data/designs/ios-tumblr-swiftui.md +380 -0
  729. package/dist/data/designs/ios-tumblr.md +337 -0
  730. package/dist/data/designs/ios-turo-android.md +500 -0
  731. package/dist/data/designs/ios-turo-expo.md +454 -0
  732. package/dist/data/designs/ios-turo-swiftui.md +447 -0
  733. package/dist/data/designs/ios-turo.md +392 -0
  734. package/dist/data/designs/ios-twitch-android.md +412 -0
  735. package/dist/data/designs/ios-twitch-expo.md +342 -0
  736. package/dist/data/designs/ios-twitch-swiftui.md +328 -0
  737. package/dist/data/designs/ios-twitch.md +354 -0
  738. package/dist/data/designs/ios-uber-android.md +637 -0
  739. package/dist/data/designs/ios-uber-eats-android.md +502 -0
  740. package/dist/data/designs/ios-uber-eats-expo.md +407 -0
  741. package/dist/data/designs/ios-uber-eats-swiftui.md +393 -0
  742. package/dist/data/designs/ios-uber-eats.md +353 -0
  743. package/dist/data/designs/ios-uber-expo.md +512 -0
  744. package/dist/data/designs/ios-uber-swiftui.md +483 -0
  745. package/dist/data/designs/ios-uber.md +395 -0
  746. package/dist/data/designs/ios-united-airlines-android.md +494 -0
  747. package/dist/data/designs/ios-united-airlines-expo.md +408 -0
  748. package/dist/data/designs/ios-united-airlines-swiftui.md +453 -0
  749. package/dist/data/designs/ios-united-airlines.md +388 -0
  750. package/dist/data/designs/ios-venmo-android.md +654 -0
  751. package/dist/data/designs/ios-venmo-expo.md +458 -0
  752. package/dist/data/designs/ios-venmo-swiftui.md +469 -0
  753. package/dist/data/designs/ios-venmo.md +436 -0
  754. package/dist/data/designs/ios-vercel-android.md +454 -0
  755. package/dist/data/designs/ios-vercel-expo.md +387 -0
  756. package/dist/data/designs/ios-vercel-swiftui.md +374 -0
  757. package/dist/data/designs/ios-vercel.md +399 -0
  758. package/dist/data/designs/ios-vero-android.md +498 -0
  759. package/dist/data/designs/ios-vero-expo.md +376 -0
  760. package/dist/data/designs/ios-vero-swiftui.md +374 -0
  761. package/dist/data/designs/ios-vero.md +394 -0
  762. package/dist/data/designs/ios-viber-android.md +377 -0
  763. package/dist/data/designs/ios-viber-expo.md +375 -0
  764. package/dist/data/designs/ios-viber-swiftui.md +378 -0
  765. package/dist/data/designs/ios-viber.md +403 -0
  766. package/dist/data/designs/ios-vimeo-android.md +465 -0
  767. package/dist/data/designs/ios-vimeo-expo.md +347 -0
  768. package/dist/data/designs/ios-vimeo-swiftui.md +383 -0
  769. package/dist/data/designs/ios-vimeo.md +403 -0
  770. package/dist/data/designs/ios-vrbo-android.md +488 -0
  771. package/dist/data/designs/ios-vrbo-expo.md +395 -0
  772. package/dist/data/designs/ios-vrbo-swiftui.md +421 -0
  773. package/dist/data/designs/ios-vrbo.md +383 -0
  774. package/dist/data/designs/ios-vsco-android.md +490 -0
  775. package/dist/data/designs/ios-vsco-expo.md +413 -0
  776. package/dist/data/designs/ios-vsco-swiftui.md +449 -0
  777. package/dist/data/designs/ios-vsco.md +412 -0
  778. package/dist/data/designs/ios-walmart-android.md +479 -0
  779. package/dist/data/designs/ios-walmart-expo.md +370 -0
  780. package/dist/data/designs/ios-walmart-swiftui.md +387 -0
  781. package/dist/data/designs/ios-walmart.md +366 -0
  782. package/dist/data/designs/ios-waze-android.md +695 -0
  783. package/dist/data/designs/ios-waze-expo.md +587 -0
  784. package/dist/data/designs/ios-waze-swiftui.md +601 -0
  785. package/dist/data/designs/ios-waze.md +453 -0
  786. package/dist/data/designs/ios-webull-android.md +429 -0
  787. package/dist/data/designs/ios-webull-expo.md +384 -0
  788. package/dist/data/designs/ios-webull-swiftui.md +406 -0
  789. package/dist/data/designs/ios-webull.md +375 -0
  790. package/dist/data/designs/ios-wechat-android.md +545 -0
  791. package/dist/data/designs/ios-wechat-expo.md +398 -0
  792. package/dist/data/designs/ios-wechat-swiftui.md +394 -0
  793. package/dist/data/designs/ios-wechat.md +363 -0
  794. package/dist/data/designs/ios-whatsapp-android.md +568 -0
  795. package/dist/data/designs/ios-whatsapp-expo.md +502 -0
  796. package/dist/data/designs/ios-whatsapp-swiftui.md +483 -0
  797. package/dist/data/designs/ios-whatsapp.md +425 -0
  798. package/dist/data/designs/ios-whoop-android.md +635 -0
  799. package/dist/data/designs/ios-whoop-expo.md +562 -0
  800. package/dist/data/designs/ios-whoop-swiftui.md +553 -0
  801. package/dist/data/designs/ios-whoop.md +419 -0
  802. package/dist/data/designs/ios-wise-android.md +428 -0
  803. package/dist/data/designs/ios-wise-expo.md +357 -0
  804. package/dist/data/designs/ios-wise-swiftui.md +356 -0
  805. package/dist/data/designs/ios-wise.md +361 -0
  806. package/dist/data/designs/ios-x-twitter-android.md +618 -0
  807. package/dist/data/designs/ios-x-twitter-expo.md +442 -0
  808. package/dist/data/designs/ios-x-twitter-swiftui.md +429 -0
  809. package/dist/data/designs/ios-x-twitter.md +432 -0
  810. package/dist/data/designs/ios-yelp-android.md +455 -0
  811. package/dist/data/designs/ios-yelp-expo.md +397 -0
  812. package/dist/data/designs/ios-yelp-swiftui.md +369 -0
  813. package/dist/data/designs/ios-yelp.md +398 -0
  814. package/dist/data/designs/ios-youtube-android.md +668 -0
  815. package/dist/data/designs/ios-youtube-expo.md +435 -0
  816. package/dist/data/designs/ios-youtube-music-android.md +450 -0
  817. package/dist/data/designs/ios-youtube-music-expo.md +404 -0
  818. package/dist/data/designs/ios-youtube-music-swiftui.md +434 -0
  819. package/dist/data/designs/ios-youtube-music.md +381 -0
  820. package/dist/data/designs/ios-youtube-swiftui.md +496 -0
  821. package/dist/data/designs/ios-youtube.md +466 -0
  822. package/dist/data/designs/ios-zalo-android.md +510 -0
  823. package/dist/data/designs/ios-zalo-expo.md +389 -0
  824. package/dist/data/designs/ios-zalo-swiftui.md +431 -0
  825. package/dist/data/designs/ios-zalo.md +388 -0
  826. package/dist/data/designs/ios-zomato-android.md +527 -0
  827. package/dist/data/designs/ios-zomato-expo.md +437 -0
  828. package/dist/data/designs/ios-zomato-swiftui.md +433 -0
  829. package/dist/data/designs/ios-zomato.md +439 -0
  830. package/dist/data/designs/ios-zoom-android.md +423 -0
  831. package/dist/data/designs/ios-zoom-expo.md +355 -0
  832. package/dist/data/designs/ios-zoom-swiftui.md +379 -0
  833. package/dist/data/designs/ios-zoom.md +357 -0
  834. package/dist/data/designs/ios-zwift-android.md +402 -0
  835. package/dist/data/designs/ios-zwift-expo.md +402 -0
  836. package/dist/data/designs/ios-zwift-swiftui.md +378 -0
  837. package/dist/data/designs/ios-zwift.md +411 -0
  838. package/dist/data/designs/kraken.md +125 -0
  839. package/dist/data/designs/lamborghini.md +288 -0
  840. package/dist/data/designs/linear.app.md +548 -0
  841. package/dist/data/designs/lovable.md +298 -0
  842. package/dist/data/designs/mastercard.md +365 -0
  843. package/dist/data/designs/material-clean.md +289 -0
  844. package/dist/data/designs/meta.md +683 -0
  845. package/dist/data/designs/midnight-pro.md +256 -0
  846. package/dist/data/designs/minimal-brutalist.md +245 -0
  847. package/dist/data/designs/minimax.md +746 -0
  848. package/dist/data/designs/mintlify.md +852 -0
  849. package/dist/data/designs/miro.md +825 -0
  850. package/dist/data/designs/mistral.ai.md +773 -0
  851. package/dist/data/designs/mongodb.md +767 -0
  852. package/dist/data/designs/nike.md +575 -0
  853. package/dist/data/designs/nintendo-2001.md +649 -0
  854. package/dist/data/designs/notion.md +821 -0
  855. package/dist/data/designs/nova-mobile-design-md.md +235 -0
  856. package/dist/data/designs/nvidia.md +640 -0
  857. package/dist/data/designs/ollama.md +539 -0
  858. package/dist/data/designs/opencode.ai.md +521 -0
  859. package/dist/data/designs/pinterest.md +597 -0
  860. package/dist/data/designs/playful-color.md +253 -0
  861. package/dist/data/designs/playstation.md +661 -0
  862. package/dist/data/designs/posthog.md +690 -0
  863. package/dist/data/designs/raycast.md +669 -0
  864. package/dist/data/designs/renault.md +589 -0
  865. package/dist/data/designs/replicate.md +616 -0
  866. package/dist/data/designs/resend.md +585 -0
  867. package/dist/data/designs/revolut.md +636 -0
  868. package/dist/data/designs/runwayml.md +244 -0
  869. package/dist/data/designs/sanity.md +357 -0
  870. package/dist/data/designs/sentry.md +551 -0
  871. package/dist/data/designs/shopify.md +516 -0
  872. package/dist/data/designs/slack.md +482 -0
  873. package/dist/data/designs/soft-glass.md +258 -0
  874. package/dist/data/designs/spacex.md +363 -0
  875. package/dist/data/designs/spotify.md +246 -0
  876. package/dist/data/designs/starbucks.md +580 -0
  877. package/dist/data/designs/stripe.md +487 -0
  878. package/dist/data/designs/supabase.md +462 -0
  879. package/dist/data/designs/superhuman.md +448 -0
  880. package/dist/data/designs/tesla.md +286 -0
  881. package/dist/data/designs/theverge.md +339 -0
  882. package/dist/data/designs/together.ai.md +633 -0
  883. package/dist/data/designs/uber.md +636 -0
  884. package/dist/data/designs/vercel.md +736 -0
  885. package/dist/data/designs/vodafone.md +538 -0
  886. package/dist/data/designs/voltagent.md +521 -0
  887. package/dist/data/designs/warp.md +526 -0
  888. package/dist/data/designs/webflow.md +588 -0
  889. package/dist/data/designs/wired.md +497 -0
  890. package/dist/data/designs/wise.md +544 -0
  891. package/dist/data/designs/x.ai.md +465 -0
  892. package/dist/data/designs/zapier.md +537 -0
  893. package/dist/data/index.json +2600 -0
  894. package/dist/httpServer.js +83 -0
  895. package/dist/index.js +13 -0
  896. package/dist/server.js +32 -0
  897. package/dist/services/designStore.js +59 -0
  898. package/dist/services/linter.js +87 -0
  899. package/dist/services/sectionParser.js +154 -0
  900. package/dist/tools/authoring.js +131 -0
  901. package/dist/tools/browse.js +232 -0
  902. package/dist/tools/diff.js +88 -0
  903. package/dist/tools/getDesign.js +216 -0
  904. package/dist/tools/guardrails.js +87 -0
  905. package/dist/tools/lint.js +104 -0
  906. package/dist/types.js +1 -0
  907. package/package.json +65 -0
@@ -0,0 +1,440 @@
1
+ # Design System Inspiration of Starbucks (iOS)
2
+
3
+ ## 1. Visual Theme & Atmosphere
4
+
5
+ Starbucks' iOS app is a thoughtful, warm retail experience wrapped around a single, rewards-heavy hero: your Stars dashboard. Open the app and the first thing you see is a big Gold-gradient progress ring at the top, counting your Stars toward the next reward — a tiny daily dopamine loop that's been tuned over years to reinforce the visit. The color palette is all house: the famous Siren Green (`#00704A`) for primary CTAs, a darker "House Green" (`#1E3932`) that shows up as the warm dark canvas (and crucially is NOT black — it's a very dark forest green tied to Starbucks' store interiors), a soft mint (`#D4E9E2`) that tints reward moments, and cream-gold (`#CBA258`) for the Gold tier status and Stars themselves. The UI evokes the same hospitality as a store: warm, quiet, a little bit premium, and organized around the ritual of ordering the same drink.
6
+
7
+ The layout rhythm is category-first. Once you pick "Order" from the tab bar, you're met with a grid of category cards — Featured, Hot Coffees, Cold Coffees, Refreshers, Lemonades, Frappuccino, Tea, Hot Chocolate, Bakery, Oatmeal, Sandwiches, Salads, and so on — each rendered as a soft-corner card with a photo of the drink and a simple label. Tapping a card drills into a list of drinks, and then into the drink builder: size selector (Short / Tall / Grande / Venti / Trenta) as a segmented horizontal row, milk options as a dropdown, syrup pumps with +/− steppers, whipped cream toggle, espresso shots. The builder is the heart of the app's commerce flow, and Starbucks has made it feel like a barista's checklist — precise, low-friction, and customizable down to the pump.
8
+
9
+ Typography is SoDo Sans — Starbucks' proprietary typeface since 2020, named after SoDo (Seattle's South of Downtown neighborhood where the company's HQ sits). Designed by Dalton Maag, SoDo Sans is a humanist sans with open apertures, subtle warmth, and a weight ladder concentrated at 400 / 600 / 700 / 800 (Regular / Semibold / Bold / ExtraBold). The hierarchy is calm: section titles at 22pt weight 700, body at 15pt weight 400, rewards-specific numbers in SoDo Sans 800 for emphasis. The Stars count on the dashboard ring is a centerpiece — 36-48pt SoDo Sans 800 gold, with smooth tabular digits. The app avoids large display moments except for onboarding hero screens and the once-a-year campaign takeovers (Pumpkin Spice Latte season, Holiday cups).
10
+
11
+ **Key Characteristics:**
12
+ - Siren Green (`#00704A`) as the primary CTA and accent — the brand's defining color
13
+ - House Green (`#1E3932`) as the warm dark canvas — NOT black, it's deep forest green
14
+ - Rewards Stars dashboard — circular progress ring in gold gradient, Stars count center, "X Stars until reward" subtitle
15
+ - Gold tier accent (`#CBA258`) for rewards, status, and the star glyph itself
16
+ - Order-ahead category grid — soft-rounded cards with photography per category
17
+ - Drink builder with size selector pills (Short / Tall / Grande / Venti / Trenta) and +/− pump steppers
18
+ - SoDo Sans typography — humanist sans, weights 400/600/700/800
19
+ - QR code pay flow — "Scan to pay" hero with Stars balance summary
20
+ - Store locator with green pin and map card
21
+ - Tab bar: Home | Scan | Order | Gift | Offers — Scan at the center is the in-store anchor
22
+ - Warm White (`#F9F9F9`) canvas — softer than pure white for a welcoming feel
23
+
24
+ ## 2. Color Palette & Roles
25
+
26
+ ### Primary (Brand)
27
+ - **Starbucks Green / Siren Green** (`#00704A`): Primary brand color — CTAs, logo, Order buttons, tab-active state.
28
+ - **Green Pressed** (`#00563A`): Pressed state on green CTAs.
29
+ - **House Green** (`#1E3932`): Secondary dark brand color — dark-mode canvas, deep accent, section backgrounds. Named for the rich interior paint of Starbucks' stores.
30
+ - **Accent Green / Mint** (`#D4E9E2`): Soft mint — reward-moment tint, promo background, active selection fill.
31
+
32
+ ### Gold Tier (Rewards)
33
+ - **Gold Star** (`#CBA258`): Star glyph color, Gold tier member status, Stars counter number on dashboard.
34
+ - **Gold Alt** (`#C1A265`): Variant gold used in gradients and star-ring progress.
35
+ - **Gold Gradient** (progress ring): `linear-gradient(90deg, #CBA258 0%, #E4C896 50%, #CBA258 100%)` — subtle sheen.
36
+
37
+ ### Canvas & Text (Light)
38
+ - **Warm White** (`#F9F9F9`): Primary canvas — softer than pure white for a welcoming feel.
39
+ - **Canvas White** (`#FFFFFF`): Card surfaces, cleaner inner containers.
40
+ - **Surface Muted** (`#F1F1F1`): Quiet sectional backgrounds, chip fills.
41
+ - **Divider** (`#E8E8E8`): Hairline dividers.
42
+ - **Text Primary** (`#000000`): Primary body text — Starbucks uses true black for body on warm white.
43
+ - **Text Secondary** (`#595959`): Metadata, timestamps, helper text.
44
+ - **Text Tertiary** (`#8E8E8E`): Disabled state, placeholder.
45
+
46
+ ### Dark Mode
47
+ - **Dark Canvas** (`#1E3932`): House Green as the dark canvas — very dark forest green, NOT black.
48
+ - **Dark Surface 1** (`#2D4A43`): Elevated surfaces on dark.
49
+ - **Dark Surface 2** (`#3B5852`): Higher elevation, modals.
50
+ - **Dark Divider** (`#3A4F48`).
51
+ - **Dark Text Primary** (`#FFFFFF`).
52
+ - **Dark Text Secondary** (`#C9CDCB`).
53
+
54
+ ### Semantic
55
+ - **Success Green** (`#00754A`): Order-placed confirmations, "Ready for pickup" status.
56
+ - **Alert Red** (`#DD3333`): Errors, "Out of stock" badges, destructive.
57
+ - **Info Blue** (`#006FCF`): In-body links, informational chips.
58
+ - **Warning Amber** (`#F5A623`): Delayed store, "Busy" chip, pending payment.
59
+
60
+ ### Category / Photography Overlay
61
+ - **Photo Overlay Light** (`rgba(0,0,0,0.1)`): Subtle darken on category cards for label legibility.
62
+ - **Photo Overlay Dark** (`rgba(0,0,0,0.35)`): Stronger overlay on photo tiles with white labels.
63
+
64
+ ## 3. Typography Rules
65
+
66
+ ### Font Family
67
+ - **Primary**: `SoDo Sans` (proprietary since 2020, designed by Dalton Maag — named after Seattle's SoDo neighborhood)
68
+ - **Display variant**: `SoDo Sans Display` — slightly tighter and more distinctive for hero moments
69
+ - **Fallback Stack**: `-apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Lato', 'Helvetica Neue', Arial, sans-serif`
70
+ - **CJK / Non-Latin**: Global SoDo cuts support major scripts; Noto Sans is the fallback
71
+ - **Numerals**: SoDo Sans tabular figures for Stars counts, prices, order counts
72
+
73
+ ### Hierarchy
74
+
75
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
76
+ |------|------|------|--------|-------------|----------------|-------|
77
+ | Rewards Stars Hero | SoDo Sans | 48pt | 800 | 1.0 | -0.5pt | Stars count center of dashboard ring |
78
+ | Screen Title | SoDo Sans | 28pt | 700 | 1.15 | -0.3pt | "Order", "Rewards" hero |
79
+ | Sheet Title | SoDo Sans | 22pt | 700 | 1.2 | -0.2pt | Category title, modal headlines |
80
+ | Section Header | SoDo Sans | 18pt | 700 | 1.25 | -0.1pt | "Featured", "Hot Coffees" |
81
+ | Drink Title (Card) | SoDo Sans | 16pt | 600 | 1.3 | 0pt | Category card labels |
82
+ | Drink Title (Detail) | SoDo Sans | 22pt | 700 | 1.2 | -0.2pt | PDP drink name |
83
+ | Body | SoDo Sans | 15pt | 400 | 1.45 | 0pt | Descriptions, "About this drink" copy |
84
+ | Meta | SoDo Sans | 13pt | 400 | 1.3 | 0pt | "Grande · 150 cal · $5.45" |
85
+ | Price | SoDo Sans | 17pt | 700 | 1.1 | -0.1pt | Cart line item price |
86
+ | Stars Count (Inline) | SoDo Sans | 22pt | 800 | 1.0 | 0pt | Small Stars displays elsewhere |
87
+ | Button (Primary) | SoDo Sans | 16pt | 700 | 1.0 | 0.2pt | "Add to Order", "Pay" |
88
+ | Button (Secondary) | SoDo Sans | 15pt | 600 | 1.0 | 0pt | Outline buttons, links |
89
+ | Size Selector | SoDo Sans | 13pt | 600 | 1.0 | 0.2pt | "Short / Tall / Grande / Venti / Trenta" |
90
+ | Tab Label | SoDo Sans | 11pt | 600 | 1.0 | 0.1pt | Tab bar labels |
91
+ | Chip / Badge | SoDo Sans | 12pt | 700 | 1.0 | 0.3pt | "New", "Starbucks Rewards" uppercase |
92
+ | Caption | SoDo Sans | 12pt | 400 | 1.3 | 0pt | Fine print, T&Cs |
93
+
94
+ ### Principles
95
+ - **Weights concentrated at 400 / 600 / 700 / 800**: Regular / Semibold / Bold / ExtraBold. 800 reserved for Stars counts and hero display moments.
96
+ - **Tabular numerals on Stars and prices**: columns in the rewards history must align
97
+ - **Caps on chips and badges**: "Rewards", "New", "Gold" are SoDo Sans 12pt w700 with 0.3pt tracking
98
+ - **Size selector uses 0.2pt tracking**: the "Short / Tall / Grande / Venti" row reads like engraved type on a coffee menu
99
+ - **No italics**: emphasis through weight
100
+ - **Warmth via line-height**: body copy at 1.45 line-height — generous, reading-friendly
101
+
102
+ ## 4. Component Stylings
103
+
104
+ ### Buttons
105
+
106
+ **Primary CTA ("Order", "Add to Order", "Pay")**
107
+ - Background: `#00704A` Siren Green
108
+ - Text: `#FFFFFF`, SoDo Sans 16pt w700 with 0.2pt tracking
109
+ - Height: 52pt
110
+ - Corner radius: 26pt (full pill)
111
+ - Padding: 0 24pt
112
+ - Pressed: `#00563A`, scale 0.98, medium haptic
113
+ - Loading: white activity indicator replaces label
114
+
115
+ **Secondary Outline Button**
116
+ - Background: transparent
117
+ - Border: 1.5pt `#00704A`
118
+ - Text: `#00704A`, SoDo Sans 15pt w600
119
+ - Height: 44pt, corner radius 22pt (pill)
120
+ - Pressed: background `#D4E9E2`, light haptic
121
+
122
+ **Icon Button (Header)**
123
+ - Size: 44pt hit area
124
+ - Icon: 22pt, `#000000` default, green on tap
125
+ - Background: transparent
126
+ - Used for: back chevron, store, help
127
+
128
+ **Size Selector Pill Row (THE signature)**
129
+ - 5 pills in a horizontal row: Short (8 oz) / Tall (12 oz) / Grande (16 oz) / Venti (20 oz) / Trenta (30 oz, cold only)
130
+ - Each pill: 36pt tall, auto-width (padding 0 14pt)
131
+ - Inactive: transparent background, 1.5pt `#E8E8E8` border, text `#000000` SoDo Sans 13pt w600
132
+ - Active: background `#00704A`, text `#FFFFFF`, no border
133
+ - Icon above label: small coffee cup silhouette 20pt tall, scaled by size
134
+ - Gap: 8pt between pills
135
+ - Pressed: light haptic + background slides via 200ms ease
136
+
137
+ **Customization Stepper (Syrup Pumps, Espresso Shots)**
138
+ - "− 2 +" pattern: leading "−" button (36pt circle, gray outlined), count "2" in SoDo Sans 17pt w700 center, trailing "+" button (36pt circle, gray outlined)
139
+ - Pressed on +/−: scale 0.9, light haptic
140
+ - Count updates live in the calorie/price summary
141
+
142
+ **Toggle (Whipped Cream, Ice)**
143
+ - iOS-style switch but with Starbucks green `#00704A` active tint
144
+
145
+ ### Cards & Containers
146
+
147
+ **Rewards Stars Dashboard (THE signature component)**
148
+ - Position: top of Home tab, centered
149
+ - 180×180pt circular progress ring:
150
+ - Track: `#E8E8E8`
151
+ - Fill: Gold gradient `#CBA258 → #E4C896 → #CBA258`
152
+ - Stroke width: 12pt
153
+ - Progress: arc from 12 o'clock position, clockwise, based on currentStars / targetStars
154
+ - Center: Stars count "47" in SoDo Sans 48pt w800 `#CBA258`, then "Stars" label in SoDo Sans 13pt w600 `#595959`
155
+ - Below ring: "75 Stars until free reward" subtitle in SoDo Sans 14pt w400 `#595959`
156
+ - Tap: navigates to Rewards detail screen
157
+
158
+ **Category Card (Order Grid)**
159
+ - Aspect: 2:3 (taller than square) — or 4:3 on wider variants
160
+ - Corner radius: 16pt
161
+ - Background: full-bleed photo of category item (e.g., steaming cappuccino)
162
+ - Overlay: `rgba(0,0,0,0.2)` bottom 40% vertical gradient for label legibility
163
+ - Label: SoDo Sans 16pt w700 white, bottom-left, 16pt padding
164
+ - Shadow: `rgba(0,0,0,0.08) 0 2px 8px`
165
+ - Tap: scale 0.98 + light haptic
166
+ - Grid: 2-column with 12pt gap on phone, 3-column on iPad
167
+
168
+ **Drink Detail Card (PDP)**
169
+ - Hero photo full-width 3:2 at top with 20pt rounded bottom corners
170
+ - Below: drink name 22pt w700, category badge ("Hot Coffee"), calorie line 13pt gray, description 15pt body
171
+ - Customize button: outlined green pill "Customize"
172
+ - Size selector row (as described above)
173
+ - Customization list expanded on tap:
174
+ - Milk dropdown (2% Milk, Whole, Oat, Almond, Coconut, Breve, Heavy Cream, etc.)
175
+ - Syrup pumps with steppers (Vanilla, Hazelnut, Caramel, etc.)
176
+ - Espresso shots stepper
177
+ - Whipped cream toggle
178
+ - Sweetener packets stepper
179
+ - Price display bottom-right of each option as delta: "+$0.60 Oat Milk"
180
+ - Fixed bottom: "Add to Order — $5.45" pill button (green, 52pt)
181
+
182
+ **Order Confirmation Card**
183
+ - Background: `#D4E9E2` mint
184
+ - Icon: green checkmark circle
185
+ - Title: "Order placed" SoDo Sans 22pt w700
186
+ - Store: "Pike Place Market · Seattle" 15pt w400
187
+ - ETA: "Ready in 4-7 min" 15pt w600 `#00754A`
188
+ - Order summary rows with prices
189
+
190
+ **Scan to Pay Hero**
191
+ - Top: Stars balance summary card (gold gradient background, stars count + name)
192
+ - Center: QR/barcode display (300×180pt white with black barcode + numeric below)
193
+ - Bottom: "Balance: $24.50" 17pt w700, "Reload" green pill button
194
+ - Barcode scans at POS — primary in-store flow
195
+
196
+ **Store Locator Card**
197
+ - Map preview at top (16pt corner radius)
198
+ - Below: store name 17pt w700, address 14pt gray, distance "0.3 mi", "Open until 8 PM" in green
199
+ - Actions: "Start Order" | "Directions"
200
+
201
+ ### Navigation
202
+
203
+ **Top Nav**
204
+ - Height: 44pt + safe area
205
+ - Background: `#F9F9F9` warm white (light) / `#1E3932` house green (dark)
206
+ - Leading: screen title in SoDo Sans 22pt w700 `#000000`
207
+ - Trailing: 24pt action icon (cart, store, help)
208
+ - No chrome below — content flows immediately
209
+
210
+ **Bottom Tab Bar**
211
+ - Height: 56pt + safe area
212
+ - Background: `#FFFFFF` with 0.5pt top border `#E8E8E8`
213
+ - Tabs: Home | Scan | Order | Gift | Offers
214
+ - Icon size: 24pt, 2pt stroke geometric
215
+ - Active: `#00704A` Siren Green (filled variant)
216
+ - Inactive: `#595959`
217
+ - Labels: SoDo Sans 11pt w600, always shown
218
+ - Scan tab icon is a QR-code glyph — the in-store anchor
219
+ - Haptic on tab change: light
220
+
221
+ ### Input Fields
222
+
223
+ **Search Input (Find Store / Drink)**
224
+ - Background: `#F1F1F1`
225
+ - Height: 44pt
226
+ - Corner radius: 22pt (pill)
227
+ - Leading: 18pt magnifying glass `#595959`
228
+ - Placeholder: "Search drinks, food, and more" in SoDo Sans 15pt w400 `#8E8E8E`
229
+ - Focus: no border change
230
+
231
+ **Dropdown (Milk Picker)**
232
+ - Tappable row: label "Milk" left, current value "2% Milk" right with chevron
233
+ - Expands to a sheet with options + radio selectors
234
+ - Radio: green-filled circle active
235
+
236
+ ### Distinctive Components
237
+
238
+ **Stars Progress Ring**
239
+ - 180pt circle with 12pt gold-gradient stroke
240
+ - Starts at 12 o'clock, fills clockwise proportional to stars/reward
241
+ - Center label: bold Stars count with "Stars" subtitle
242
+ - Animated fill on Stars earned (1.5s ease-out)
243
+
244
+ **Size Selector (Short/Tall/Grande/Venti/Trenta)**
245
+ - The row feels like a barista's menu — pills side by side with escalating cup-silhouette icons
246
+ - Small (Short) → Large (Trenta, cold only)
247
+ - Tapping a size slides the green background pill to the new position with a 250ms ease
248
+
249
+ **Category Grid Card**
250
+ - Photography is the content
251
+ - Label sits bottom-left with a subtle gradient overlay for legibility
252
+ - Corner radius 16pt, subtle shadow
253
+ - Entire card is tappable
254
+
255
+ **QR/Barcode Pay Card**
256
+ - Full-width card with white background, 20pt radius
257
+ - Top: Gold Stars count + "Pay" label
258
+ - Middle: 1D barcode + below it the numeric code "6241 1234 5678 9012"
259
+ - The barcode auto-refreshes every 30s for security
260
+ - Bottom: "Balance" amount + "Reload" pill
261
+
262
+ **Order Builder Customization Stepper**
263
+ - "Syrup: Vanilla" — +/− stepper inline with pump count
264
+ - Default pumps shown based on drink size (3 for Grande, 4 for Venti)
265
+ - Pump silhouette icon can optionally replace the count number visually
266
+
267
+ **Reward Tile Banner**
268
+ - Full-width banner on Home
269
+ - Background: soft mint `#D4E9E2`
270
+ - Left: gold star icon + "25 Stars" count
271
+ - Right: "Free Drink" label + "Redeem" green pill button
272
+ - Corner radius: 16pt
273
+
274
+ **Offer Card (Personalized)**
275
+ - Photo hero top (e.g., a seasonal drink)
276
+ - Overlay: "Bonus Stars" tag in gold gradient top-right corner
277
+ - Title: "Earn 2x Stars on your next cold brew"
278
+ - Expiry: "Ends Sunday"
279
+ - "Add to offers" button
280
+
281
+ **Store Locator Pin**
282
+ - Green circle (`#00704A`) with white Siren logo center, 40pt diameter on map
283
+ - "Drive-thru available" icon badge bottom-right if applicable
284
+ - Tap: opens store detail sheet
285
+
286
+ ## 5. Layout Principles
287
+
288
+ ### Spacing System
289
+ - Base unit: 4pt
290
+ - Scale: 4, 8, 12, 16, 20, 24, 32, 40, 48
291
+ - Standard margin: 16pt horizontal
292
+ - Card padding: 16pt interior
293
+ - Gap between cards in grid: 12pt
294
+ - Gap between sections: 24pt
295
+
296
+ ### Grid & Container
297
+ - Home: single column, full-width Stars dashboard at top, sections stacked below
298
+ - Order grid: 2-column on phone, 3-column on wide / iPad
299
+ - PDP: single column, 16pt horizontal padding, hero image full-width
300
+ - Cart: list rows with 80pt drink thumbnails, price trailing
301
+
302
+ ### Whitespace Philosophy
303
+ - **Warm and calm**: generous 1.45 line-height on body copy, 24pt between sections — reads like a café menu
304
+ - **Stars dashboard breathes**: 180pt ring centered with 40pt of canvas on either side
305
+ - **Category cards dense but legible**: 2-column grid with 12pt gaps
306
+ - **Drink builder is methodical**: each customization in its own row, 16pt padding, dividers between
307
+
308
+ ### Border Radius Scale
309
+ - Square (0pt): Rare, mostly photo backgrounds
310
+ - Subtle (4pt): Small badges, Stars progress dot markers
311
+ - Standard (12pt): Modal inner cards, small buttons
312
+ - Comfortable (16pt): Category cards, reward tiles, offer cards
313
+ - Cards (20pt): Hero cards, drink-detail top radius
314
+ - Pill (22-26pt): Primary buttons, search inputs, size selector pills
315
+ - Circle (50%): Stars ring, stepper buttons, tab icons, store pin
316
+
317
+ ## 6. Depth & Elevation
318
+
319
+ | Level | Treatment | Use |
320
+ |-------|-----------|-----|
321
+ | Flat (Level 0) | No shadow | Canvas, list rows, body backgrounds |
322
+ | Hairline (Level 1) | 1pt `#E8E8E8` border | Outline buttons, size selector inactive, input default |
323
+ | Card (Level 2) | `rgba(0,0,0,0.08) 0 2px 8px` | Category cards, offer cards, reward tiles |
324
+ | Primary Button (Level 3) | `rgba(0,112,74,0.2) 0 4px 12px` | Siren Green CTAs (branded green shadow) |
325
+ | Sheet (Level 4) | `rgba(0,0,0,0.15) 0 -4px 20px` | Bottom sheets, drink customization modals |
326
+ | Store Card (Level 5) | `rgba(0,0,0,0.12) 0 2px 16px` | Store locator result card |
327
+ | Dim Overlay | `rgba(0,0,0,0.5)` | Behind modals |
328
+
329
+ **Shadow Philosophy**: Starbucks shadows are warm and soft — 8% black at 8pt blur on category cards is enough to create the "tiles floating on warm white" feel without going industrial. The primary Siren Green button gets a *branded green shadow* (0.2 opacity green) that reinforces the brand without feeling harsh. The Stars dashboard uses no shadow — the gold gradient ring is already the focal point.
330
+
331
+ ### Motion
332
+ - **Size selector slide**: active green pill slides to new size over 250ms ease-out
333
+ - **Stepper press**: +/− button scale 0.9 + light haptic; count updates with a subtle 80ms scale bump
334
+ - **Category card tap**: scale 0.98 spring (damping 0.8), light haptic, then navigate
335
+ - **Stars ring fill animation**: gold stroke animates from 0 → target progress over 1.5s ease-out on first appearance
336
+ - **Reward earned**: Stars count ticks up one by one with 80ms between, ring fills proportionally, success haptic on last Star earned
337
+ - **Order placed confirmation**: green checkmark scales 0 → 1.2 → 1.0 over 400ms spring with success haptic
338
+ - **Bottom sheet**: 0.35s spring with damping 0.85 snap
339
+ - **Primary CTA press**: scale 0.98 + background darkens to `#00563A`, medium haptic
340
+ - **Cart add**: small "+" emanates from button toward cart icon over 400ms (motion path)
341
+ - **QR/Barcode refresh**: fade cross-dissolve 300ms every 30s, no haptic
342
+
343
+ ## 7. Do's and Don'ts
344
+
345
+ ### Do
346
+ - Use Siren Green (`#00704A`) on every primary CTA — Add to Order, Pay, Order button
347
+ - Use House Green (`#1E3932`) as the dark canvas — very dark forest green, NOT black
348
+ - Place the Stars dashboard ring at the top of the Home tab — it's the daily habit hook
349
+ - Render the Stars count in SoDo Sans 48pt w800 gold `#CBA258` centered in the ring
350
+ - Use the 5-pill size selector for drinks (Short / Tall / Grande / Venti / Trenta)
351
+ - Use mint (`#D4E9E2`) for reward-moment tints and soft promo banners
352
+ - Use Warm White (`#F9F9F9`) canvas — softer than pure white
353
+ - Use SoDo Sans weights 400/600/700/800 — ExtraBold reserved for Stars and hero
354
+ - Render Scan tab as the central in-store anchor
355
+ - Trigger medium haptic on primary tap; success haptic on Stars earned and order placed
356
+
357
+ ### Don't
358
+ - Don't use pure black for the dark canvas — `#1E3932` House Green is load-bearing
359
+ - Don't use a banking-style blue for links — Info Blue is sparingly used
360
+ - Don't use display type larger than 48pt — Stars count is the only display moment
361
+ - Don't skip the size selector — it's the mental model of ordering at Starbucks
362
+ - Don't collapse category cards — photography IS the content
363
+ - Don't render stars in yellow — gold (`#CBA258`) is the brand
364
+ - Don't use red/orange destructive colors for routine actions — Starbucks UI is hospitable
365
+ - Don't hide the Stars progress when a user has earned some — it's the motivational core
366
+ - Don't over-animate — motion is calm (250-400ms, dampings 0.7-0.85)
367
+ - Don't introduce gradients outside: Stars ring (gold), hero card backgrounds, or primary-button branded shadow
368
+
369
+ ## 8. Responsive Behavior
370
+
371
+ ### Device Sizes
372
+ | Device | Width | Key Changes |
373
+ |--------|-------|-------------|
374
+ | iPhone SE (3rd gen) | 375pt | Stars ring shrinks to 160pt, 2-column category grid with smaller cards |
375
+ | iPhone 13/14/15 | 390pt | Standard 180pt Stars ring, 2-column 170pt category cards |
376
+ | iPhone 15/16 Pro | 393pt | Dynamic Island respected above nav |
377
+ | iPhone 15/16 Pro Max | 430pt | Stars ring 200pt, 2-column wider cards |
378
+ | iPad | 768pt+ | 3-4 column category grid; Stars ring stays 200pt, centered; PDP becomes side-by-side |
379
+
380
+ ### Dynamic Type
381
+ - Category titles, body, descriptions: full scale
382
+ - Stars count in the ring: fixed 48pt (layout-sensitive)
383
+ - Size selector: fixed 13pt (pill widths are tight)
384
+ - Tab labels: fixed 11pt
385
+ - CTA labels: scale up to 120% then truncate
386
+
387
+ ### Orientation
388
+ - Home / Rewards / Order / Gift / Offers: **portrait-preferred** (landscape supported on iPad)
389
+ - Store locator: landscape-enabled (maps benefit)
390
+ - Scan to pay: **portrait-locked** (barcode readability)
391
+
392
+ ### Touch Targets
393
+ - Primary CTA: 52pt tall
394
+ - Size pills: 36pt tall — small, but 44pt effective via generous horizontal padding
395
+ - Category card: full card tappable
396
+ - Stars ring: full ring tappable (180pt circle)
397
+ - Tab bar icons: 24pt icon with 44pt hit
398
+
399
+ ### Safe Area Handling
400
+ - Top: respected on nav
401
+ - Bottom: tab bar respects home indicator
402
+ - Sides: 16pt content insets; category grid edge-to-edge with internal padding
403
+
404
+ ## 9. Agent Prompt Guide
405
+
406
+ ### Quick Color Reference
407
+ - Canvas (light): `#F9F9F9`
408
+ - Canvas (dark): `#1E3932`
409
+ - Card surface: `#FFFFFF`
410
+ - Surface muted: `#F1F1F1`
411
+ - Divider: `#E8E8E8`
412
+ - Text primary: `#000000`
413
+ - Text secondary: `#595959`
414
+ - Siren Green (primary): `#00704A`
415
+ - Green pressed: `#00563A`
416
+ - House Green: `#1E3932`
417
+ - Mint: `#D4E9E2`
418
+ - Gold Star: `#CBA258`
419
+ - Gold alt: `#C1A265`
420
+ - Success Green: `#00754A`
421
+ - Alert Red: `#DD3333`
422
+
423
+ ### Example Component Prompts
424
+ - "Create a SwiftUI Starbucks Stars dashboard: 180pt circular progress ring centered at top of Home. Track color `#E8E8E8` with 12pt stroke. Progress fill using a gold gradient `#CBA258 → #E4C896 → #CBA258`, starting at 12 o'clock and filling clockwise based on `currentStars / targetStars`. Center shows Stars count '47' in SoDo Sans 48pt w800 `#CBA258`, then 'Stars' subtitle in SoDo Sans 13pt w600 `#595959`. Below the ring: '75 Stars until free reward' in SoDo Sans 14pt w400 `#595959`. Animate the fill from 0 to target over 1.5s ease-out on appear."
425
+ - "Build the drink size selector row: 5 pills for 'Short', 'Tall', 'Grande', 'Venti', 'Trenta', each 36pt tall, auto-width (padding 0 14pt), with 8pt gap between pills. Inactive: transparent background, 1.5pt `#E8E8E8` border, label in SoDo Sans 13pt w600 `#000000` with 0.2pt tracking. Active: `#00704A` Siren Green background, white text, no border. Above each label: small coffee-cup silhouette icon scaled to size (Short smallest → Trenta largest). Tapping a size slides the green pill to the new position over 250ms ease-out with a light haptic."
426
+ - "Design the primary Order CTA: 52pt tall pill button, full-width minus 16pt margins. Background `#00704A` Siren Green, label 'Add to Order — $5.45' in SoDo Sans 16pt w700 white with 0.2pt tracking, full-pill 26pt corner radius. Shadow `rgba(0,112,74,0.2) 0 4px 12px` (branded green glow). Pressed: `#00563A`, scale 0.98, medium haptic."
427
+ - "Create a category card for the Order grid: 2:3 aspect, 16pt corner radius, full-bleed photo of a steaming cappuccino as background. Apply a bottom 40% vertical gradient `rgba(0,0,0,0.0) → rgba(0,0,0,0.5)` for label legibility. Label 'Hot Coffees' in SoDo Sans 16pt w700 white, bottom-left corner with 16pt padding. Shadow `rgba(0,0,0,0.08) 0 2px 8px`. Tap: scale 0.98 spring + light haptic."
428
+ - "Build the Scan-to-Pay screen: Warm White `#F9F9F9` canvas. Top: gold-gradient Stars balance card (16pt corner radius) showing Stars count and tier badge. Middle: white 20pt-radius card containing a 1D barcode centered, with the numeric code '6241 1234 5678 9012' in SoDo Sans 13pt w400 tabular below it. Bottom: 'Balance' label + '$24.50' amount in SoDo Sans 22pt w700, then a 'Reload' Siren Green pill button. Barcode refreshes every 30s with a 300ms cross-dissolve."
429
+ - "Design a customization stepper row for syrup pumps: leading label 'Vanilla Syrup' in SoDo Sans 15pt w600, then a stepper on the right: minus button (36pt circle, transparent with `#E8E8E8` border, `-` glyph in `#000000`), count '2' in SoDo Sans 17pt w700 center, plus button (36pt circle, same style, `+` glyph). Pressing +/− scales the button 0.9 with a light haptic and updates the count live."
430
+
431
+ ### Iteration Guide
432
+ 1. Siren Green (`#00704A`) is the CTA color; House Green (`#1E3932`) is the dark canvas — never use pure black
433
+ 2. Stars dashboard (gold-gradient progress ring with center count) is the defining daily hook — place it at the top of Home
434
+ 3. Size selector pills are the mental model of ordering: Short / Tall / Grande / Venti / Trenta with escalating cup icons
435
+ 4. Warm White (`#F9F9F9`) as the light canvas — softer than pure white, more welcoming
436
+ 5. SoDo Sans weights 400/600/700/800 — ExtraBold reserved for Stars count (48pt) and hero moments
437
+ 6. Gold (`#CBA258`) is the Stars and rewards color — NOT yellow, NOT orange
438
+ 7. Use mint (`#D4E9E2`) for reward-moment tints and gentle promo backgrounds
439
+ 8. Category cards lean on photography — let the drink photos carry the content, labels minimal
440
+ 9. Haptics: light on pills and steppers, medium on primary tap, success on Stars earned and order placed