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.
- package/LICENSE +21 -0
- package/README.md +119 -0
- package/dist/__tests__/designStore.test.js +41 -0
- package/dist/__tests__/linter.test.js +23 -0
- package/dist/__tests__/sectionParser.test.js +60 -0
- package/dist/__tests__/server.test.js +129 -0
- package/dist/constants.js +12 -0
- package/dist/data/authoring-guide.md +113 -0
- package/dist/data/designs/airbnb.md +545 -0
- package/dist/data/designs/airtable.md +554 -0
- package/dist/data/designs/apple.md +562 -0
- package/dist/data/designs/binance.md +634 -0
- package/dist/data/designs/bmw-m.md +503 -0
- package/dist/data/designs/bmw.md +544 -0
- package/dist/data/designs/bugatti.md +454 -0
- package/dist/data/designs/cal.md +542 -0
- package/dist/data/designs/card-heavy.md +250 -0
- package/dist/data/designs/claude.md +589 -0
- package/dist/data/designs/clay.md +541 -0
- package/dist/data/designs/clickhouse.md +544 -0
- package/dist/data/designs/cohere.md +451 -0
- package/dist/data/designs/coinbase.md +570 -0
- package/dist/data/designs/composio.md +506 -0
- package/dist/data/designs/content-first.md +236 -0
- package/dist/data/designs/cursor.md +537 -0
- package/dist/data/designs/data-dashboard.md +300 -0
- package/dist/data/designs/dell-1996.md +632 -0
- package/dist/data/designs/elevenlabs.md +504 -0
- package/dist/data/designs/enterprise-neutral.md +252 -0
- package/dist/data/designs/expo.md +526 -0
- package/dist/data/designs/ferrari.md +531 -0
- package/dist/data/designs/figma.md +578 -0
- package/dist/data/designs/framer.md +544 -0
- package/dist/data/designs/hashicorp.md +575 -0
- package/dist/data/designs/hp.md +670 -0
- package/dist/data/designs/ibm.md +550 -0
- package/dist/data/designs/intercom.md +546 -0
- package/dist/data/designs/ios-acorns-android.md +430 -0
- package/dist/data/designs/ios-acorns-expo.md +381 -0
- package/dist/data/designs/ios-acorns-swiftui.md +378 -0
- package/dist/data/designs/ios-acorns.md +384 -0
- package/dist/data/designs/ios-airbnb-android.md +658 -0
- package/dist/data/designs/ios-airbnb-expo.md +457 -0
- package/dist/data/designs/ios-airbnb-swiftui.md +464 -0
- package/dist/data/designs/ios-airbnb.md +410 -0
- package/dist/data/designs/ios-alltrails-android.md +451 -0
- package/dist/data/designs/ios-alltrails-expo.md +400 -0
- package/dist/data/designs/ios-alltrails-swiftui.md +343 -0
- package/dist/data/designs/ios-alltrails.md +344 -0
- package/dist/data/designs/ios-amazon-android.md +686 -0
- package/dist/data/designs/ios-amazon-expo.md +433 -0
- package/dist/data/designs/ios-amazon-music-android.md +416 -0
- package/dist/data/designs/ios-amazon-music-expo.md +368 -0
- package/dist/data/designs/ios-amazon-music-swiftui.md +436 -0
- package/dist/data/designs/ios-amazon-music.md +389 -0
- package/dist/data/designs/ios-amazon-swiftui.md +460 -0
- package/dist/data/designs/ios-amazon.md +440 -0
- package/dist/data/designs/ios-apple-fitness-android.md +462 -0
- package/dist/data/designs/ios-apple-fitness-expo.md +373 -0
- package/dist/data/designs/ios-apple-fitness-swiftui.md +373 -0
- package/dist/data/designs/ios-apple-fitness.md +399 -0
- package/dist/data/designs/ios-apple-maps-android.md +646 -0
- package/dist/data/designs/ios-apple-maps-expo.md +557 -0
- package/dist/data/designs/ios-apple-maps-swiftui.md +588 -0
- package/dist/data/designs/ios-apple-maps.md +447 -0
- package/dist/data/designs/ios-apple-music-android.md +737 -0
- package/dist/data/designs/ios-apple-music-expo.md +596 -0
- package/dist/data/designs/ios-apple-music-swiftui.md +578 -0
- package/dist/data/designs/ios-apple-music.md +494 -0
- package/dist/data/designs/ios-apple-notes-android.md +675 -0
- package/dist/data/designs/ios-apple-notes-expo.md +468 -0
- package/dist/data/designs/ios-apple-notes-swiftui.md +489 -0
- package/dist/data/designs/ios-apple-notes.md +413 -0
- package/dist/data/designs/ios-apple-tv-android.md +405 -0
- package/dist/data/designs/ios-apple-tv-expo.md +341 -0
- package/dist/data/designs/ios-apple-tv-swiftui.md +348 -0
- package/dist/data/designs/ios-apple-tv.md +390 -0
- package/dist/data/designs/ios-apple-wallet-android.md +617 -0
- package/dist/data/designs/ios-apple-wallet-expo.md +487 -0
- package/dist/data/designs/ios-apple-wallet-swiftui.md +425 -0
- package/dist/data/designs/ios-apple-wallet.md +360 -0
- package/dist/data/designs/ios-asana-android.md +435 -0
- package/dist/data/designs/ios-asana-expo.md +411 -0
- package/dist/data/designs/ios-asana-swiftui.md +416 -0
- package/dist/data/designs/ios-asana.md +433 -0
- package/dist/data/designs/ios-audible-android.md +450 -0
- package/dist/data/designs/ios-audible-expo.md +328 -0
- package/dist/data/designs/ios-audible-swiftui.md +418 -0
- package/dist/data/designs/ios-audible.md +364 -0
- package/dist/data/designs/ios-bandcamp-android.md +471 -0
- package/dist/data/designs/ios-bandcamp-expo.md +378 -0
- package/dist/data/designs/ios-bandcamp-swiftui.md +374 -0
- package/dist/data/designs/ios-bandcamp.md +372 -0
- package/dist/data/designs/ios-bear-android.md +496 -0
- package/dist/data/designs/ios-bear-expo.md +449 -0
- package/dist/data/designs/ios-bear-swiftui.md +479 -0
- package/dist/data/designs/ios-bear.md +412 -0
- package/dist/data/designs/ios-bereal-android.md +392 -0
- package/dist/data/designs/ios-bereal-expo.md +299 -0
- package/dist/data/designs/ios-bereal-swiftui.md +319 -0
- package/dist/data/designs/ios-bereal.md +336 -0
- package/dist/data/designs/ios-binance-android.md +481 -0
- package/dist/data/designs/ios-binance-expo.md +404 -0
- package/dist/data/designs/ios-binance-swiftui.md +418 -0
- package/dist/data/designs/ios-binance.md +410 -0
- package/dist/data/designs/ios-bluesky-android.md +442 -0
- package/dist/data/designs/ios-bluesky-expo.md +362 -0
- package/dist/data/designs/ios-bluesky-swiftui.md +328 -0
- package/dist/data/designs/ios-bluesky.md +338 -0
- package/dist/data/designs/ios-booking-android.md +471 -0
- package/dist/data/designs/ios-booking-expo.md +364 -0
- package/dist/data/designs/ios-booking-swiftui.md +377 -0
- package/dist/data/designs/ios-booking.md +346 -0
- package/dist/data/designs/ios-bumble-android.md +756 -0
- package/dist/data/designs/ios-bumble-expo.md +629 -0
- package/dist/data/designs/ios-bumble-swiftui.md +546 -0
- package/dist/data/designs/ios-bumble.md +424 -0
- package/dist/data/designs/ios-cal-ai-android.md +664 -0
- package/dist/data/designs/ios-cal-ai-expo.md +415 -0
- package/dist/data/designs/ios-cal-ai-swiftui.md +486 -0
- package/dist/data/designs/ios-cal-ai.md +387 -0
- package/dist/data/designs/ios-calm-android.md +431 -0
- package/dist/data/designs/ios-calm-expo.md +384 -0
- package/dist/data/designs/ios-calm-swiftui.md +327 -0
- package/dist/data/designs/ios-calm.md +356 -0
- package/dist/data/designs/ios-canva-android.md +469 -0
- package/dist/data/designs/ios-canva-expo.md +374 -0
- package/dist/data/designs/ios-canva-swiftui.md +422 -0
- package/dist/data/designs/ios-canva.md +395 -0
- package/dist/data/designs/ios-cash-app-android.md +601 -0
- package/dist/data/designs/ios-cash-app-expo.md +453 -0
- package/dist/data/designs/ios-cash-app-swiftui.md +463 -0
- package/dist/data/designs/ios-cash-app.md +365 -0
- package/dist/data/designs/ios-character-ai-android.md +489 -0
- package/dist/data/designs/ios-character-ai-expo.md +420 -0
- package/dist/data/designs/ios-character-ai-swiftui.md +417 -0
- package/dist/data/designs/ios-character-ai.md +392 -0
- package/dist/data/designs/ios-charles-schwab-android.md +454 -0
- package/dist/data/designs/ios-charles-schwab-expo.md +388 -0
- package/dist/data/designs/ios-charles-schwab-swiftui.md +394 -0
- package/dist/data/designs/ios-charles-schwab.md +380 -0
- package/dist/data/designs/ios-chatgpt-android.md +753 -0
- package/dist/data/designs/ios-chatgpt-expo.md +644 -0
- package/dist/data/designs/ios-chatgpt-swiftui.md +653 -0
- package/dist/data/designs/ios-chatgpt.md +466 -0
- package/dist/data/designs/ios-chime-android.md +438 -0
- package/dist/data/designs/ios-chime-expo.md +419 -0
- package/dist/data/designs/ios-chime-swiftui.md +383 -0
- package/dist/data/designs/ios-chime.md +389 -0
- package/dist/data/designs/ios-chipotle-android.md +397 -0
- package/dist/data/designs/ios-chipotle-expo.md +301 -0
- package/dist/data/designs/ios-chipotle-swiftui.md +345 -0
- package/dist/data/designs/ios-chipotle.md +340 -0
- package/dist/data/designs/ios-citymapper-android.md +466 -0
- package/dist/data/designs/ios-citymapper-expo.md +420 -0
- package/dist/data/designs/ios-citymapper-swiftui.md +424 -0
- package/dist/data/designs/ios-citymapper.md +394 -0
- package/dist/data/designs/ios-claude-android.md +625 -0
- package/dist/data/designs/ios-claude-expo.md +671 -0
- package/dist/data/designs/ios-claude-swiftui.md +649 -0
- package/dist/data/designs/ios-claude.md +447 -0
- package/dist/data/designs/ios-clickup-android.md +484 -0
- package/dist/data/designs/ios-clickup-expo.md +423 -0
- package/dist/data/designs/ios-clickup-swiftui.md +416 -0
- package/dist/data/designs/ios-clickup.md +431 -0
- package/dist/data/designs/ios-clubhouse-android.md +524 -0
- package/dist/data/designs/ios-clubhouse-expo.md +425 -0
- package/dist/data/designs/ios-clubhouse-swiftui.md +447 -0
- package/dist/data/designs/ios-clubhouse.md +406 -0
- package/dist/data/designs/ios-coffee-meets-bagel-android.md +461 -0
- package/dist/data/designs/ios-coffee-meets-bagel-expo.md +372 -0
- package/dist/data/designs/ios-coffee-meets-bagel-swiftui.md +368 -0
- package/dist/data/designs/ios-coffee-meets-bagel.md +376 -0
- package/dist/data/designs/ios-coinbase-android.md +611 -0
- package/dist/data/designs/ios-coinbase-expo.md +500 -0
- package/dist/data/designs/ios-coinbase-swiftui.md +490 -0
- package/dist/data/designs/ios-coinbase.md +409 -0
- package/dist/data/designs/ios-copilot-android.md +625 -0
- package/dist/data/designs/ios-copilot-expo.md +423 -0
- package/dist/data/designs/ios-copilot-swiftui.md +471 -0
- package/dist/data/designs/ios-copilot.md +367 -0
- package/dist/data/designs/ios-craft-android.md +459 -0
- package/dist/data/designs/ios-craft-expo.md +417 -0
- package/dist/data/designs/ios-craft-swiftui.md +449 -0
- package/dist/data/designs/ios-craft.md +449 -0
- package/dist/data/designs/ios-crunchyroll-android.md +432 -0
- package/dist/data/designs/ios-crunchyroll-expo.md +388 -0
- package/dist/data/designs/ios-crunchyroll-swiftui.md +417 -0
- package/dist/data/designs/ios-crunchyroll.md +388 -0
- package/dist/data/designs/ios-crypto-com-android.md +461 -0
- package/dist/data/designs/ios-crypto-com-expo.md +404 -0
- package/dist/data/designs/ios-crypto-com-swiftui.md +419 -0
- package/dist/data/designs/ios-crypto-com.md +410 -0
- package/dist/data/designs/ios-deepseek-android.md +471 -0
- package/dist/data/designs/ios-deepseek-expo.md +391 -0
- package/dist/data/designs/ios-deepseek-swiftui.md +354 -0
- package/dist/data/designs/ios-deepseek.md +393 -0
- package/dist/data/designs/ios-deezer-android.md +475 -0
- package/dist/data/designs/ios-deezer-expo.md +400 -0
- package/dist/data/designs/ios-deezer-swiftui.md +430 -0
- package/dist/data/designs/ios-deezer.md +388 -0
- package/dist/data/designs/ios-deliveroo-android.md +493 -0
- package/dist/data/designs/ios-deliveroo-expo.md +424 -0
- package/dist/data/designs/ios-deliveroo-swiftui.md +398 -0
- package/dist/data/designs/ios-deliveroo.md +420 -0
- package/dist/data/designs/ios-delta-android.md +439 -0
- package/dist/data/designs/ios-delta-expo.md +381 -0
- package/dist/data/designs/ios-delta-swiftui.md +400 -0
- package/dist/data/designs/ios-delta.md +397 -0
- package/dist/data/designs/ios-discord-android.md +611 -0
- package/dist/data/designs/ios-discord-expo.md +618 -0
- package/dist/data/designs/ios-discord-swiftui.md +630 -0
- package/dist/data/designs/ios-discord.md +451 -0
- package/dist/data/designs/ios-disney-plus-android.md +464 -0
- package/dist/data/designs/ios-disney-plus-expo.md +358 -0
- package/dist/data/designs/ios-disney-plus-swiftui.md +412 -0
- package/dist/data/designs/ios-disney-plus.md +355 -0
- package/dist/data/designs/ios-dominos-android.md +417 -0
- package/dist/data/designs/ios-dominos-expo.md +316 -0
- package/dist/data/designs/ios-dominos-swiftui.md +340 -0
- package/dist/data/designs/ios-dominos.md +347 -0
- package/dist/data/designs/ios-doordash-android.md +527 -0
- package/dist/data/designs/ios-doordash-expo.md +323 -0
- package/dist/data/designs/ios-doordash-swiftui.md +301 -0
- package/dist/data/designs/ios-doordash.md +393 -0
- package/dist/data/designs/ios-dropbox-android.md +522 -0
- package/dist/data/designs/ios-dropbox-expo.md +393 -0
- package/dist/data/designs/ios-dropbox-swiftui.md +400 -0
- package/dist/data/designs/ios-dropbox.md +374 -0
- package/dist/data/designs/ios-duolingo-android.md +641 -0
- package/dist/data/designs/ios-duolingo-expo.md +597 -0
- package/dist/data/designs/ios-duolingo-swiftui.md +539 -0
- package/dist/data/designs/ios-duolingo.md +409 -0
- package/dist/data/designs/ios-ebay-android.md +436 -0
- package/dist/data/designs/ios-ebay-expo.md +344 -0
- package/dist/data/designs/ios-ebay-swiftui.md +308 -0
- package/dist/data/designs/ios-ebay.md +355 -0
- package/dist/data/designs/ios-espn-android.md +468 -0
- package/dist/data/designs/ios-espn-expo.md +387 -0
- package/dist/data/designs/ios-espn-swiftui.md +410 -0
- package/dist/data/designs/ios-espn.md +384 -0
- package/dist/data/designs/ios-etsy-android.md +439 -0
- package/dist/data/designs/ios-etsy-expo.md +351 -0
- package/dist/data/designs/ios-etsy-swiftui.md +296 -0
- package/dist/data/designs/ios-etsy.md +355 -0
- package/dist/data/designs/ios-evernote-android.md +419 -0
- package/dist/data/designs/ios-evernote-expo.md +379 -0
- package/dist/data/designs/ios-evernote-swiftui.md +380 -0
- package/dist/data/designs/ios-evernote.md +416 -0
- package/dist/data/designs/ios-expedia-android.md +451 -0
- package/dist/data/designs/ios-expedia-expo.md +433 -0
- package/dist/data/designs/ios-expedia-swiftui.md +399 -0
- package/dist/data/designs/ios-expedia.md +431 -0
- package/dist/data/designs/ios-facebook-android.md +628 -0
- package/dist/data/designs/ios-facebook-expo.md +471 -0
- package/dist/data/designs/ios-facebook-swiftui.md +459 -0
- package/dist/data/designs/ios-facebook.md +452 -0
- package/dist/data/designs/ios-feeld-android.md +431 -0
- package/dist/data/designs/ios-feeld-expo.md +379 -0
- package/dist/data/designs/ios-feeld-swiftui.md +401 -0
- package/dist/data/designs/ios-feeld.md +378 -0
- package/dist/data/designs/ios-fidelity-android.md +426 -0
- package/dist/data/designs/ios-fidelity-expo.md +396 -0
- package/dist/data/designs/ios-fidelity-swiftui.md +398 -0
- package/dist/data/designs/ios-fidelity.md +387 -0
- package/dist/data/designs/ios-figma-android.md +578 -0
- package/dist/data/designs/ios-figma-expo.md +504 -0
- package/dist/data/designs/ios-figma-swiftui.md +542 -0
- package/dist/data/designs/ios-figma.md +404 -0
- package/dist/data/designs/ios-fitbit-android.md +439 -0
- package/dist/data/designs/ios-fitbit-expo.md +389 -0
- package/dist/data/designs/ios-fitbit-swiftui.md +380 -0
- package/dist/data/designs/ios-fitbit.md +396 -0
- package/dist/data/designs/ios-flickr-android.md +506 -0
- package/dist/data/designs/ios-flickr-expo.md +434 -0
- package/dist/data/designs/ios-flickr-swiftui.md +421 -0
- package/dist/data/designs/ios-flickr.md +394 -0
- package/dist/data/designs/ios-flighty-android.md +418 -0
- package/dist/data/designs/ios-flighty-expo.md +353 -0
- package/dist/data/designs/ios-flighty-swiftui.md +337 -0
- package/dist/data/designs/ios-flighty.md +357 -0
- package/dist/data/designs/ios-flo-android.md +447 -0
- package/dist/data/designs/ios-flo-expo.md +363 -0
- package/dist/data/designs/ios-flo-swiftui.md +355 -0
- package/dist/data/designs/ios-flo.md +351 -0
- package/dist/data/designs/ios-garmin-connect-android.md +531 -0
- package/dist/data/designs/ios-garmin-connect-expo.md +429 -0
- package/dist/data/designs/ios-garmin-connect-swiftui.md +459 -0
- package/dist/data/designs/ios-garmin-connect.md +419 -0
- package/dist/data/designs/ios-gas-android.md +438 -0
- package/dist/data/designs/ios-gas-expo.md +350 -0
- package/dist/data/designs/ios-gas-swiftui.md +329 -0
- package/dist/data/designs/ios-gas.md +387 -0
- package/dist/data/designs/ios-gemini-android.md +568 -0
- package/dist/data/designs/ios-gemini-expo.md +416 -0
- package/dist/data/designs/ios-gemini-swiftui.md +424 -0
- package/dist/data/designs/ios-gemini.md +351 -0
- package/dist/data/designs/ios-github-android.md +507 -0
- package/dist/data/designs/ios-github-expo.md +486 -0
- package/dist/data/designs/ios-github-swiftui.md +459 -0
- package/dist/data/designs/ios-github.md +394 -0
- package/dist/data/designs/ios-gmail-android.md +548 -0
- package/dist/data/designs/ios-gmail-expo.md +457 -0
- package/dist/data/designs/ios-gmail-swiftui.md +470 -0
- package/dist/data/designs/ios-gmail.md +441 -0
- package/dist/data/designs/ios-goodreads-android.md +436 -0
- package/dist/data/designs/ios-goodreads-expo.md +407 -0
- package/dist/data/designs/ios-goodreads-swiftui.md +378 -0
- package/dist/data/designs/ios-goodreads.md +385 -0
- package/dist/data/designs/ios-google-calendar-android.md +565 -0
- package/dist/data/designs/ios-google-calendar-expo.md +616 -0
- package/dist/data/designs/ios-google-calendar-swiftui.md +585 -0
- package/dist/data/designs/ios-google-calendar.md +431 -0
- package/dist/data/designs/ios-google-maps-android.md +614 -0
- package/dist/data/designs/ios-google-maps-expo.md +515 -0
- package/dist/data/designs/ios-google-maps-swiftui.md +484 -0
- package/dist/data/designs/ios-google-maps.md +451 -0
- package/dist/data/designs/ios-grammarly-android.md +449 -0
- package/dist/data/designs/ios-grammarly-expo.md +383 -0
- package/dist/data/designs/ios-grammarly-swiftui.md +381 -0
- package/dist/data/designs/ios-grammarly.md +392 -0
- package/dist/data/designs/ios-grindr-android.md +494 -0
- package/dist/data/designs/ios-grindr-expo.md +358 -0
- package/dist/data/designs/ios-grindr-swiftui.md +357 -0
- package/dist/data/designs/ios-grindr.md +356 -0
- package/dist/data/designs/ios-grok-android.md +471 -0
- package/dist/data/designs/ios-grok-expo.md +388 -0
- package/dist/data/designs/ios-grok-swiftui.md +397 -0
- package/dist/data/designs/ios-grok.md +357 -0
- package/dist/data/designs/ios-groupme-android.md +551 -0
- package/dist/data/designs/ios-groupme-expo.md +442 -0
- package/dist/data/designs/ios-groupme-swiftui.md +439 -0
- package/dist/data/designs/ios-groupme.md +424 -0
- package/dist/data/designs/ios-grubhub-android.md +506 -0
- package/dist/data/designs/ios-grubhub-expo.md +428 -0
- package/dist/data/designs/ios-grubhub-swiftui.md +408 -0
- package/dist/data/designs/ios-grubhub.md +427 -0
- package/dist/data/designs/ios-happn-android.md +464 -0
- package/dist/data/designs/ios-happn-expo.md +411 -0
- package/dist/data/designs/ios-happn-swiftui.md +401 -0
- package/dist/data/designs/ios-happn.md +400 -0
- package/dist/data/designs/ios-headspace-android.md +688 -0
- package/dist/data/designs/ios-headspace-expo.md +574 -0
- package/dist/data/designs/ios-headspace-swiftui.md +498 -0
- package/dist/data/designs/ios-headspace.md +430 -0
- package/dist/data/designs/ios-hevy-android.md +473 -0
- package/dist/data/designs/ios-hevy-expo.md +405 -0
- package/dist/data/designs/ios-hevy-swiftui.md +367 -0
- package/dist/data/designs/ios-hevy.md +410 -0
- package/dist/data/designs/ios-hinge-android.md +743 -0
- package/dist/data/designs/ios-hinge-expo.md +580 -0
- package/dist/data/designs/ios-hinge-swiftui.md +512 -0
- package/dist/data/designs/ios-hinge.md +405 -0
- package/dist/data/designs/ios-hopper-android.md +440 -0
- package/dist/data/designs/ios-hopper-expo.md +353 -0
- package/dist/data/designs/ios-hopper-swiftui.md +340 -0
- package/dist/data/designs/ios-hopper.md +354 -0
- package/dist/data/designs/ios-hulu-android.md +435 -0
- package/dist/data/designs/ios-hulu-expo.md +331 -0
- package/dist/data/designs/ios-hulu-swiftui.md +374 -0
- package/dist/data/designs/ios-hulu.md +353 -0
- package/dist/data/designs/ios-iheartradio-android.md +481 -0
- package/dist/data/designs/ios-iheartradio-expo.md +417 -0
- package/dist/data/designs/ios-iheartradio-swiftui.md +423 -0
- package/dist/data/designs/ios-iheartradio.md +381 -0
- package/dist/data/designs/ios-imessage-android.md +426 -0
- package/dist/data/designs/ios-imessage-expo.md +384 -0
- package/dist/data/designs/ios-imessage-swiftui.md +378 -0
- package/dist/data/designs/ios-imessage.md +394 -0
- package/dist/data/designs/ios-instacart-android.md +471 -0
- package/dist/data/designs/ios-instacart-expo.md +349 -0
- package/dist/data/designs/ios-instacart-swiftui.md +378 -0
- package/dist/data/designs/ios-instacart.md +360 -0
- package/dist/data/designs/ios-instagram-android.md +646 -0
- package/dist/data/designs/ios-instagram-expo.md +310 -0
- package/dist/data/designs/ios-instagram-swiftui.md +333 -0
- package/dist/data/designs/ios-instagram.md +376 -0
- package/dist/data/designs/ios-jira-android.md +432 -0
- package/dist/data/designs/ios-jira-expo.md +375 -0
- package/dist/data/designs/ios-jira-swiftui.md +433 -0
- package/dist/data/designs/ios-jira.md +424 -0
- package/dist/data/designs/ios-kakaotalk-android.md +491 -0
- package/dist/data/designs/ios-kakaotalk-expo.md +418 -0
- package/dist/data/designs/ios-kakaotalk-swiftui.md +406 -0
- package/dist/data/designs/ios-kakaotalk.md +414 -0
- package/dist/data/designs/ios-kayak-android.md +466 -0
- package/dist/data/designs/ios-kayak-expo.md +407 -0
- package/dist/data/designs/ios-kayak-swiftui.md +426 -0
- package/dist/data/designs/ios-kayak.md +392 -0
- package/dist/data/designs/ios-kick-android.md +487 -0
- package/dist/data/designs/ios-kick-expo.md +434 -0
- package/dist/data/designs/ios-kick-swiftui.md +429 -0
- package/dist/data/designs/ios-kick.md +389 -0
- package/dist/data/designs/ios-kik-android.md +433 -0
- package/dist/data/designs/ios-kik-expo.md +363 -0
- package/dist/data/designs/ios-kik-swiftui.md +363 -0
- package/dist/data/designs/ios-kik.md +392 -0
- package/dist/data/designs/ios-kindle-android.md +439 -0
- package/dist/data/designs/ios-kindle-expo.md +356 -0
- package/dist/data/designs/ios-kindle-swiftui.md +372 -0
- package/dist/data/designs/ios-kindle.md +369 -0
- package/dist/data/designs/ios-klarna-android.md +420 -0
- package/dist/data/designs/ios-klarna-expo.md +349 -0
- package/dist/data/designs/ios-klarna-swiftui.md +360 -0
- package/dist/data/designs/ios-klarna.md +356 -0
- package/dist/data/designs/ios-lemon8-android.md +492 -0
- package/dist/data/designs/ios-lemon8-expo.md +413 -0
- package/dist/data/designs/ios-lemon8-swiftui.md +428 -0
- package/dist/data/designs/ios-lemon8.md +378 -0
- package/dist/data/designs/ios-life360-android.md +474 -0
- package/dist/data/designs/ios-life360-expo.md +375 -0
- package/dist/data/designs/ios-life360-swiftui.md +390 -0
- package/dist/data/designs/ios-life360.md +402 -0
- package/dist/data/designs/ios-line-android.md +517 -0
- package/dist/data/designs/ios-line-expo.md +402 -0
- package/dist/data/designs/ios-line-swiftui.md +361 -0
- package/dist/data/designs/ios-line.md +362 -0
- package/dist/data/designs/ios-linear-android.md +457 -0
- package/dist/data/designs/ios-linear-expo.md +367 -0
- package/dist/data/designs/ios-linear-swiftui.md +401 -0
- package/dist/data/designs/ios-linear.md +368 -0
- package/dist/data/designs/ios-linkedin-android.md +620 -0
- package/dist/data/designs/ios-linkedin-expo.md +469 -0
- package/dist/data/designs/ios-linkedin-swiftui.md +472 -0
- package/dist/data/designs/ios-linkedin.md +444 -0
- package/dist/data/designs/ios-locket-android.md +500 -0
- package/dist/data/designs/ios-locket-expo.md +375 -0
- package/dist/data/designs/ios-locket-swiftui.md +375 -0
- package/dist/data/designs/ios-locket.md +381 -0
- package/dist/data/designs/ios-lyft-android.md +406 -0
- package/dist/data/designs/ios-lyft-expo.md +333 -0
- package/dist/data/designs/ios-lyft-swiftui.md +315 -0
- package/dist/data/designs/ios-lyft.md +337 -0
- package/dist/data/designs/ios-marriott-bonvoy-android.md +488 -0
- package/dist/data/designs/ios-marriott-bonvoy-expo.md +412 -0
- package/dist/data/designs/ios-marriott-bonvoy-swiftui.md +461 -0
- package/dist/data/designs/ios-marriott-bonvoy.md +379 -0
- package/dist/data/designs/ios-mastodon-android.md +476 -0
- package/dist/data/designs/ios-mastodon-expo.md +379 -0
- package/dist/data/designs/ios-mastodon-swiftui.md +349 -0
- package/dist/data/designs/ios-mastodon.md +337 -0
- package/dist/data/designs/ios-match-android.md +496 -0
- package/dist/data/designs/ios-match-expo.md +393 -0
- package/dist/data/designs/ios-match-swiftui.md +450 -0
- package/dist/data/designs/ios-match.md +382 -0
- package/dist/data/designs/ios-max-android.md +454 -0
- package/dist/data/designs/ios-max-expo.md +342 -0
- package/dist/data/designs/ios-max-swiftui.md +332 -0
- package/dist/data/designs/ios-max.md +352 -0
- package/dist/data/designs/ios-mcdonalds-android.md +497 -0
- package/dist/data/designs/ios-mcdonalds-expo.md +382 -0
- package/dist/data/designs/ios-mcdonalds-swiftui.md +394 -0
- package/dist/data/designs/ios-mcdonalds.md +410 -0
- package/dist/data/designs/ios-messenger-android.md +523 -0
- package/dist/data/designs/ios-messenger-expo.md +379 -0
- package/dist/data/designs/ios-messenger-swiftui.md +369 -0
- package/dist/data/designs/ios-messenger.md +361 -0
- package/dist/data/designs/ios-microsoft-teams-android.md +446 -0
- package/dist/data/designs/ios-microsoft-teams-expo.md +362 -0
- package/dist/data/designs/ios-microsoft-teams-swiftui.md +384 -0
- package/dist/data/designs/ios-microsoft-teams.md +359 -0
- package/dist/data/designs/ios-midjourney-android.md +503 -0
- package/dist/data/designs/ios-midjourney-expo.md +406 -0
- package/dist/data/designs/ios-midjourney-swiftui.md +376 -0
- package/dist/data/designs/ios-midjourney.md +407 -0
- package/dist/data/designs/ios-miro-android.md +475 -0
- package/dist/data/designs/ios-miro-expo.md +421 -0
- package/dist/data/designs/ios-miro-swiftui.md +407 -0
- package/dist/data/designs/ios-miro.md +424 -0
- package/dist/data/designs/ios-monday-android.md +426 -0
- package/dist/data/designs/ios-monday-expo.md +382 -0
- package/dist/data/designs/ios-monday-swiftui.md +386 -0
- package/dist/data/designs/ios-monday.md +415 -0
- package/dist/data/designs/ios-monzo-android.md +423 -0
- package/dist/data/designs/ios-monzo-expo.md +391 -0
- package/dist/data/designs/ios-monzo-swiftui.md +371 -0
- package/dist/data/designs/ios-monzo.md +382 -0
- package/dist/data/designs/ios-myfitnesspal-android.md +631 -0
- package/dist/data/designs/ios-myfitnesspal-expo.md +489 -0
- package/dist/data/designs/ios-myfitnesspal-swiftui.md +500 -0
- package/dist/data/designs/ios-myfitnesspal.md +408 -0
- package/dist/data/designs/ios-netflix-android.md +570 -0
- package/dist/data/designs/ios-netflix-expo.md +528 -0
- package/dist/data/designs/ios-netflix-swiftui.md +543 -0
- package/dist/data/designs/ios-netflix.md +476 -0
- package/dist/data/designs/ios-nextdoor-android.md +399 -0
- package/dist/data/designs/ios-nextdoor-expo.md +317 -0
- package/dist/data/designs/ios-nextdoor-swiftui.md +343 -0
- package/dist/data/designs/ios-nextdoor.md +332 -0
- package/dist/data/designs/ios-nike-run-club-android.md +598 -0
- package/dist/data/designs/ios-nike-run-club-expo.md +459 -0
- package/dist/data/designs/ios-nike-run-club-swiftui.md +474 -0
- package/dist/data/designs/ios-nike-run-club.md +400 -0
- package/dist/data/designs/ios-noom-android.md +455 -0
- package/dist/data/designs/ios-noom-expo.md +362 -0
- package/dist/data/designs/ios-noom-swiftui.md +369 -0
- package/dist/data/designs/ios-noom.md +404 -0
- package/dist/data/designs/ios-notion-android.md +575 -0
- package/dist/data/designs/ios-notion-expo.md +543 -0
- package/dist/data/designs/ios-notion-swiftui.md +562 -0
- package/dist/data/designs/ios-notion.md +506 -0
- package/dist/data/designs/ios-nubank-android.md +447 -0
- package/dist/data/designs/ios-nubank-expo.md +391 -0
- package/dist/data/designs/ios-nubank-swiftui.md +391 -0
- package/dist/data/designs/ios-nubank.md +388 -0
- package/dist/data/designs/ios-obsidian-android.md +456 -0
- package/dist/data/designs/ios-obsidian-expo.md +401 -0
- package/dist/data/designs/ios-obsidian-swiftui.md +412 -0
- package/dist/data/designs/ios-obsidian.md +363 -0
- package/dist/data/designs/ios-okcupid-android.md +496 -0
- package/dist/data/designs/ios-okcupid-expo.md +378 -0
- package/dist/data/designs/ios-okcupid-swiftui.md +343 -0
- package/dist/data/designs/ios-okcupid.md +364 -0
- package/dist/data/designs/ios-opentable-android.md +426 -0
- package/dist/data/designs/ios-opentable-expo.md +350 -0
- package/dist/data/designs/ios-opentable-swiftui.md +328 -0
- package/dist/data/designs/ios-opentable.md +411 -0
- package/dist/data/designs/ios-oura-android.md +426 -0
- package/dist/data/designs/ios-oura-expo.md +353 -0
- package/dist/data/designs/ios-oura-swiftui.md +327 -0
- package/dist/data/designs/ios-oura.md +356 -0
- package/dist/data/designs/ios-overcast-android.md +508 -0
- package/dist/data/designs/ios-overcast-expo.md +420 -0
- package/dist/data/designs/ios-overcast-swiftui.md +427 -0
- package/dist/data/designs/ios-overcast.md +414 -0
- package/dist/data/designs/ios-pandora-android.md +477 -0
- package/dist/data/designs/ios-pandora-expo.md +406 -0
- package/dist/data/designs/ios-pandora-swiftui.md +413 -0
- package/dist/data/designs/ios-pandora.md +366 -0
- package/dist/data/designs/ios-panera-android.md +414 -0
- package/dist/data/designs/ios-panera-expo.md +352 -0
- package/dist/data/designs/ios-panera-swiftui.md +369 -0
- package/dist/data/designs/ios-panera.md +412 -0
- package/dist/data/designs/ios-paramount-plus-android.md +415 -0
- package/dist/data/designs/ios-paramount-plus-expo.md +363 -0
- package/dist/data/designs/ios-paramount-plus-swiftui.md +372 -0
- package/dist/data/designs/ios-paramount-plus.md +400 -0
- package/dist/data/designs/ios-paypal-android.md +535 -0
- package/dist/data/designs/ios-paypal-expo.md +429 -0
- package/dist/data/designs/ios-paypal-swiftui.md +466 -0
- package/dist/data/designs/ios-paypal.md +393 -0
- package/dist/data/designs/ios-peacock-android.md +453 -0
- package/dist/data/designs/ios-peacock-expo.md +393 -0
- package/dist/data/designs/ios-peacock-swiftui.md +420 -0
- package/dist/data/designs/ios-peacock.md +411 -0
- package/dist/data/designs/ios-peloton-android.md +470 -0
- package/dist/data/designs/ios-peloton-expo.md +401 -0
- package/dist/data/designs/ios-peloton-swiftui.md +409 -0
- package/dist/data/designs/ios-peloton.md +415 -0
- package/dist/data/designs/ios-perplexity-android.md +553 -0
- package/dist/data/designs/ios-perplexity-expo.md +703 -0
- package/dist/data/designs/ios-perplexity-swiftui.md +602 -0
- package/dist/data/designs/ios-perplexity.md +453 -0
- package/dist/data/designs/ios-pinterest-android.md +551 -0
- package/dist/data/designs/ios-pinterest-expo.md +466 -0
- package/dist/data/designs/ios-pinterest-swiftui.md +464 -0
- package/dist/data/designs/ios-pinterest.md +427 -0
- package/dist/data/designs/ios-plenty-of-fish-android.md +462 -0
- package/dist/data/designs/ios-plenty-of-fish-expo.md +380 -0
- package/dist/data/designs/ios-plenty-of-fish-swiftui.md +429 -0
- package/dist/data/designs/ios-plenty-of-fish.md +387 -0
- package/dist/data/designs/ios-plex-android.md +403 -0
- package/dist/data/designs/ios-plex-expo.md +333 -0
- package/dist/data/designs/ios-plex-swiftui.md +349 -0
- package/dist/data/designs/ios-plex.md +379 -0
- package/dist/data/designs/ios-pluto-tv-android.md +413 -0
- package/dist/data/designs/ios-pluto-tv-expo.md +379 -0
- package/dist/data/designs/ios-pluto-tv-swiftui.md +411 -0
- package/dist/data/designs/ios-pluto-tv.md +362 -0
- package/dist/data/designs/ios-pocket-casts-android.md +492 -0
- package/dist/data/designs/ios-pocket-casts-expo.md +430 -0
- package/dist/data/designs/ios-pocket-casts-swiftui.md +479 -0
- package/dist/data/designs/ios-pocket-casts.md +427 -0
- package/dist/data/designs/ios-postman-android.md +472 -0
- package/dist/data/designs/ios-postman-expo.md +372 -0
- package/dist/data/designs/ios-postman-swiftui.md +377 -0
- package/dist/data/designs/ios-postman.md +405 -0
- package/dist/data/designs/ios-prime-video-android.md +447 -0
- package/dist/data/designs/ios-prime-video-expo.md +365 -0
- package/dist/data/designs/ios-prime-video-swiftui.md +333 -0
- package/dist/data/designs/ios-prime-video.md +351 -0
- package/dist/data/designs/ios-quora-android.md +513 -0
- package/dist/data/designs/ios-quora-expo.md +362 -0
- package/dist/data/designs/ios-quora-swiftui.md +375 -0
- package/dist/data/designs/ios-quora.md +359 -0
- package/dist/data/designs/ios-raya-android.md +401 -0
- package/dist/data/designs/ios-raya-expo.md +366 -0
- package/dist/data/designs/ios-raya-swiftui.md +393 -0
- package/dist/data/designs/ios-raya.md +366 -0
- package/dist/data/designs/ios-reddit-android.md +605 -0
- package/dist/data/designs/ios-reddit-expo.md +553 -0
- package/dist/data/designs/ios-reddit-swiftui.md +514 -0
- package/dist/data/designs/ios-reddit.md +460 -0
- package/dist/data/designs/ios-resy-android.md +430 -0
- package/dist/data/designs/ios-resy-expo.md +344 -0
- package/dist/data/designs/ios-resy-swiftui.md +330 -0
- package/dist/data/designs/ios-resy.md +412 -0
- package/dist/data/designs/ios-revolut-android.md +433 -0
- package/dist/data/designs/ios-revolut-expo.md +379 -0
- package/dist/data/designs/ios-revolut-swiftui.md +372 -0
- package/dist/data/designs/ios-revolut.md +353 -0
- package/dist/data/designs/ios-robinhood-android.md +587 -0
- package/dist/data/designs/ios-robinhood-expo.md +416 -0
- package/dist/data/designs/ios-robinhood-swiftui.md +431 -0
- package/dist/data/designs/ios-robinhood.md +380 -0
- package/dist/data/designs/ios-runna-android.md +485 -0
- package/dist/data/designs/ios-runna-expo.md +388 -0
- package/dist/data/designs/ios-runna-swiftui.md +413 -0
- package/dist/data/designs/ios-runna.md +390 -0
- package/dist/data/designs/ios-shazam-android.md +436 -0
- package/dist/data/designs/ios-shazam-expo.md +348 -0
- package/dist/data/designs/ios-shazam-swiftui.md +394 -0
- package/dist/data/designs/ios-shazam.md +338 -0
- package/dist/data/designs/ios-signal-android.md +462 -0
- package/dist/data/designs/ios-signal-expo.md +361 -0
- package/dist/data/designs/ios-signal-swiftui.md +350 -0
- package/dist/data/designs/ios-signal.md +357 -0
- package/dist/data/designs/ios-skype-android.md +398 -0
- package/dist/data/designs/ios-skype-expo.md +368 -0
- package/dist/data/designs/ios-skype-swiftui.md +369 -0
- package/dist/data/designs/ios-skype.md +406 -0
- package/dist/data/designs/ios-skyscanner-android.md +451 -0
- package/dist/data/designs/ios-skyscanner-expo.md +423 -0
- package/dist/data/designs/ios-skyscanner-swiftui.md +419 -0
- package/dist/data/designs/ios-skyscanner.md +421 -0
- package/dist/data/designs/ios-slack-android.md +695 -0
- package/dist/data/designs/ios-slack-expo.md +601 -0
- package/dist/data/designs/ios-slack-swiftui.md +594 -0
- package/dist/data/designs/ios-slack.md +474 -0
- package/dist/data/designs/ios-sleep-cycle-android.md +436 -0
- package/dist/data/designs/ios-sleep-cycle-expo.md +380 -0
- package/dist/data/designs/ios-sleep-cycle-swiftui.md +409 -0
- package/dist/data/designs/ios-sleep-cycle.md +386 -0
- package/dist/data/designs/ios-snapchat-android.md +671 -0
- package/dist/data/designs/ios-snapchat-expo.md +528 -0
- package/dist/data/designs/ios-snapchat-swiftui.md +557 -0
- package/dist/data/designs/ios-snapchat.md +478 -0
- package/dist/data/designs/ios-sofi-android.md +446 -0
- package/dist/data/designs/ios-sofi-expo.md +387 -0
- package/dist/data/designs/ios-sofi-swiftui.md +379 -0
- package/dist/data/designs/ios-sofi.md +385 -0
- package/dist/data/designs/ios-soundcloud-android.md +488 -0
- package/dist/data/designs/ios-soundcloud-expo.md +364 -0
- package/dist/data/designs/ios-soundcloud-swiftui.md +399 -0
- package/dist/data/designs/ios-soundcloud.md +359 -0
- package/dist/data/designs/ios-southwest-android.md +446 -0
- package/dist/data/designs/ios-southwest-expo.md +389 -0
- package/dist/data/designs/ios-southwest-swiftui.md +405 -0
- package/dist/data/designs/ios-southwest.md +405 -0
- package/dist/data/designs/ios-spotify-android.md +427 -0
- package/dist/data/designs/ios-spotify-expo.md +321 -0
- package/dist/data/designs/ios-spotify-swiftui.md +312 -0
- package/dist/data/designs/ios-spotify.md +366 -0
- package/dist/data/designs/ios-starbucks-android.md +622 -0
- package/dist/data/designs/ios-starbucks-expo.md +497 -0
- package/dist/data/designs/ios-starbucks-swiftui.md +500 -0
- package/dist/data/designs/ios-starbucks.md +440 -0
- package/dist/data/designs/ios-strava-android.md +656 -0
- package/dist/data/designs/ios-strava-expo.md +501 -0
- package/dist/data/designs/ios-strava-swiftui.md +465 -0
- package/dist/data/designs/ios-strava.md +433 -0
- package/dist/data/designs/ios-strong-android.md +479 -0
- package/dist/data/designs/ios-strong-expo.md +396 -0
- package/dist/data/designs/ios-strong-swiftui.md +363 -0
- package/dist/data/designs/ios-strong.md +415 -0
- package/dist/data/designs/ios-substack-android.md +440 -0
- package/dist/data/designs/ios-substack-expo.md +395 -0
- package/dist/data/designs/ios-substack-swiftui.md +371 -0
- package/dist/data/designs/ios-substack.md +372 -0
- package/dist/data/designs/ios-swiggy-android.md +549 -0
- package/dist/data/designs/ios-swiggy-expo.md +443 -0
- package/dist/data/designs/ios-swiggy-swiftui.md +471 -0
- package/dist/data/designs/ios-swiggy.md +432 -0
- package/dist/data/designs/ios-taco-bell-android.md +529 -0
- package/dist/data/designs/ios-taco-bell-expo.md +407 -0
- package/dist/data/designs/ios-taco-bell-swiftui.md +419 -0
- package/dist/data/designs/ios-taco-bell.md +430 -0
- package/dist/data/designs/ios-telegram-android.md +676 -0
- package/dist/data/designs/ios-telegram-expo.md +594 -0
- package/dist/data/designs/ios-telegram-swiftui.md +518 -0
- package/dist/data/designs/ios-telegram.md +458 -0
- package/dist/data/designs/ios-the-league-android.md +454 -0
- package/dist/data/designs/ios-the-league-expo.md +391 -0
- package/dist/data/designs/ios-the-league-swiftui.md +409 -0
- package/dist/data/designs/ios-the-league.md +368 -0
- package/dist/data/designs/ios-things-3-android.md +421 -0
- package/dist/data/designs/ios-things-3-expo.md +351 -0
- package/dist/data/designs/ios-things-3-swiftui.md +359 -0
- package/dist/data/designs/ios-things-3.md +339 -0
- package/dist/data/designs/ios-threads-android.md +588 -0
- package/dist/data/designs/ios-threads-expo.md +468 -0
- package/dist/data/designs/ios-threads-swiftui.md +452 -0
- package/dist/data/designs/ios-threads.md +424 -0
- package/dist/data/designs/ios-threema-android.md +496 -0
- package/dist/data/designs/ios-threema-expo.md +415 -0
- package/dist/data/designs/ios-threema-swiftui.md +446 -0
- package/dist/data/designs/ios-threema.md +397 -0
- package/dist/data/designs/ios-tidal-android.md +398 -0
- package/dist/data/designs/ios-tidal-expo.md +323 -0
- package/dist/data/designs/ios-tidal-swiftui.md +340 -0
- package/dist/data/designs/ios-tidal.md +351 -0
- package/dist/data/designs/ios-tiktok-android.md +654 -0
- package/dist/data/designs/ios-tiktok-expo.md +578 -0
- package/dist/data/designs/ios-tiktok-swiftui.md +595 -0
- package/dist/data/designs/ios-tiktok.md +387 -0
- package/dist/data/designs/ios-tinder-android.md +681 -0
- package/dist/data/designs/ios-tinder-expo.md +512 -0
- package/dist/data/designs/ios-tinder-swiftui.md +497 -0
- package/dist/data/designs/ios-tinder.md +415 -0
- package/dist/data/designs/ios-todoist-android.md +711 -0
- package/dist/data/designs/ios-todoist-expo.md +607 -0
- package/dist/data/designs/ios-todoist-swiftui.md +573 -0
- package/dist/data/designs/ios-todoist.md +418 -0
- package/dist/data/designs/ios-trello-android.md +412 -0
- package/dist/data/designs/ios-trello-expo.md +332 -0
- package/dist/data/designs/ios-trello-swiftui.md +359 -0
- package/dist/data/designs/ios-trello.md +344 -0
- package/dist/data/designs/ios-tripadvisor-android.md +450 -0
- package/dist/data/designs/ios-tripadvisor-expo.md +322 -0
- package/dist/data/designs/ios-tripadvisor-swiftui.md +326 -0
- package/dist/data/designs/ios-tripadvisor.md +356 -0
- package/dist/data/designs/ios-tubi-android.md +453 -0
- package/dist/data/designs/ios-tubi-expo.md +419 -0
- package/dist/data/designs/ios-tubi-swiftui.md +463 -0
- package/dist/data/designs/ios-tubi.md +383 -0
- package/dist/data/designs/ios-tumblr-android.md +462 -0
- package/dist/data/designs/ios-tumblr-expo.md +374 -0
- package/dist/data/designs/ios-tumblr-swiftui.md +380 -0
- package/dist/data/designs/ios-tumblr.md +337 -0
- package/dist/data/designs/ios-turo-android.md +500 -0
- package/dist/data/designs/ios-turo-expo.md +454 -0
- package/dist/data/designs/ios-turo-swiftui.md +447 -0
- package/dist/data/designs/ios-turo.md +392 -0
- package/dist/data/designs/ios-twitch-android.md +412 -0
- package/dist/data/designs/ios-twitch-expo.md +342 -0
- package/dist/data/designs/ios-twitch-swiftui.md +328 -0
- package/dist/data/designs/ios-twitch.md +354 -0
- package/dist/data/designs/ios-uber-android.md +637 -0
- package/dist/data/designs/ios-uber-eats-android.md +502 -0
- package/dist/data/designs/ios-uber-eats-expo.md +407 -0
- package/dist/data/designs/ios-uber-eats-swiftui.md +393 -0
- package/dist/data/designs/ios-uber-eats.md +353 -0
- package/dist/data/designs/ios-uber-expo.md +512 -0
- package/dist/data/designs/ios-uber-swiftui.md +483 -0
- package/dist/data/designs/ios-uber.md +395 -0
- package/dist/data/designs/ios-united-airlines-android.md +494 -0
- package/dist/data/designs/ios-united-airlines-expo.md +408 -0
- package/dist/data/designs/ios-united-airlines-swiftui.md +453 -0
- package/dist/data/designs/ios-united-airlines.md +388 -0
- package/dist/data/designs/ios-venmo-android.md +654 -0
- package/dist/data/designs/ios-venmo-expo.md +458 -0
- package/dist/data/designs/ios-venmo-swiftui.md +469 -0
- package/dist/data/designs/ios-venmo.md +436 -0
- package/dist/data/designs/ios-vercel-android.md +454 -0
- package/dist/data/designs/ios-vercel-expo.md +387 -0
- package/dist/data/designs/ios-vercel-swiftui.md +374 -0
- package/dist/data/designs/ios-vercel.md +399 -0
- package/dist/data/designs/ios-vero-android.md +498 -0
- package/dist/data/designs/ios-vero-expo.md +376 -0
- package/dist/data/designs/ios-vero-swiftui.md +374 -0
- package/dist/data/designs/ios-vero.md +394 -0
- package/dist/data/designs/ios-viber-android.md +377 -0
- package/dist/data/designs/ios-viber-expo.md +375 -0
- package/dist/data/designs/ios-viber-swiftui.md +378 -0
- package/dist/data/designs/ios-viber.md +403 -0
- package/dist/data/designs/ios-vimeo-android.md +465 -0
- package/dist/data/designs/ios-vimeo-expo.md +347 -0
- package/dist/data/designs/ios-vimeo-swiftui.md +383 -0
- package/dist/data/designs/ios-vimeo.md +403 -0
- package/dist/data/designs/ios-vrbo-android.md +488 -0
- package/dist/data/designs/ios-vrbo-expo.md +395 -0
- package/dist/data/designs/ios-vrbo-swiftui.md +421 -0
- package/dist/data/designs/ios-vrbo.md +383 -0
- package/dist/data/designs/ios-vsco-android.md +490 -0
- package/dist/data/designs/ios-vsco-expo.md +413 -0
- package/dist/data/designs/ios-vsco-swiftui.md +449 -0
- package/dist/data/designs/ios-vsco.md +412 -0
- package/dist/data/designs/ios-walmart-android.md +479 -0
- package/dist/data/designs/ios-walmart-expo.md +370 -0
- package/dist/data/designs/ios-walmart-swiftui.md +387 -0
- package/dist/data/designs/ios-walmart.md +366 -0
- package/dist/data/designs/ios-waze-android.md +695 -0
- package/dist/data/designs/ios-waze-expo.md +587 -0
- package/dist/data/designs/ios-waze-swiftui.md +601 -0
- package/dist/data/designs/ios-waze.md +453 -0
- package/dist/data/designs/ios-webull-android.md +429 -0
- package/dist/data/designs/ios-webull-expo.md +384 -0
- package/dist/data/designs/ios-webull-swiftui.md +406 -0
- package/dist/data/designs/ios-webull.md +375 -0
- package/dist/data/designs/ios-wechat-android.md +545 -0
- package/dist/data/designs/ios-wechat-expo.md +398 -0
- package/dist/data/designs/ios-wechat-swiftui.md +394 -0
- package/dist/data/designs/ios-wechat.md +363 -0
- package/dist/data/designs/ios-whatsapp-android.md +568 -0
- package/dist/data/designs/ios-whatsapp-expo.md +502 -0
- package/dist/data/designs/ios-whatsapp-swiftui.md +483 -0
- package/dist/data/designs/ios-whatsapp.md +425 -0
- package/dist/data/designs/ios-whoop-android.md +635 -0
- package/dist/data/designs/ios-whoop-expo.md +562 -0
- package/dist/data/designs/ios-whoop-swiftui.md +553 -0
- package/dist/data/designs/ios-whoop.md +419 -0
- package/dist/data/designs/ios-wise-android.md +428 -0
- package/dist/data/designs/ios-wise-expo.md +357 -0
- package/dist/data/designs/ios-wise-swiftui.md +356 -0
- package/dist/data/designs/ios-wise.md +361 -0
- package/dist/data/designs/ios-x-twitter-android.md +618 -0
- package/dist/data/designs/ios-x-twitter-expo.md +442 -0
- package/dist/data/designs/ios-x-twitter-swiftui.md +429 -0
- package/dist/data/designs/ios-x-twitter.md +432 -0
- package/dist/data/designs/ios-yelp-android.md +455 -0
- package/dist/data/designs/ios-yelp-expo.md +397 -0
- package/dist/data/designs/ios-yelp-swiftui.md +369 -0
- package/dist/data/designs/ios-yelp.md +398 -0
- package/dist/data/designs/ios-youtube-android.md +668 -0
- package/dist/data/designs/ios-youtube-expo.md +435 -0
- package/dist/data/designs/ios-youtube-music-android.md +450 -0
- package/dist/data/designs/ios-youtube-music-expo.md +404 -0
- package/dist/data/designs/ios-youtube-music-swiftui.md +434 -0
- package/dist/data/designs/ios-youtube-music.md +381 -0
- package/dist/data/designs/ios-youtube-swiftui.md +496 -0
- package/dist/data/designs/ios-youtube.md +466 -0
- package/dist/data/designs/ios-zalo-android.md +510 -0
- package/dist/data/designs/ios-zalo-expo.md +389 -0
- package/dist/data/designs/ios-zalo-swiftui.md +431 -0
- package/dist/data/designs/ios-zalo.md +388 -0
- package/dist/data/designs/ios-zomato-android.md +527 -0
- package/dist/data/designs/ios-zomato-expo.md +437 -0
- package/dist/data/designs/ios-zomato-swiftui.md +433 -0
- package/dist/data/designs/ios-zomato.md +439 -0
- package/dist/data/designs/ios-zoom-android.md +423 -0
- package/dist/data/designs/ios-zoom-expo.md +355 -0
- package/dist/data/designs/ios-zoom-swiftui.md +379 -0
- package/dist/data/designs/ios-zoom.md +357 -0
- package/dist/data/designs/ios-zwift-android.md +402 -0
- package/dist/data/designs/ios-zwift-expo.md +402 -0
- package/dist/data/designs/ios-zwift-swiftui.md +378 -0
- package/dist/data/designs/ios-zwift.md +411 -0
- package/dist/data/designs/kraken.md +125 -0
- package/dist/data/designs/lamborghini.md +288 -0
- package/dist/data/designs/linear.app.md +548 -0
- package/dist/data/designs/lovable.md +298 -0
- package/dist/data/designs/mastercard.md +365 -0
- package/dist/data/designs/material-clean.md +289 -0
- package/dist/data/designs/meta.md +683 -0
- package/dist/data/designs/midnight-pro.md +256 -0
- package/dist/data/designs/minimal-brutalist.md +245 -0
- package/dist/data/designs/minimax.md +746 -0
- package/dist/data/designs/mintlify.md +852 -0
- package/dist/data/designs/miro.md +825 -0
- package/dist/data/designs/mistral.ai.md +773 -0
- package/dist/data/designs/mongodb.md +767 -0
- package/dist/data/designs/nike.md +575 -0
- package/dist/data/designs/nintendo-2001.md +649 -0
- package/dist/data/designs/notion.md +821 -0
- package/dist/data/designs/nova-mobile-design-md.md +235 -0
- package/dist/data/designs/nvidia.md +640 -0
- package/dist/data/designs/ollama.md +539 -0
- package/dist/data/designs/opencode.ai.md +521 -0
- package/dist/data/designs/pinterest.md +597 -0
- package/dist/data/designs/playful-color.md +253 -0
- package/dist/data/designs/playstation.md +661 -0
- package/dist/data/designs/posthog.md +690 -0
- package/dist/data/designs/raycast.md +669 -0
- package/dist/data/designs/renault.md +589 -0
- package/dist/data/designs/replicate.md +616 -0
- package/dist/data/designs/resend.md +585 -0
- package/dist/data/designs/revolut.md +636 -0
- package/dist/data/designs/runwayml.md +244 -0
- package/dist/data/designs/sanity.md +357 -0
- package/dist/data/designs/sentry.md +551 -0
- package/dist/data/designs/shopify.md +516 -0
- package/dist/data/designs/slack.md +482 -0
- package/dist/data/designs/soft-glass.md +258 -0
- package/dist/data/designs/spacex.md +363 -0
- package/dist/data/designs/spotify.md +246 -0
- package/dist/data/designs/starbucks.md +580 -0
- package/dist/data/designs/stripe.md +487 -0
- package/dist/data/designs/supabase.md +462 -0
- package/dist/data/designs/superhuman.md +448 -0
- package/dist/data/designs/tesla.md +286 -0
- package/dist/data/designs/theverge.md +339 -0
- package/dist/data/designs/together.ai.md +633 -0
- package/dist/data/designs/uber.md +636 -0
- package/dist/data/designs/vercel.md +736 -0
- package/dist/data/designs/vodafone.md +538 -0
- package/dist/data/designs/voltagent.md +521 -0
- package/dist/data/designs/warp.md +526 -0
- package/dist/data/designs/webflow.md +588 -0
- package/dist/data/designs/wired.md +497 -0
- package/dist/data/designs/wise.md +544 -0
- package/dist/data/designs/x.ai.md +465 -0
- package/dist/data/designs/zapier.md +537 -0
- package/dist/data/index.json +2600 -0
- package/dist/httpServer.js +83 -0
- package/dist/index.js +13 -0
- package/dist/server.js +32 -0
- package/dist/services/designStore.js +59 -0
- package/dist/services/linter.js +87 -0
- package/dist/services/sectionParser.js +154 -0
- package/dist/tools/authoring.js +131 -0
- package/dist/tools/browse.js +232 -0
- package/dist/tools/diff.js +88 -0
- package/dist/tools/getDesign.js +216 -0
- package/dist/tools/guardrails.js +87 -0
- package/dist/tools/lint.js +104 -0
- package/dist/types.js +1 -0
- package/package.json +65 -0
|
@@ -0,0 +1,393 @@
|
|
|
1
|
+
# Design System Inspiration of DeepSeek (iOS)
|
|
2
|
+
|
|
3
|
+
## 1. Visual Theme & Atmosphere
|
|
4
|
+
|
|
5
|
+
DeepSeek's iOS app is a focused, near-monochrome chat interface organized around one idea: **show the model thinking before it answers**. The canvas is a deep near-black (`#0E0E10` in dark; a clean white `#FFFFFF` in light), and the only saturated color anywhere is **DeepSeek Blue** (`#4D6BFE`) — a vivid indigo-blue that appears on the whale logomark, the user's message bubble, the send button, and the active **DeepThink (R1)** / **Search** toggles. Everything else is a restrained grey ramp. The result feels like a research tool: serious, quiet, and engineered to make the *reasoning* the spectacle rather than the chrome.
|
|
6
|
+
|
|
7
|
+
The signature interaction — and the thing that must be reproduced faithfully — is the **reasoning trace**. When DeepThink (R1) is enabled, the assistant's reply is preceded by a collapsible **reasoning panel**: a recessed surface (`#16171A` in dark — deliberately *darker* than the canvas) with a 2pt DeepSeek-Blue left-bar, a header that reads "Thought for N seconds · tap to collapse", and the model's chain-of-thought rendered in **dimmed italic** (`#8A8B90`). Below the panel sits the final answer in full-contrast text (`#ECECEC`). The visual hierarchy is intentional: the reasoning is present but subordinate; the answer is primary. Tapping the header collapses the trace to a single line. This "thinking-then-answering" pattern is DeepSeek's entire identity.
|
|
8
|
+
|
|
9
|
+
The second pillar is the **two-toggle composer**. Above the input pill sit two pill toggles: **DeepThink (R1)** — switches from the fast V3 model to the R1 reasoning model (which produces the trace) — and **Search** — grounds the answer in live web results with inline citations. When active, a toggle fills with a soft blue tint (`#1E2240`), a blue border (`#4D6BFE`), and blue text/icon. These two toggles are the primary controls of the product; the input field itself is a quiet rounded pill.
|
|
10
|
+
|
|
11
|
+
Typography is the platform sans (Inter as the open fallback, SF Pro on device) — no custom display face. Message body is 15pt regular; the reasoning trace is 13pt **italic** (the italicization is a deliberate "this is internal monologue" signal); code is monospace on a `#232428` chip with a faintly blue-tinted token color (`#C5CDFF`). The type system is conventional on purpose: DeepSeek's personality lives in the reasoning trace and the single electric blue, not in the letterforms.
|
|
12
|
+
|
|
13
|
+
**Key Characteristics:**
|
|
14
|
+
- Near-black canvas (`#0E0E10`) dark / white (`#FFFFFF`) light — quiet, research-tool calm
|
|
15
|
+
- Single accent: DeepSeek Blue `#4D6BFE` — whale mark, user bubble, send button, active toggles only
|
|
16
|
+
- Reasoning trace — collapsible recessed panel (`#16171A`) with a blue left-bar, chain-of-thought in dimmed italic, subordinate to the answer
|
|
17
|
+
- "Thought for N seconds" header — tap to collapse/expand the trace
|
|
18
|
+
- DeepThink (R1) toggle — switches V3 (fast) → R1 (reasoning, produces the trace)
|
|
19
|
+
- Search toggle — grounds answers in web results with inline citations
|
|
20
|
+
- User bubble: soft-blue fill (`#1E2240`) with asymmetric corner (18/18/4/18); AI replies: no bubble, full-width
|
|
21
|
+
- Whale logomark — the brand glyph, always in DeepSeek Blue
|
|
22
|
+
- Monospace code chips with a blue-tinted token color (`#C5CDFF`)
|
|
23
|
+
- Minimal chrome: bottom tabs (Chat / History / Settings), thin top bar with the whale wordmark
|
|
24
|
+
|
|
25
|
+
## 2. Color Palette & Roles
|
|
26
|
+
|
|
27
|
+
### Primary (Interactive)
|
|
28
|
+
- **DeepSeek Blue** (`#4D6BFE`): The single accent — whale logomark, send button, active toggle border/text/icon, links, primary CTA fill.
|
|
29
|
+
- **DeepSeek Blue Pressed** (`#3B57E0`): Pressed state of blue-filled buttons.
|
|
30
|
+
- **DeepSeek Blue Soft** (`#1E2240` dark / `#EBEFFF` light): User-bubble fill, active-toggle fill, soft-button background.
|
|
31
|
+
- **Blue Token** (`#C5CDFF` dark / `#3B57E0` light): Inline-code token color (a blue-tinted mono).
|
|
32
|
+
|
|
33
|
+
### Canvas & Surfaces (Dark)
|
|
34
|
+
- **Canvas** (`#0E0E10`): Primary dark canvas — near-black, faintly cool.
|
|
35
|
+
- **Surface 1** (`#1A1B1E`): Composer field, toggle resting background, cards, sections.
|
|
36
|
+
- **Surface 2** (`#232428`): Code chips, raised rows, hovered surfaces.
|
|
37
|
+
- **Surface 3** (`#2C2D31`): Pressed surface, menu rows.
|
|
38
|
+
- **Reasoning BG** (`#16171A`): The reasoning-trace panel — intentionally *darker* than the canvas to recede.
|
|
39
|
+
- **Divider** (`#2E2F33`): Hairline dividers, input/toggle borders.
|
|
40
|
+
|
|
41
|
+
### Canvas & Surfaces (Light)
|
|
42
|
+
- **Canvas White** (`#FFFFFF`): Primary light canvas.
|
|
43
|
+
- **Surface 1 Light** (`#F5F6F8`): Composer field, cards.
|
|
44
|
+
- **Surface 2 Light** (`#ECEEF2`): Code chips, raised rows.
|
|
45
|
+
- **Reasoning BG Light** (`#F7F8FA`): Reasoning-trace panel (slightly off-white to recede).
|
|
46
|
+
- **Divider Light** (`#E4E6EB`): Hairlines, borders.
|
|
47
|
+
|
|
48
|
+
### Text
|
|
49
|
+
- **Text Primary** (`#ECECEC` dark / `#1A1B1E` light): Final answer, message body, titles.
|
|
50
|
+
- **Text Secondary** (`#9A9BA0` dark / `#6A6B70` light): Metadata ("Thought for N seconds"), model name, sub-labels.
|
|
51
|
+
- **Text Tertiary** (`#6A6B70` dark / `#9A9BA0` light): Placeholder, disabled.
|
|
52
|
+
- **Reasoning Text** (`#8A8B90` dark / `#6E6F74` light): Chain-of-thought inside the trace — dimmed, italic.
|
|
53
|
+
|
|
54
|
+
### Semantic
|
|
55
|
+
- **Success Green** (`#2EBD85`): "Copied", positive feedback (thumbs-up filled).
|
|
56
|
+
- **Error Red** (`#E5484D`): Failed generation, network error, stop.
|
|
57
|
+
- **Citation Blue** (`#4D6BFE`): Inline web-search citation chips `[1] [2]` when Search is on.
|
|
58
|
+
- **Stop Red** (`#E5484D`): Stop-generating button while streaming.
|
|
59
|
+
|
|
60
|
+
### Color Usage Rules
|
|
61
|
+
| Token | Dark | Light | Where |
|
|
62
|
+
|-------|------|-------|-------|
|
|
63
|
+
| Canvas | `#0E0E10` | `#FFFFFF` | Behind everything |
|
|
64
|
+
| Surface 1 | `#1A1B1E` | `#F5F6F8` | Composer, cards |
|
|
65
|
+
| Reasoning BG | `#16171A` | `#F7F8FA` | The reasoning trace panel |
|
|
66
|
+
| Divider | `#2E2F33` | `#E4E6EB` | Hairlines, borders |
|
|
67
|
+
| DeepSeek Blue | `#4D6BFE` | `#4D6BFE` | Whale, send, active toggle, links |
|
|
68
|
+
| Blue Soft | `#1E2240` | `#EBEFFF` | User bubble, active toggle fill |
|
|
69
|
+
| Text primary | `#ECECEC` | `#1A1B1E` | Answer, body |
|
|
70
|
+
| Reasoning text | `#8A8B90` | `#6E6F74` | Chain-of-thought (italic) |
|
|
71
|
+
|
|
72
|
+
## 3. Typography Rules
|
|
73
|
+
|
|
74
|
+
### Font Family
|
|
75
|
+
- **Primary**: System sans — **SF Pro Text / SF Pro Display** on iOS; `Inter` (by Rasmus Andersson, SIL OFL) as the open/web fallback. No custom display face.
|
|
76
|
+
- **Monospace**: `SF Mono` on iOS (`'SF Mono', ui-monospace, Menlo, monospace`) — code blocks/chips and any verbatim tokens.
|
|
77
|
+
- **Fallback Stack**: `-apple-system, BlinkMacSystemFont, 'Inter', 'Segoe UI', Roboto, Helvetica, Arial, sans-serif`
|
|
78
|
+
|
|
79
|
+
### Hierarchy
|
|
80
|
+
|
|
81
|
+
| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
|
|
82
|
+
|------|------|------|--------|-------------|----------------|-------|
|
|
83
|
+
| Screen Title | Inter / SF Pro | 32pt | 800 | 1.15 | -0.4pt | App title / large nav |
|
|
84
|
+
| Empty-State Headline | Inter / SF Pro | 26pt | 700 | 1.25 | -0.3pt | "How can I help today?" |
|
|
85
|
+
| Section Heading | Inter / SF Pro | 18pt | 700 | 1.3 | -0.2pt | History date groups |
|
|
86
|
+
| Message Body | Inter / SF Pro | 15pt | 400 | 1.6 | 0pt | User & assistant text |
|
|
87
|
+
| Toggle / Action | Inter / SF Pro | 15pt | 600 | 1.0 | 0pt | DeepThink, Search, primary action |
|
|
88
|
+
| Card / List Title | Inter / SF Pro | 15pt | 600 | 1.3 | 0pt | History conversation titles |
|
|
89
|
+
| Reasoning Trace | Inter / SF Pro | 13pt | 400 *italic* | 1.55 | 0pt | Chain-of-thought — dimmed italic |
|
|
90
|
+
| Metadata | Inter / SF Pro | 14pt | 400 | 1.4 | 0pt | "Thought for 14 seconds" |
|
|
91
|
+
| Caption | Inter / SF Pro | 12pt | 500 | 1.3 | 0pt | Model name, timestamps |
|
|
92
|
+
| Code Inline | SF Mono | 13pt | 400 | 1.4 | 0pt | `inline code` — blue token `#C5CDFF` |
|
|
93
|
+
| Code Block | SF Mono | 13pt | 400 | 1.5 | 0pt | Fenced code blocks |
|
|
94
|
+
| Citation Chip | SF Mono | 11pt | 600 | 1.0 | 0pt | `[1] [2]` web-search citations |
|
|
95
|
+
| Tab Label | Inter / SF Pro | 10pt | 500 | 1.0 | 0.1pt | Bottom tab labels |
|
|
96
|
+
| Placeholder | Inter / SF Pro | 15pt | 400 | 1.4 | 0pt | "Message DeepSeek" |
|
|
97
|
+
|
|
98
|
+
### Principles
|
|
99
|
+
- **Reasoning is italic, answer is upright**: the chain-of-thought is always italic and dimmed (`#8A8B90`); the final answer is upright and full-contrast (`#ECECEC`). The italic *is* the "this is internal monologue" signal — never render the trace upright.
|
|
100
|
+
- **Weight concentrated at 400 / 500 / 600 / 700 / 800**: regular body, medium captions, semibold toggles/actions, bold headings, extrabold title. No thin, no light.
|
|
101
|
+
- **One accent, used sparingly**: blue appears on the whale, user bubble, send, active toggles, links, citations — nowhere else. Body text is never blue.
|
|
102
|
+
- **Conventional letterforms by design**: personality lives in the reasoning trace and the single blue, not the typeface.
|
|
103
|
+
- **Dynamic Type**: message body, headings, reasoning text scale; tab labels, citation chips, toggle text stay fixed.
|
|
104
|
+
|
|
105
|
+
## 4. Component Stylings
|
|
106
|
+
|
|
107
|
+
### Buttons
|
|
108
|
+
|
|
109
|
+
**Primary Button (New chat / Send action)**
|
|
110
|
+
- Shape: Full pill, 999pt corner radius (or 50% circle for the composer send)
|
|
111
|
+
- Background: `#4D6BFE` (DeepSeek Blue)
|
|
112
|
+
- Text / icon: `#FFFFFF`
|
|
113
|
+
- Padding: 14pt vertical, 28pt horizontal (pill); 36pt circle for send
|
|
114
|
+
- Font: Inter 15–16pt weight 600
|
|
115
|
+
- Pressed: background `#3B57E0` + scale 0.98
|
|
116
|
+
- Disabled (empty input): background `#232428`, icon `#6A6B70`
|
|
117
|
+
|
|
118
|
+
**Secondary / Outline Button (Regenerate)**
|
|
119
|
+
- Background: transparent
|
|
120
|
+
- Text: `#ECECEC`
|
|
121
|
+
- Border: 1pt `#2E2F33`
|
|
122
|
+
- Corner radius: 999pt
|
|
123
|
+
- Padding: 12pt vertical, 20pt horizontal
|
|
124
|
+
- Font: Inter 14pt weight 500
|
|
125
|
+
- Pressed: background `#1A1B1E`
|
|
126
|
+
|
|
127
|
+
**Soft Button (Continue reasoning / inline secondary)**
|
|
128
|
+
- Background: `#1E2240` (Blue Soft)
|
|
129
|
+
- Text / icon: `#4D6BFE`
|
|
130
|
+
- Border: 1pt `#2A3360`
|
|
131
|
+
- Corner radius: 999pt
|
|
132
|
+
- Padding: 10pt vertical, 18pt horizontal
|
|
133
|
+
- Font: Inter 14pt weight 600
|
|
134
|
+
|
|
135
|
+
**Text Button (Clear conversation / Delete)**
|
|
136
|
+
- Font: Inter 14pt weight 500
|
|
137
|
+
- Color: `#9A9BA0` (or `#E5484D` for destructive)
|
|
138
|
+
- No background, no border
|
|
139
|
+
- Pressed: color → `#ECECEC`
|
|
140
|
+
|
|
141
|
+
### Toggle Pills (the core control)
|
|
142
|
+
|
|
143
|
+
**DeepThink (R1) / Search Toggle**
|
|
144
|
+
- Shape: pill, 999pt corner radius
|
|
145
|
+
- Off: background `#1A1B1E`, border 1pt `#2E2F33`, text/icon `#9A9BA0`
|
|
146
|
+
- On: background `#1E2240` (Blue Soft), border 1pt `#4D6BFE`, text/icon `#4D6BFE`
|
|
147
|
+
- Leading icon: 14pt (brain glyph for DeepThink, magnifier for Search)
|
|
148
|
+
- Font: Inter 13pt weight 600
|
|
149
|
+
- Padding: 7pt vertical, 13pt horizontal
|
|
150
|
+
- Transition: 150ms ease — fill + border + content color crossfade
|
|
151
|
+
- DeepThink ON ⇒ replies include the reasoning trace; Search ON ⇒ replies include `[n]` citations
|
|
152
|
+
|
|
153
|
+
### Reasoning Trace (signature component)
|
|
154
|
+
|
|
155
|
+
The defining element of DeepSeek. When DeepThink (R1) is on, every assistant reply is preceded by this panel.
|
|
156
|
+
|
|
157
|
+
- Container: `#16171A` (dark) / `#F7F8FA` (light) — intentionally recessed vs. canvas
|
|
158
|
+
- Left bar: 2pt solid `#4D6BFE` (DeepSeek Blue), full-height
|
|
159
|
+
- Corner radius: 10pt
|
|
160
|
+
- Padding: 12pt vertical, 14–16pt horizontal
|
|
161
|
+
- Header row: brain glyph (14pt `#4D6BFE`) + "Thought for N seconds" (Inter 12pt w600 `#9A9BA0`) + "· tap to collapse" (`#6A6B70`)
|
|
162
|
+
- Body: chain-of-thought in Inter 13pt **w400 italic** `#8A8B90`, line-height 1.55
|
|
163
|
+
- Collapsed state: header only (single line); expands with a 200ms height animation + chevron
|
|
164
|
+
- While streaming: the trace types in live (token-by-token) with a blinking caret; the duration counts up
|
|
165
|
+
- Subordination rule: the trace is always *visually quieter* than the answer below it — dimmer text, recessed background, smaller size
|
|
166
|
+
|
|
167
|
+
### Message Bubbles
|
|
168
|
+
|
|
169
|
+
**User Message**
|
|
170
|
+
- Background: `#1E2240` (Blue Soft), border 1pt `#2A3360`
|
|
171
|
+
- Text: `#ECECEC`, Inter 15pt w400, line-height 1.5
|
|
172
|
+
- Corner radius: asymmetric `18 / 18 / 4 / 18` (the 4pt corner points to the sender, bottom-right)
|
|
173
|
+
- Padding: 12pt vertical, 16pt horizontal
|
|
174
|
+
- Max width: 78% of content width, right-aligned
|
|
175
|
+
|
|
176
|
+
**Assistant Message**
|
|
177
|
+
- No bubble — full content width, left-aligned
|
|
178
|
+
- Header: whale glyph (18pt `#4D6BFE`) + model name ("DeepSeek-R1" / "DeepSeek-V3", Inter 13pt w600 `#9A9BA0`)
|
|
179
|
+
- Body: `#ECECEC`, Inter 15pt w400, line-height 1.6
|
|
180
|
+
- Action row below: copy, thumbs-up, thumbs-down, regenerate, share — 16pt glyphs `#6A6B70`
|
|
181
|
+
- Code blocks: `#232428` background, 8pt radius, SF Mono 13pt, blue token `#C5CDFF`, "Copy" affordance top-right
|
|
182
|
+
|
|
183
|
+
### Composer (signature input)
|
|
184
|
+
|
|
185
|
+
- Toggle row on top: DeepThink (R1) + Search pills (see Toggle Pills), 8pt gap, 8pt bottom margin
|
|
186
|
+
- Input pill: 50pt tall, `#1A1B1E` background, 1pt `#2E2F33` border, 25pt corner radius
|
|
187
|
+
- Leading 18pt inset, placeholder "Message DeepSeek" in `#6A6B70`
|
|
188
|
+
- Trailing: 36pt circular send button — `#4D6BFE` fill, `#FFFFFF` up-arrow glyph (turns into a red `#E5484D` stop square while streaming)
|
|
189
|
+
- Attach (+) affordance optional at the leading edge for image/file upload
|
|
190
|
+
- On focus: border brightens to `#3A3B40`
|
|
191
|
+
|
|
192
|
+
### Navigation
|
|
193
|
+
|
|
194
|
+
**Bottom Tab Bar**
|
|
195
|
+
- Height: 68pt + safe area
|
|
196
|
+
- Background: `rgba(14,14,16,0.94)` with `backdrop-filter: blur(20px)`, 0.5pt top border `#2E2F33`
|
|
197
|
+
- Tabs (3): Chat, History, Settings
|
|
198
|
+
- Icon size: 22pt
|
|
199
|
+
- Active: glyph + label `#4D6BFE` (the single accent), slightly thicker stroke
|
|
200
|
+
- Inactive: `#6A6B70`
|
|
201
|
+
- Labels: Inter 10pt w500, always shown
|
|
202
|
+
|
|
203
|
+
**Top Bar**
|
|
204
|
+
- Height: 44pt + safe area
|
|
205
|
+
- Leading: hamburger / history icon (22pt `#9A9BA0`)
|
|
206
|
+
- Center: whale glyph (22pt `#4D6BFE`) + "DeepSeek" wordmark (Inter 16pt w700; "Seek" tinted `#4D6BFE`)
|
|
207
|
+
- Trailing: new-chat (+) icon (22pt `#9A9BA0`)
|
|
208
|
+
|
|
209
|
+
### Input Fields
|
|
210
|
+
|
|
211
|
+
**Search Bar (History)**
|
|
212
|
+
- Height: 44pt
|
|
213
|
+
- Background: `#1A1B1E`, no border
|
|
214
|
+
- Corner radius: 10pt
|
|
215
|
+
- Leading `magnifyingglass` 18pt `#6A6B70`
|
|
216
|
+
- Placeholder "Search chats" 14pt `#6A6B70`
|
|
217
|
+
- Focus: 1pt `#4D6BFE` border
|
|
218
|
+
|
|
219
|
+
### Distinctive Components
|
|
220
|
+
|
|
221
|
+
**Reasoning Trace Panel** — see above; the product's signature.
|
|
222
|
+
|
|
223
|
+
**DeepThink / Search Toggle Pair** — the primary controls; soft-blue active state.
|
|
224
|
+
|
|
225
|
+
**Streaming Answer with Live Trace**
|
|
226
|
+
- The reasoning panel types in token-by-token first (duration counting up), then the upright answer streams below it. A blinking blue caret marks the active position.
|
|
227
|
+
|
|
228
|
+
**Web-Search Citation Chips**
|
|
229
|
+
- When Search is on, inline `[1] [2]` chips in SF Mono 11pt w600 `#4D6BFE` on a faint `#1E2240` pill; tapping opens a source sheet listing titles + domains.
|
|
230
|
+
|
|
231
|
+
**Model Switcher**
|
|
232
|
+
- A small pill in the empty state / settings to pick DeepSeek-V3 (fast) vs DeepSeek-R1 (reasoning). R1 implies the trace.
|
|
233
|
+
|
|
234
|
+
**Empty State**
|
|
235
|
+
- Centered whale glyph (44pt `#4D6BFE`) + "How can I help today?" (26pt w700) + 3–4 example-prompt chips (`#1A1B1E`, 1pt `#2E2F33`, pill)
|
|
236
|
+
|
|
237
|
+
**Code Block**
|
|
238
|
+
- `#232428` background, 8pt radius, language label top-left (`#6A6B70` 11pt), "Copy" top-right, SF Mono 13pt body with blue-tinted tokens
|
|
239
|
+
|
|
240
|
+
## 5. Layout Principles
|
|
241
|
+
|
|
242
|
+
### Spacing System
|
|
243
|
+
- Base unit: 4pt — scale: 4, 8, 10, 12, 16, 18, 24, 32, 48
|
|
244
|
+
- Message vertical gap: 18pt
|
|
245
|
+
- Reasoning-panel internal padding: 12/14pt; gap to answer: 10pt
|
|
246
|
+
- Screen horizontal inset: 16pt
|
|
247
|
+
|
|
248
|
+
### Grid & Container
|
|
249
|
+
- iPhone: chat at 16pt horizontal insets; user bubble max 78% right-aligned; assistant full-width
|
|
250
|
+
- iPad: chat column centered, max-width 720pt; History becomes a 2-pane (list + chat)
|
|
251
|
+
- Composer pinned to bottom; toggle row sits directly above the input pill
|
|
252
|
+
- Reasoning panel spans the full assistant content width (no extra inset)
|
|
253
|
+
|
|
254
|
+
### Whitespace Philosophy
|
|
255
|
+
- **Calm and recessive**: surfaces differ by only a few percent luminance; the reasoning panel is *darker* than the canvas so it reads as "behind/internal"
|
|
256
|
+
- **Answer-forward**: the most contrast in the screen is on the final answer (`#ECECEC` on `#0E0E10`); reasoning is deliberately lower-contrast
|
|
257
|
+
- **One spark of color**: blue is rationed — its rarity is what makes the toggles and citations legible
|
|
258
|
+
- **Generous line-height**: 1.6 on the answer for long-form reading; 1.55 on the (smaller) trace
|
|
259
|
+
|
|
260
|
+
### Border Radius Scale
|
|
261
|
+
- Square (0pt): dividers, full-bleed media
|
|
262
|
+
- Subtle (4pt): inline code chips, the bubble's sender-pointing corner
|
|
263
|
+
- Small (8pt): code blocks, source-sheet rows
|
|
264
|
+
- Standard (10pt): reasoning panel, search bar, cards
|
|
265
|
+
- Bubble (18pt): user message bubble (3 corners)
|
|
266
|
+
- Composer (25pt): the input pill
|
|
267
|
+
- Pill (999pt): toggles, primary buttons, citation chips
|
|
268
|
+
- Circle (50%): send button, avatars
|
|
269
|
+
|
|
270
|
+
## 6. Depth & Elevation
|
|
271
|
+
|
|
272
|
+
DeepSeek is flat and recessive. Depth is conveyed by *recession* (the trace sits visually behind) more than by elevation.
|
|
273
|
+
|
|
274
|
+
| Level | Treatment | Use |
|
|
275
|
+
|-------|-----------|-----|
|
|
276
|
+
| Recessed (Level -1) | `#16171A` (darker than canvas) + 2pt blue left-bar | Reasoning trace panel |
|
|
277
|
+
| Flat (Level 0) | No shadow | Messages, composer, content |
|
|
278
|
+
| Hairline (Level 1) | 1pt `#2E2F33` border | Composer, toggles, cards, code blocks |
|
|
279
|
+
| Floating (Level 2) | `rgba(0,0,0,0.5) 0 8px 24px` + 1pt `#2E2F33` | Source sheet, model menu, bottom sheets |
|
|
280
|
+
| Scrim (Level 3) | `rgba(0,0,0,0.6)` overlay | Behind modals and sheets |
|
|
281
|
+
|
|
282
|
+
**Shadow Philosophy**: On near-black, shadows barely register, so a 1pt `#2E2F33` border is the primary "this is a distinct surface" cue. The reasoning trace inverts the usual logic — it uses a *darker* fill (not a shadow) to communicate "this is the model's inner monologue, behind the answer." Sheets get a faint shadow plus a border.
|
|
283
|
+
|
|
284
|
+
### Motion
|
|
285
|
+
- **Toggle on/off**: fill + border + content color crossfade over 150ms ease; soft haptic on engage
|
|
286
|
+
- **Reasoning stream**: trace text types in token-by-token (~30–60 tok/s feel), duration label counts up live; a blue caret blinks at the cursor
|
|
287
|
+
- **Trace collapse/expand**: chevron rotates 90° in 150ms; panel height animates 0 ↔ auto over 200ms ease-out
|
|
288
|
+
- **Answer stream**: upright answer types in below the trace after reasoning completes; same caret hands off
|
|
289
|
+
- **Send**: send button scales 1 → 0.94 → 1 (120ms) then morphs to a red stop-square while streaming; reverts on completion
|
|
290
|
+
- **Message append**: new user bubble slides up + fades in over 200ms ease-out
|
|
291
|
+
- **Citation tap**: source sheet slides up 300ms ease-out
|
|
292
|
+
- **Tab change**: instant color swap (no slide)
|
|
293
|
+
- **Haptic feedback**: soft impact on toggle engage and send; success haptic on copy
|
|
294
|
+
|
|
295
|
+
## 7. Do's and Don'ts
|
|
296
|
+
|
|
297
|
+
### Do
|
|
298
|
+
- Use a near-black `#0E0E10` canvas (dark) / clean `#FFFFFF` (light) — quiet research-tool calm
|
|
299
|
+
- Ration DeepSeek Blue `#4D6BFE` to the whale, user bubble, send, active toggles, links, citations
|
|
300
|
+
- Render the reasoning trace in a recessed `#16171A` panel with a 2pt blue left-bar
|
|
301
|
+
- Keep the chain-of-thought dimmed italic `#8A8B90` — italic IS the "internal monologue" signal
|
|
302
|
+
- Keep the answer upright and full-contrast `#ECECEC` — visually dominant over the trace
|
|
303
|
+
- Make the trace collapsible with a "Thought for N seconds · tap to collapse" header
|
|
304
|
+
- Use soft-blue active state (`#1E2240` fill + `#4D6BFE` border) for DeepThink / Search toggles
|
|
305
|
+
- Give the user bubble the asymmetric `18/18/4/18` corner (4pt points at the sender)
|
|
306
|
+
- Stream the trace token-by-token with a live duration counter, then the answer
|
|
307
|
+
- Show `[n]` citation chips when Search is on; open a source sheet on tap
|
|
308
|
+
|
|
309
|
+
### Don't
|
|
310
|
+
- Don't render the reasoning trace upright or full-contrast — it must be dimmer/italic/recessed
|
|
311
|
+
- Don't make the trace background lighter than the canvas — it recedes by being *darker*
|
|
312
|
+
- Don't use blue for body text — blue is reserved for accents/toggles/links/citations only
|
|
313
|
+
- Don't give assistant messages a bubble — only the user gets a bubble; AI is full-width
|
|
314
|
+
- Don't add a second accent color — DeepSeek has exactly one (`#4D6BFE`)
|
|
315
|
+
- Don't show the trace when DeepThink (R1) is off (V3 fast mode answers directly, no trace)
|
|
316
|
+
- Don't use a heavy custom display font — DeepSeek uses the platform sans
|
|
317
|
+
- Don't elevate the trace with a shadow — it uses a darker fill, not elevation
|
|
318
|
+
- Don't keep the trace expanded by default on long answers — collapse after completion is fine
|
|
319
|
+
- Don't tint the active tab with a pill — active is just `#4D6BFE` glyph + label
|
|
320
|
+
|
|
321
|
+
## 8. Responsive Behavior
|
|
322
|
+
|
|
323
|
+
### Device Sizes
|
|
324
|
+
| Device | Width | Key Changes |
|
|
325
|
+
|--------|-------|-------------|
|
|
326
|
+
| iPhone SE (3rd gen) | 375pt | Bubble max 80%; toggles may wrap to 2 rows |
|
|
327
|
+
| iPhone 13/14/15 | 390pt | Standard layout |
|
|
328
|
+
| iPhone 15/16 Pro | 393pt | Dynamic Island accommodated in top bar |
|
|
329
|
+
| iPhone 15/16 Pro Max | 430pt | Wider chat column; larger trace text |
|
|
330
|
+
| iPad (portrait) | 768pt | Chat centered max 720pt; History 2-pane |
|
|
331
|
+
| iPad (landscape) | 1024pt+ | Persistent History sidebar + chat; trace inline |
|
|
332
|
+
|
|
333
|
+
### Dynamic Type
|
|
334
|
+
- Message body, headings, reasoning text: full scale
|
|
335
|
+
- Tab labels, citation chips, toggle text: FIXED (layout-sensitive)
|
|
336
|
+
- Code blocks: scale to XL (stay monospace)
|
|
337
|
+
|
|
338
|
+
### Orientation
|
|
339
|
+
- All screens support rotation
|
|
340
|
+
- iPad split view: History list (primary) + active chat (secondary); the trace stays inline within the assistant message
|
|
341
|
+
|
|
342
|
+
### Touch Targets
|
|
343
|
+
- Toggle pill: 44pt min hit, 13pt label
|
|
344
|
+
- Trace header (collapse/expand): full-width 36pt hit
|
|
345
|
+
- Tab bar icons: 22pt glyph, 44pt hit
|
|
346
|
+
- Send button: 36pt circle, 44pt hit
|
|
347
|
+
- Citation chip: 24pt hit, 11pt glyph
|
|
348
|
+
|
|
349
|
+
### Safe Area Handling
|
|
350
|
+
- Top: top bar respects safe area and Dynamic Island
|
|
351
|
+
- Bottom: composer (toggles + input) and tab bar respect home indicator
|
|
352
|
+
- Keyboard: chat scrolls above keyboard; composer (with toggle row) docks above the keyboard
|
|
353
|
+
- Sides: 16pt content inset
|
|
354
|
+
|
|
355
|
+
## 9. Agent Prompt Guide
|
|
356
|
+
|
|
357
|
+
### Quick Color Reference
|
|
358
|
+
- Canvas (dark): `#0E0E10` · (light): `#FFFFFF`
|
|
359
|
+
- Surface 1: `#1A1B1E` dark / `#F5F6F8` light
|
|
360
|
+
- Reasoning BG: `#16171A` dark / `#F7F8FA` light (darker/recessed)
|
|
361
|
+
- Divider: `#2E2F33` dark / `#E4E6EB` light
|
|
362
|
+
- DeepSeek Blue: `#4D6BFE`
|
|
363
|
+
- Blue pressed: `#3B57E0`
|
|
364
|
+
- Blue soft: `#1E2240` dark / `#EBEFFF` light
|
|
365
|
+
- Text primary: `#ECECEC` dark / `#1A1B1E` light
|
|
366
|
+
- Reasoning text: `#8A8B90` dark / `#6E6F74` light (italic)
|
|
367
|
+
- Text secondary: `#9A9BA0` dark / `#6A6B70` light
|
|
368
|
+
- Success: `#2EBD85` · Error/Stop: `#E5484D`
|
|
369
|
+
|
|
370
|
+
### Example Component Prompts
|
|
371
|
+
- "Build the DeepSeek reasoning trace in SwiftUI: a recessed panel, background `#16171A` (darker than the `#0E0E10` canvas), a 2pt `#4D6BFE` left bar, 10pt corner radius. Header row: brain SF Symbol 14pt `#4D6BFE` + 'Thought for 14 seconds' (Inter 12pt w600 `#9A9BA0`) + '· tap to collapse' (`#6A6B70`). Body: chain-of-thought in Inter 13pt w400 **italic** `#8A8B90`, line-height 1.55. Tap header → 200ms height collapse to a single line with a chevron rotation."
|
|
372
|
+
|
|
373
|
+
- "Create the DeepSeek composer: a toggle row above a pill input. Two toggle pills — 'DeepThink (R1)' (brain icon) and 'Search' (magnifier) — off = `#1A1B1E` bg / 1pt `#2E2F33` border / `#9A9BA0` text; on = `#1E2240` bg / 1pt `#4D6BFE` border / `#4D6BFE` text+icon, 150ms crossfade. Below: 50pt pill, `#1A1B1E` bg, 1pt `#2E2F33` border, 25pt radius, placeholder 'Message DeepSeek' `#6A6B70`, trailing 36pt circular send (`#4D6BFE` fill, white up-arrow; morphs to a red `#E5484D` stop square while streaming)."
|
|
374
|
+
|
|
375
|
+
- "Render a DeepSeek assistant message: no bubble, full content width. Header: whale glyph 18pt `#4D6BFE` + 'DeepSeek-R1' (Inter 13pt w600 `#9A9BA0`). If DeepThink is on, a reasoning trace panel precedes the answer. Answer body: Inter 15pt w400 `#ECECEC`, line-height 1.6. Inline code: SF Mono 13pt on `#232428` chip with token color `#C5CDFF`. Action row: copy / thumbs-up / thumbs-down / regenerate, 16pt `#6A6B70`."
|
|
376
|
+
|
|
377
|
+
- "Build the DeepSeek user bubble: background `#1E2240`, 1pt `#2A3360` border, text `#ECECEC` Inter 15pt w400 line-height 1.5, asymmetric corner radius 18/18/4/18 (4pt corner bottom-right pointing at the sender), 12pt×16pt padding, max width 78% right-aligned."
|
|
378
|
+
|
|
379
|
+
- "Create the DeepSeek streaming sequence: when DeepThink (R1) is on, first the reasoning panel types in token-by-token with a blinking `#4D6BFE` caret and a live-counting 'Thought for N seconds' label; when reasoning finishes, the upright answer streams below in `#ECECEC` and the caret hands off. While streaming, the send button is a red `#E5484D` stop square."
|
|
380
|
+
|
|
381
|
+
- "Build the DeepSeek bottom tab bar: 68pt + safe area, `rgba(14,14,16,0.94)` 20px blur, 0.5pt `#2E2F33` top border. Three tabs: Chat, History, Settings — 22pt glyphs, Inter 10pt w500 labels. Active = `#4D6BFE` glyph+label (slightly thicker stroke, NO tint pill). Inactive = `#6A6B70`."
|
|
382
|
+
|
|
383
|
+
### Iteration Guide
|
|
384
|
+
1. Canvas is near-black `#0E0E10` (dark) / clean white `#FFFFFF` (light) — calm, research-tool quiet
|
|
385
|
+
2. Exactly one accent: DeepSeek Blue `#4D6BFE` — whale, user bubble, send, active toggles, links, citations; never body text
|
|
386
|
+
3. The reasoning trace is THE signature — a recessed `#16171A` panel (darker than canvas) with a 2pt blue left-bar
|
|
387
|
+
4. Chain-of-thought is dimmed `#8A8B90` **italic** 13pt; the answer is upright `#ECECEC` 15pt and visually dominant
|
|
388
|
+
5. The trace header reads "Thought for N seconds · tap to collapse" — tap collapses with a 200ms height animation
|
|
389
|
+
6. DeepThink (R1) toggle ⇒ shows the trace; Search toggle ⇒ adds `[n]` citation chips — both use soft-blue active state
|
|
390
|
+
7. User messages get a `#1E2240` bubble with an asymmetric 18/18/4/18 corner; assistant messages have no bubble
|
|
391
|
+
8. Stream the trace token-by-token with a live duration counter, THEN the upright answer below it
|
|
392
|
+
9. Surfaces differ by only a few % luminance; the trace recedes by being darker, not by a shadow
|
|
393
|
+
10. The active tab is just `#4D6BFE` glyph+label — no tinted pill; DeepSeek has no second accent
|