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,410 @@
1
+ # Design System Inspiration of Binance (iOS)
2
+
3
+ ## 1. Visual Theme & Atmosphere
4
+
5
+ Binance's iOS app is a dark, dense, data-first trading terminal compressed into a phone. The default and dominant experience is dark mode: a near-black canvas (`#0B0E11`) onto which thousands of live numbers stream — prices, percentages, order books, candlesticks, P&L. The atmosphere is "professional exchange, not consumer wallet." Where Coinbase rounds its corners and pads generously to feel friendly, Binance tightens everything: 12pt row paddings, hairline `#2B3139` dividers, and tabular monospace figures so that a markets list shows ten pairs without scrolling. The screen should feel like a Bloomberg terminal that happens to fit in a hand — information density is a feature, not a flaw.
6
+
7
+ The single brand accent is **Binance Yellow** (`#F0B90B`) — a saturated amber-gold that appears on the logo, the primary "Convert"/"Deposit" CTA, the active tab, selected market-tab underlines, and links. It is used sparingly and deliberately: yellow means "this is the Binance action." Everything else is carried by **semantic market color**: green (`#0ECB81`) for up / buy / bids, red (`#F6465D`) for down / sell / asks. These two colors are absolute and never invert between themes — green is always up, red is always down, because a trader's muscle memory depends on it. The candlestick chart uses the same green/red for bullish/bearish candles.
8
+
9
+ Typography is split-brain by design. UI chrome (titles, labels, body, tab names) is set in a clean humanist sans — Binance ships a custom **BinancePlex** family, closely modeled on IBM Plex Sans, with PingFang SC for CJK. But every piece of **numeric data** — balances, prices, the order book, 24h volume, percentages — is rendered in a **monospace** face (BinancePlex Mono / IBM Plex Mono fallback) with tabular figures, so decimal points line up vertically in lists and the order book and balances don't "jitter" as digits change. This sans/mono split is the most recognizable typographic signature of the app.
10
+
11
+ The signature screens are the **Markets list** (favorites/spot/futures tabs, each row = coin icon + pair + 24h volume + monospace price + a colored percentage pill) and the **Trade screen** (candlestick chart on top, depth-shaded order book, Buy/Sell ticket). Secondary signature surfaces: the **Convert** flow (a frictionless from/to coin swap with a single yellow confirm) and the **Wallet/Funding** overview. The home screen leads with an "Est. Total Value" balance hero in monospace plus quick-action buttons (Deposit / Withdraw / Convert).
12
+
13
+ **Key Characteristics:**
14
+ - Dark-native canvas (`#0B0E11`) — the app was designed in dark; light theme is an afterthought
15
+ - Binance Yellow (`#F0B90B`) is the *only* brand accent — used for primary CTA, active tab, links
16
+ - Absolute market semantics: green `#0ECB81` = up/buy, red `#F6465D` = down/sell — never inverted
17
+ - Sans/mono split: chrome in BinancePlex (IBM Plex Sans), all numbers in monospace tabular figures
18
+ - Markets list: dense rows, colored percentage pills, monospace prices, favorites/spot/futures tabs
19
+ - Candlestick chart with green/red candles, time-interval chips, MA/depth overlays
20
+ - Depth-shaded order book — ask/bid rows with a translucent quantity bar behind the numbers
21
+ - Convert flow — a single-screen from/to swap with one yellow confirm
22
+ - Buy/Sell ticket with limit/market toggle, percentage slider (25/50/75/100%)
23
+ - Bottom tab bar (5): Home, Markets, Trade, Futures, Wallets — active in yellow
24
+ - Small radii (2–8pt) — terminal-tight, not consumer-rounded
25
+
26
+ ## 2. Color Palette & Roles
27
+
28
+ ### Primary (Interactive / Brand)
29
+ - **Binance Yellow** (`#F0B90B`): The single brand accent — primary CTA background, active tab, active market-tab underline, links, focused inputs, selected chips.
30
+ - **Yellow Pressed** (`#C99400`): Pressed/active state of yellow buttons.
31
+ - **Yellow Tint** (`#F0B90B1F`): 12% yellow wash behind selected rows and yellow ghost chips.
32
+
33
+ ### Market Semantics (never invert across themes)
34
+ - **Up / Buy / Bid Green** (`#0ECB81`): Positive price change, Buy button, bid rows, bullish candles, gain P&L.
35
+ - **Down / Sell / Ask Red** (`#F6465D`): Negative price change, Sell button, ask rows, bearish candles, loss P&L.
36
+ - **Up Pressed** (`#0BA572`) / **Down Pressed** (`#D93849`): Pressed states for Buy/Sell.
37
+
38
+ ### Canvas & Surfaces (Dark — default)
39
+ - **Canvas** (`#0B0E11`): Primary app background.
40
+ - **Surface 1** (`#181A20`): Cards, sheets, table containers, nav bars.
41
+ - **Surface 2** (`#1E2026`): Elevated rows, search field, segmented controls, input fields.
42
+ - **Surface 3** (`#2B3139`): Pressed rows, chip backgrounds, skeleton, hairline dividers.
43
+ - **Divider** (`#2B3139`): 1pt hairlines between list rows and sections.
44
+
45
+ ### Canvas & Surfaces (Light — secondary theme)
46
+ - **Canvas Light** (`#FFFFFF`): Light background.
47
+ - **Surface 1 Light** (`#F5F5F5`): Cards, grouped containers.
48
+ - **Surface 2 Light** (`#FAFAFA`): Elevated rows, input fields.
49
+ - **Divider Light** (`#EAECEF`): Hairline dividers.
50
+
51
+ ### Text
52
+ - **Text Primary Dark** (`#EAECEF`): Primary text, prices, headings on dark.
53
+ - **Text Secondary Dark** (`#848E9C`): Labels, metadata, secondary values, placeholders.
54
+ - **Text Tertiary Dark** (`#5E6673`): Disabled, very low-emphasis hints, axis labels.
55
+ - **Text Primary Light** (`#1E2329`): Primary text on light.
56
+ - **Text Secondary Light** (`#707A8A`): Secondary text on light.
57
+
58
+ ### Semantic (status)
59
+ - **Success** (`#0ECB81`): Order filled, deposit confirmed (reuses Up Green).
60
+ - **Error** (`#F6465D`): Order failed, validation error (reuses Down Red).
61
+ - **Warning** (`#F0B90B`): Risk warnings, liquidation alerts (reuses brand Yellow).
62
+ - **Info** (`#3375BB`): Informational toasts, KYC banners.
63
+
64
+ ### Color → Role Table
65
+
66
+ | Role | Dark | Light |
67
+ |------|------|-------|
68
+ | Canvas | `#0B0E11` | `#FFFFFF` |
69
+ | Surface 1 | `#181A20` | `#F5F5F5` |
70
+ | Surface 2 | `#1E2026` | `#FAFAFA` |
71
+ | Surface 3 / Divider | `#2B3139` | `#EAECEF` |
72
+ | Brand accent (Yellow) | `#F0B90B` | `#F0B90B` |
73
+ | Up / Buy | `#0ECB81` | `#0ECB81` |
74
+ | Down / Sell | `#F6465D` | `#F6465D` |
75
+ | Text primary | `#EAECEF` | `#1E2329` |
76
+ | Text secondary | `#848E9C` | `#707A8A` |
77
+ | Text tertiary | `#5E6673` | `#A1A7B3` |
78
+ | Link | `#F0B90B` | `#F0B90B` |
79
+
80
+ ## 3. Typography Rules
81
+
82
+ ### Font Family
83
+ - **UI Sans**: `BinancePlex` (Binance's custom face, derived from IBM Plex Sans by IBM / Bold Monday, SIL OFL). Use **IBM Plex Sans** as the open fallback.
84
+ - **Numeric Mono**: `BinancePlex Mono` for all numbers. Use **IBM Plex Mono** as the open fallback. Always enable tabular figures (`font-variant-numeric: tabular-nums`).
85
+ - **CJK**: `PingFang SC` (iOS system) for Chinese; `Hiragino Sans` for Japanese.
86
+ - **Fallback Stack (sans)**: `-apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Segoe UI', Roboto, Helvetica, Arial, sans-serif`
87
+ - **Fallback Stack (mono)**: `'SF Mono', ui-monospace, Menlo, Consolas, monospace`
88
+
89
+ ### Hierarchy
90
+
91
+ | Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
92
+ |------|------|------|--------|-------------|----------------|-------|
93
+ | Screen Title | Sans | 32pt | 700 | 1.2 | -0.6pt | Large nav title (Markets, Wallets) |
94
+ | Balance Hero | Mono | 28pt | 600 | 1.15 | -0.5pt | Est. total value, tabular |
95
+ | Section Title | Sans | 22pt | 700 | 1.25 | -0.2pt | "Spot Wallet", "Recent Trades" |
96
+ | Row Title | Sans | 18pt | 600 | 1.3 | -0.1pt | Coin pair, page heading on detail |
97
+ | Body | Sans | 16pt | 400 | 1.5 | 0pt | Descriptions, explanatory copy |
98
+ | Price / Number | Mono | 15pt | 600 | 1.3 | 0pt | List prices, order book, % change |
99
+ | List Label | Sans | 14pt | 600 | 1.3 | 0pt | "Order Book", "Trades", labels |
100
+ | Meta | Sans | 14pt | 400 | 1.4 | 0pt | 24h volume, high/low, timestamps |
101
+ | Pill / Chip | Sans | 13pt | 600 | 1.0 | 0pt | % change pill, time-interval chips |
102
+ | Caption | Sans | 12pt | 500 | 1.35 | 0.1pt | "Last updated", footnotes |
103
+ | Mono Caption | Mono | 12pt | 500 | 1.35 | 0pt | Order book secondary qty, depth |
104
+ | Tab Label | Sans | 10pt | 500 | 1.0 | 0.1pt | Bottom tab labels |
105
+ | Button | Sans | 15pt | 600 | 1.0 | 0pt | Primary / Buy / Sell |
106
+
107
+ ### Principles
108
+ - **Sans for words, mono for numbers**: This is the rule. Any glyph that represents a quantity (price, %, volume, balance, qty) is monospace with tabular figures. Any glyph that is a word/label is sans.
109
+ - **Tabular figures always on numbers**: Decimal points must align vertically down a markets list and the order book. Never use proportional figures for live data.
110
+ - **Weight concentrated at 400 / 500 / 600 / 700**: Body 400, captions/meta 500, labels/prices/buttons 600, titles 700. No thin, no black.
111
+ - **Color encodes sign, not weight**: A +/- value's color (green/red) carries the meaning; weight stays 600. Do not bold gains and regular losses.
112
+ - **Dense by default**: Line heights are tight (1.2–1.4) for data rows; only body copy gets 1.5.
113
+ - **Dynamic Type**: Titles, body, labels scale; numeric mono columns, tab labels, and order-book rows stay FIXED to preserve column alignment.
114
+
115
+ ## 4. Component Stylings
116
+
117
+ ### Buttons
118
+
119
+ **Primary Button (Convert / Deposit / Confirm)**
120
+ - Shape: Rounded rectangle, 8pt corner radius
121
+ - Background: `#F0B90B` (Binance Yellow)
122
+ - Text: `#0B0E11` (near-black on yellow — never white)
123
+ - Padding: 12pt vertical, 28pt horizontal; full-width on forms (height 48pt)
124
+ - Font: Sans 15pt weight 600
125
+ - Pressed: background `#C99400` + scale 0.98
126
+ - Disabled: background `#F0B90B` at 40% opacity, text `#0B0E11` at 50%
127
+
128
+ **Buy Button**
129
+ - Background: `#0ECB81`; Text `#FFFFFF`; 8pt radius; same metrics as primary
130
+ - Pressed: `#0BA572`
131
+
132
+ **Sell Button**
133
+ - Background: `#F6465D`; Text `#FFFFFF`; 8pt radius
134
+ - Pressed: `#D93849`
135
+
136
+ **Ghost / Secondary Button (Withdraw / Transfer)**
137
+ - Background: `#2B3139` (Surface 3); Text `#EAECEF`
138
+ - Border: none
139
+ - Corner radius: 8pt; Padding: 11pt / 20pt
140
+ - Font: Sans 14pt weight 600
141
+ - Pressed: background lightens to `#363D47`
142
+
143
+ **Text Button (View all / See more)**
144
+ - Background: transparent; Text `#F0B90B` (yellow)
145
+ - Font: Sans 14pt weight 600; no underline
146
+ - Pressed: text `#C99400`
147
+
148
+ **Percentage Slider Chips (25 / 50 / 75 / 100%)**
149
+ - Pill, `#2B3139` bg, `#848E9C` text 13pt w600
150
+ - Selected: `#F0B90B1F` bg, `#F0B90B` text
151
+
152
+ ### Core Atoms
153
+
154
+ **Coin Icon**
155
+ - 30pt circle (24pt in dense lists), brand-colored token glyph or coin logo
156
+ - BTC `#F7931A`, ETH `#627EEA`, BNB `#F0B90B`, USDT `#26A17B`, SOL `#14F195`
157
+
158
+ **Percentage Change Pill**
159
+ - Min-width 64pt, height 28pt, 4pt corner radius
160
+ - Background: solid `#0ECB81` (up) or `#F6465D` (down)
161
+ - Text: `#FFFFFF`, Mono 13pt w600, e.g. `+2.34%` / `-0.92%`
162
+ - Variant (chart screen): no fill, colored text only
163
+
164
+ **Price Cell**
165
+ - Mono 15pt w600 `#EAECEF` primary line; Mono 12pt `#848E9C` USD-equivalent secondary line, right-aligned
166
+
167
+ **Time Interval Chips (chart)**
168
+ - Row: `1m 5m 15m 1H 4H 1D 1W`
169
+ - Inactive: `#848E9C` 13pt w600, no bg
170
+ - Active: `#F0B90B` text, `#F0B90B1F` pill bg, 4pt radius
171
+
172
+ **Tag / Badge**
173
+ - "NEW", "10x", "Vol" badge — 4pt radius, `#2B3139` bg, `#848E9C` 10pt w700; leverage badges use `#F0B90B1F` bg / `#F0B90B` text
174
+
175
+ ### Navigation
176
+
177
+ **Bottom Tab Bar**
178
+ - Height: 56pt + safe area
179
+ - Background: `#0B0E11` at 96% with hairline top border `#2B3139`
180
+ - Tabs (5): Home, Markets, Trade, Futures, Wallets
181
+ - Icon size: 22pt (Trade often a centered emphasized icon)
182
+ - Active: `#F0B90B` (filled icon + yellow label)
183
+ - Inactive: `#5E6673` (outline icon + tertiary label)
184
+ - Labels: Sans 10pt w500, always shown
185
+
186
+ **Top Nav (detail screens)**
187
+ - Height: 44pt + safe area
188
+ - Leading: back chevron `#EAECEF` 22pt
189
+ - Center: pair title Sans 18pt w600 + small % change beneath
190
+ - Trailing: star (favorite) + share + ⋯
191
+
192
+ **Market Tabs (segmented under header)**
193
+ - Row of text tabs: Favorites / Spot / Futures / Hot
194
+ - Active: `#EAECEF` 14pt w600 + 2pt `#F0B90B` underline
195
+ - Inactive: `#848E9C` 14pt w600
196
+
197
+ **Buy/Sell Segmented Toggle**
198
+ - Two-segment pill; selected Buy = `#0ECB81` fill / white text; selected Sell = `#F6465D` fill / white text; unselected = `#2B3139` / `#848E9C`
199
+
200
+ ### Input Fields
201
+
202
+ **Search Bar**
203
+ - Height: 36pt; Background: `#1E2026`; Border: none; Corner radius: 8pt
204
+ - Leading `magnifyingglass` 14pt `#848E9C`
205
+ - Placeholder: "Search BTC, ETH, BNB…" Sans 13pt `#848E9C`
206
+ - Focus: 1pt `#F0B90B` border
207
+
208
+ **Amount / Order Input**
209
+ - Height: 48pt; Background: `#1E2026`; Corner radius: 8pt
210
+ - Value: Mono 18pt w600 `#EAECEF`, right-aligned; leading currency label `#848E9C`
211
+ - Trailing "MAX" text button in `#F0B90B`
212
+ - Focus: 1pt `#F0B90B` border; Error: 1pt `#F6465D` border + helper text `#F6465D` 12pt
213
+
214
+ **Stepper / Quantity (limit order)**
215
+ - `−` / `+` 32pt square `#2B3139` buttons flanking a centered mono value field
216
+
217
+ ### Distinctive Components
218
+
219
+ **Markets List Row**
220
+ - Height: ~56pt; 12pt vertical / 16pt horizontal padding; 1pt `#2B3139` divider
221
+ - Layout: [coin icon 30pt] [pair name + 24h vol stacked] [price + USD stacked, right] [% pill 64pt]
222
+ - Pair: Sans 14pt w600 `#EAECEF`; quote currency `#5E6673` 11pt
223
+ - Volume: Sans 11pt `#848E9C`
224
+ - Price: Mono 14pt w600; USD-eq: Mono 11pt `#848E9C`
225
+ - Long-press: quick "Trade / Add to favorites" sheet
226
+
227
+ **Candlestick Chart**
228
+ - Bullish candle: `#0ECB81`; Bearish candle: `#F6465D`
229
+ - Grid lines: `#2B3139` at 40% opacity; axis labels Mono 10pt `#5E6673`
230
+ - Crosshair on touch: dashed `#848E9C` with a floating mono price tag
231
+ - Overlays: MA(7/25/99) thin lines; volume histogram beneath in muted green/red
232
+ - Interval chips above; chart-type toggle (candles / depth / line) top-right
233
+
234
+ **Order Book**
235
+ - Two stacks: asks (red, top) and bids (green, bottom), spread row in the middle
236
+ - Each row: price (Mono, colored) left, quantity (Mono `#EAECEF`) right
237
+ - **Depth shading**: a translucent bar (`rgba(246,70,93,0.14)` ask / `rgba(14,203,129,0.14)` bid) grows from the right edge proportional to cumulative size — the book's signature look
238
+ - Spread/last-price row: Mono 16pt w600, colored to last tick direction, with a ↑/↓ arrow
239
+ - Tap a row to prefill the order ticket price
240
+
241
+ **Convert Card**
242
+ - Two stacked tiles ("From" / "To") separated by a circular swap button
243
+ - Each tile: coin selector chip (icon + ticker + chevron) + Mono amount input + "Available" line
244
+ - Single full-width yellow "Preview Conversion" CTA; result shows a locked-rate countdown ring
245
+
246
+ **Trade Ticket (Buy/Sell)**
247
+ - Buy/Sell segmented toggle on top
248
+ - Limit/Market tab; price input (limit only) + amount input + 25/50/75/100% slider
249
+ - "Avbl" balance line in `#848E9C`
250
+ - Submit = full-width `#0ECB81` "Buy BTC" or `#F6465D` "Sell BTC"
251
+
252
+ **P&L / Portfolio Pill**
253
+ - Today's change shown as Mono `+$214.86 (+1.70%)` colored green/red beneath the balance hero
254
+
255
+ **Spot/Futures Mode Switch**
256
+ - Pill segmented control; Futures mode tints accents subtly and exposes a leverage badge (`10x` in `#F0B90B1F`)
257
+
258
+ ## 5. Layout Principles
259
+
260
+ ### Spacing System
261
+ - Base unit: 4pt
262
+ - Scale: 4, 8, 12, 16, 20, 24, 32, 40
263
+ - List row vertical padding: 12pt (dense); screen horizontal inset: 16pt
264
+ - Card internal padding: 16pt; section gap: 12pt
265
+ - Inter-element gap in rows: 8–10pt
266
+
267
+ ### Grid & Container
268
+ - iPhone: 16pt horizontal insets; full-bleed chart and order book
269
+ - Markets list: single column, full-width rows, hairline dividers (no card chrome)
270
+ - iPad: two-pane — markets list left (360pt) + chart/trade detail right
271
+ - Chart occupies ~38% of trade screen height; order book + ticket fill the rest
272
+
273
+ ### Whitespace Philosophy
274
+ - **Density is the product**: tight 12pt paddings let a markets list show 8–10 pairs at once — this is intentional, not cramped
275
+ - **Hairlines over cards**: list rows are separated by 1pt `#2B3139` dividers, not card gaps
276
+ - **Numbers breathe via alignment**: tabular mono + right-alignment creates visual order without extra space
277
+ - **Yellow is rare**: large neutral fields make the single yellow CTA pop
278
+
279
+ ### Border Radius Scale
280
+ - Square (0pt): chart area, full-bleed dividers, candlesticks
281
+ - Micro (2pt): order-book depth bars, tiny badges
282
+ - Subtle (4pt): % pills, chips, time-interval chips, tags
283
+ - Standard (8pt): buttons, inputs, search, cards, sheets
284
+ - Comfortable (12–16pt): bottom sheets, modals
285
+ - Pill (500pt): segmented toggles, percentage slider chips
286
+ - Circle (50%): coin icons, swap button, avatars
287
+
288
+ ## 6. Depth & Elevation
289
+
290
+ Binance is mostly flat — depth comes from surface-tone steps (`#0B0E11` → `#181A20` → `#1E2026` → `#2B3139`), not shadows. Shadows appear only on floating sheets and the active trade ticket.
291
+
292
+ | Level | Treatment | Use |
293
+ |-------|-----------|-----|
294
+ | Flat (Level 0) | No shadow; tone step only | List rows, cards, chart, order book |
295
+ | Raised (Level 1) | `rgba(0,0,0,0.4) 0 2px 8px` | Sticky Buy/Sell ticket, floating action bar |
296
+ | Sheet (Level 2) | `rgba(0,0,0,0.5) 0 -6px 24px` | Bottom sheets (coin picker, order confirm) |
297
+ | Modal Overlay | `rgba(0,0,0,0.6)` scrim | Behind modals, KYC, leverage sheet |
298
+
299
+ **Shadow Philosophy**: On a near-black canvas, shadows barely register, so Binance separates layers with progressively lighter surface tones and 1pt `#2B3139` borders on floating panels. Shadow is used only to lift the order ticket and bottom sheets so "tap outside to dismiss" reads clearly.
300
+
301
+ ### Motion
302
+ - **Price tick flash**: when a price updates, the cell briefly flashes green (up) or red (down) background at ~10% opacity for 150ms, then fades — the heartbeat of the app
303
+ - **Order book reflow**: rows shift in 120ms ease-out as depth changes; no springy bounce (data must feel reliable)
304
+ - **Tab switch (Markets tabs)**: underline slides to the new tab in 200ms ease-out; content cross-fades 150ms
305
+ - **Buy/Sell toggle**: segment fill slides + color-morphs green↔red in 180ms ease-out
306
+ - **Chart interaction**: crosshair tracks finger 1:1 (no lag); interval change re-renders instantly
307
+ - **Convert swap**: from/to tiles swap with a 250ms vertical flip + soft haptic
308
+ - **Sheet present**: bottom sheet slides up 300ms ease-out; scrim fades in
309
+ - **Pull-to-refresh**: yellow circular spinner; haptic on trigger
310
+ - **Haptics**: soft impact on order submit, selection tick on percentage-slider snap, success notification haptic on filled order
311
+
312
+ ## 7. Do's and Don'ts
313
+
314
+ ### Do
315
+ - Use the deep canvas `#0B0E11` as the default — Binance is dark-native
316
+ - Make Binance Yellow `#F0B90B` the *only* brand accent (CTA, active tab, links)
317
+ - Set ALL numbers in monospace with tabular figures so columns align
318
+ - Keep green `#0ECB81` = up/buy and red `#F6465D` = sell/down — absolute, never inverted
319
+ - Use dense 12pt row padding and 1pt `#2B3139` hairline dividers in lists
320
+ - Render the order book with translucent depth bars growing from the right edge
321
+ - Flash a cell green/red for ~150ms when its price ticks
322
+ - Use solid colored % pills (`#0ECB81`/`#F6465D`) in the markets list
323
+ - Put black text on yellow buttons (`#0B0E11` on `#F0B90B`) — never white
324
+ - Separate layers with surface-tone steps + 1pt borders, not heavy shadows
325
+ - Keep the Convert flow to a single screen with one yellow confirm
326
+
327
+ ### Don't
328
+ - Don't use white or any color other than `#F0B90B` for the primary CTA
329
+ - Don't render prices/percentages in a proportional sans — alignment breaks
330
+ - Don't invert up/down colors in light mode (green stays up, red stays down)
331
+ - Don't pad rows generously "to feel friendly" — density is the Binance identity
332
+ - Don't put white text on the yellow button (fails contrast and is off-brand)
333
+ - Don't add heavy drop shadows on list cards — use tone steps
334
+ - Don't bold gains while leaving losses regular — color carries the sign, weight stays 600
335
+ - Don't introduce a second brand accent color — yellow is singular
336
+ - Don't animate the order book with bouncy springs — data must feel stable
337
+ - Don't use rounded 16pt+ corners on trading rows — radii stay 2–8pt there
338
+ - Don't hide the 24h % change — it is the primary scannable signal per row
339
+
340
+ ## 8. Responsive Behavior
341
+
342
+ ### Device Sizes
343
+ | Device | Width | Key Changes |
344
+ |--------|-------|-------------|
345
+ | iPhone SE (3rd gen) | 375pt | Markets rows compress to 24pt icons; chart ~34% height |
346
+ | iPhone 13/14/15 | 390pt | Standard layout |
347
+ | iPhone 15/16 Pro | 393pt | Dynamic Island accommodated in top nav |
348
+ | iPhone 15/16 Pro Max | 430pt | Chart taller; order book shows more depth levels |
349
+ | iPad (portrait) | 768pt | Two-pane: markets list (360pt) + detail |
350
+ | iPad (landscape) | 1024pt+ | Three-pane: list + chart + order book/ticket side-by-side |
351
+
352
+ ### Dynamic Type
353
+ - Screen titles, body, labels, captions: scale with Dynamic Type
354
+ - Numeric mono columns (markets prices, order book, balances), tab labels, % pills: FIXED — scaling them would break tabular column alignment
355
+ - Chart axis labels: fixed
356
+
357
+ ### Orientation
358
+ - Portrait default everywhere
359
+ - Trade screen supports landscape: full-width chart with a side order book (pro layout)
360
+ - Markets list locks portrait
361
+
362
+ ### Touch Targets
363
+ - Markets row: full-row tap, 56pt tall
364
+ - Tab bar icons: 22pt glyph, 44pt+ hit
365
+ - Percentage slider chips: 32pt tall, ≥44pt hit
366
+ - Order-book row: full-row tap to prefill price (≥28pt)
367
+ - Buy/Sell buttons: ≥48pt tall
368
+
369
+ ### Safe Area Handling
370
+ - Top: nav respects safe area + Dynamic Island
371
+ - Bottom: tab bar + home indicator respected; sticky trade ticket sits above the home indicator
372
+ - Keyboard: amount inputs scroll above keyboard; percentage slider stays visible above the keyboard on the trade ticket
373
+
374
+ ## 9. Agent Prompt Guide
375
+
376
+ ### Quick Color Reference
377
+ - Canvas (dark): `#0B0E11`
378
+ - Surface 1 / 2 / 3: `#181A20` / `#1E2026` / `#2B3139`
379
+ - Brand accent (Binance Yellow): `#F0B90B` (pressed `#C99400`)
380
+ - Up / Buy / Bid: `#0ECB81`
381
+ - Down / Sell / Ask: `#F6465D`
382
+ - Text primary: `#EAECEF` / secondary `#848E9C` / tertiary `#5E6673`
383
+ - Link: `#F0B90B`
384
+ - Canvas (light): `#FFFFFF`; text primary light `#1E2329`
385
+ - Depth bar (ask): `rgba(246,70,93,0.14)`; (bid): `rgba(14,203,129,0.14)`
386
+
387
+ ### Example Component Prompts
388
+ - "Build the Binance markets list row in SwiftUI: 56pt tall, `#0B0E11` background, 1pt `#2B3139` bottom divider, 16pt horizontal / 12pt vertical insets. Leading 30pt circular coin icon. Then a VStack: pair `BTC` in IBM Plex Sans 14pt w600 `#EAECEF` with `/USDT` quote in `#5E6673` 11pt, and `Vol 1.42B` in 11pt `#848E9C` below. Trailing: a VStack right-aligned with price `67,284.10` in IBM Plex Mono 14pt w600 `#EAECEF` and `$67,284.10` in Mono 11pt `#848E9C`. Far trailing: a 64pt min-width pill, 4pt radius, solid `#0ECB81` background, white Mono 13pt w600 text `+2.34%`."
389
+
390
+ - "Create the Binance order book in SwiftUI: a VStack of ask rows then a spread row then bid rows. Each row is an HStack: price on the left in IBM Plex Mono 12pt w600 (`#F6465D` for asks, `#0ECB81` for bids), quantity on the right in Mono 12pt `#EAECEF`. Behind each row, a depth bar grows from the trailing edge: a Rectangle filled `Color.red.opacity(0.14)` for asks / `Color.green.opacity(0.14)` for bids, width = cumulativeSize / maxSize. The middle spread row shows last price in Mono 16pt w600 colored by last tick direction with a ↑ or ↓ glyph."
391
+
392
+ - "Build the Binance balance hero: label 'Est. Total Value' in IBM Plex Sans 12pt `#848E9C` with a trailing eye icon. Below: `12,840.57` in IBM Plex Mono 28pt w600 `#EAECEF` with `USDT` suffix in 14pt `#848E9C`. Below that: today's P&L `+$214.86 (+1.70%)` in IBM Plex Mono 12pt colored `#0ECB81`. Then a row of three buttons: 'Deposit' full `#F0B90B` (black text), 'Withdraw' and 'Convert' as `#2B3139` ghost buttons, all 36pt tall, 8pt radius."
393
+
394
+ - "Render the Binance Buy/Sell trade ticket: a 2-segment toggle (Buy `#0ECB81` / Sell `#F6465D`, unselected `#2B3139` `#848E9C`). Below: Limit/Market text tabs. A price input (mono, 48pt tall, `#1E2026`, 8pt radius) and an amount input. A 4-stop percentage slider with chips 25/50/75/100 (`#2B3139` → selected `#F0B90B1F`/`#F0B90B`). An 'Avbl 1,204.50 USDT' line in `#848E9C`. Full-width submit button `#0ECB81` 'Buy BTC' (white text, 48pt, 8pt radius)."
395
+
396
+ - "Build the Binance Convert card: two stacked tiles on `#181A20`, 8pt radius, separated by a 36pt circular `#F0B90B` swap button. Each tile: a coin selector chip (24pt icon + ticker + chevron) at top-left, a right-aligned IBM Plex Mono 18pt w600 amount field, and an 'Available 0.482 BTC' line in `#848E9C` 12pt. Below both tiles: a full-width `#F0B90B` 'Preview Conversion' button with black text."
397
+
398
+ - "Create the Binance bottom tab bar: 5 items (Home, Markets, Trade, Futures, Wallets) over a `#0B0E11`@96% bar with a 1pt `#2B3139` top border, 56pt + safe area. Active item icon + label `#F0B90B` (filled icon); inactive `#5E6673` (outline icon). Labels IBM Plex Sans 10pt w500."
399
+
400
+ ### Iteration Guide
401
+ 1. Canvas is `#0B0E11` (dark-native) — light theme only swaps to `#FFFFFF` / `#1E2329`; accents never change
402
+ 2. Binance Yellow `#F0B90B` is the *single* brand accent — black text on it, never white
403
+ 3. Every number is IBM Plex Mono with tabular figures — words are IBM Plex Sans
404
+ 4. Up/buy = `#0ECB81`, down/sell = `#F6465D`, absolute and never inverted
405
+ 5. Markets rows are dense (12pt padding) with 1pt `#2B3139` hairline dividers — density is the identity
406
+ 6. The order book's signature is the translucent depth bar growing from the trailing edge
407
+ 7. Price cells flash green/red ~150ms on tick — the app's heartbeat
408
+ 8. % change is shown as a solid colored pill (`#0ECB81`/`#F6465D`) in the markets list
409
+ 9. Radii are tight on trading UI: 2pt depth bars, 4pt pills/chips, 8pt buttons/inputs
410
+ 10. Separate layers with surface-tone steps + 1pt borders, not shadows; shadows only lift sheets and the trade ticket