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,412 @@
|
|
|
1
|
+
# Design System Inspiration of Panera (iOS)
|
|
2
|
+
|
|
3
|
+
## 1. Visual Theme & Atmosphere
|
|
4
|
+
|
|
5
|
+
Panera's iOS app feels like walking into a warm bakery-café. The canvas is a soft warm white (`#FFFFFF` with cream-tinted cards at `#F4EFE1`), never a clinical pure-white tech surface, because the brand is built on the idea of "fresh, warm, real food." The defining visual is **food photography**: every menu item — soups, sandwiches, salads, baked goods — is shown as a large, appetizing, full-color photo on a rounded card. Photography is the hero; the UI chrome recedes so the food does the selling. The single brand color is **Panera Green** (`#4C8B2B`, brightening toward `#6BBE45` for emphasis and dark mode), used for the primary "Add to Order" / "Checkout" buttons, active tabs, the MyPanera rewards progress arc, and reward tags — and almost nowhere else. Action is signaled by this one green; everything else is warm neutral.
|
|
6
|
+
|
|
7
|
+
The two signature UI moments are the **MyPanera rewards card** and the **menu-to-cart order flow**. The rewards card sits near the top of Home as a green gradient banner showing the member's progress toward their next reward (a progress bar or coin-counter), Unlimited Sip Club renewal status, and unlockable freebies. It is the loyalty engine that drives repeat visits. The order flow is the core transaction: browse a category, tap a photo card, land on an item-detail screen with a big hero photo, a quantity stepper, customization rows (bread choice, add-ons, "No tomatoes"), calorie counts, and a sticky green "Add to Order" bar. From there a cart with pickup/delivery toggle leads to a green checkout. This menu → customize → cart → checkout spine is the product.
|
|
8
|
+
|
|
9
|
+
The color system around the green is warm and edible: bread tan (`#D8B271`), soup orange (`#E07A2F`), berry red (`#B0324B`) and a gold review/loyalty star (`#F2B705`) recur on cards, badges, and the Sip Club mark. Backgrounds are cream and oat, never stark. The rewards system uses green as "earned/available" and gold as the celebratory "star reward" accent.
|
|
10
|
+
|
|
11
|
+
Typography is a friendly geometric sans for brand/display moments (Panera's marketing uses a rounded humanist face — **Poppins** is the closest free analog) paired with a highly legible neutral sans for body and menu copy (**Inter**). On iOS both fall back to SF Pro. Hierarchy is product-like and appetite-forward: large warm screen titles, bold item names, readable descriptions, and prominent prices. The type system stays approachable — it should read like a neighborhood bakery menu board, not a fintech dashboard.
|
|
12
|
+
|
|
13
|
+
**Key Characteristics:**
|
|
14
|
+
- Warm white canvas (`#FFFFFF`) light / warm near-black (`#14140F`) dark — bakery-warm, never clinical or cold-gray
|
|
15
|
+
- Cream-tinted surfaces (`#F4EFE1`) on cards and rows — the "paper menu" feel
|
|
16
|
+
- Food photography is the hero — large rounded photo cards do the selling
|
|
17
|
+
- A single brand action color: Panera Green `#4C8B2B` (bright `#6BBE45`) for CTAs, active tabs, rewards arc, tags
|
|
18
|
+
- MyPanera rewards card — green gradient banner with progress + Unlimited Sip Club status near top of Home
|
|
19
|
+
- Menu → item detail (hero photo + stepper + customization) → cart (pickup/delivery) → green checkout spine
|
|
20
|
+
- Gold star `#F2B705` as the celebratory "reward / Sip Club / rating" accent
|
|
21
|
+
- Quantity stepper and customization rows as the core ordering atoms
|
|
22
|
+
- Warm edible palette: bread tan, soup orange, berry red as photographic/badge accents
|
|
23
|
+
- Approachable geometric display sans + neutral body sans — neighborhood-bakery, not corporate
|
|
24
|
+
- Minimal navigation chrome: 5-tab bottom bar — Home / Order / Rewards / Favorites / Account
|
|
25
|
+
|
|
26
|
+
## 2. Color Palette & Roles
|
|
27
|
+
|
|
28
|
+
### Primary (Interactive)
|
|
29
|
+
- **Panera Green** (`#4C8B2B`): Primary interactive color — "Add to Order", "Checkout", "Start Order" button background, active selections.
|
|
30
|
+
- **Panera Green Bright** (`#6BBE45`): Emphasis / dark-mode action color, rewards progress fill, success accents, link-like text.
|
|
31
|
+
- **Panera Green Pressed** (`#3C6E22`): Pressed state for primary buttons.
|
|
32
|
+
- **Green Tint Surface** (`#EAF3E3`): 10% green wash behind selected order options and applied-reward rows (light).
|
|
33
|
+
|
|
34
|
+
### Canvas & Surfaces (Light Mode)
|
|
35
|
+
- **Canvas White** (`#FFFFFF`): Primary light canvas.
|
|
36
|
+
- **Warm Cream** (`#F4EFE1`): Card backgrounds, grouped rows, the "paper menu" surface.
|
|
37
|
+
- **Oat Surface** (`#FAF6EC`): Subtle elevated panels, search field fill.
|
|
38
|
+
- **Surface Pressed** (`#EDE6D4`): Pressed/selected rows.
|
|
39
|
+
- **Divider** (`#E7E0CF`): Hairline dividers between menu rows and sections.
|
|
40
|
+
|
|
41
|
+
### Canvas & Surfaces (Dark Mode)
|
|
42
|
+
- **Dark Canvas** (`#14140F`): Primary dark canvas — warm near-black, NOT cold gray.
|
|
43
|
+
- **Dark Surface 1** (`#1E1E18`): Cards, grouped rows, elevated surfaces.
|
|
44
|
+
- **Dark Surface 2** (`#28281F`): Pressed rows, stepper/chip fills.
|
|
45
|
+
- **Dark Divider** (`#33332A`): Hairline dividers.
|
|
46
|
+
|
|
47
|
+
### Text
|
|
48
|
+
- **Text Primary Light** (`#2A2A1F`): Primary body text — warm dark, NOT pure black.
|
|
49
|
+
- **Text Secondary Light** (`#6C6655`): Descriptions, metadata, calorie counts.
|
|
50
|
+
- **Text Tertiary Light** (`#9C9684`): Disabled, very low-emphasis.
|
|
51
|
+
- **Text Primary Dark** (`#F3EFE4`): Primary body on dark — warm cream-white.
|
|
52
|
+
- **Text Secondary Dark** (`#B4AE9C`): Secondary on dark.
|
|
53
|
+
- **Text Tertiary Dark** (`#76705F`): Disabled on dark.
|
|
54
|
+
|
|
55
|
+
### Brand / Photographic Accents
|
|
56
|
+
|
|
57
|
+
| Role | Light Mode | Dark Mode |
|
|
58
|
+
|------|-----------|-----------|
|
|
59
|
+
| Bread Tan | `#D8B271` | `#D8B271` |
|
|
60
|
+
| Soup Orange | `#E07A2F` | `#E88A42` |
|
|
61
|
+
| Berry Red | `#B0324B` | `#C44A63` |
|
|
62
|
+
| Gold Star (reward / rating / Sip Club) | `#F2B705` | `#F4C42E` |
|
|
63
|
+
| Sip Club Coffee | `#5A3A22` | `#7A5436` |
|
|
64
|
+
|
|
65
|
+
### Semantic
|
|
66
|
+
- **Success Green** (`#4C8B2B` light / `#6BBE45` dark): Order placed, reward unlocked.
|
|
67
|
+
- **Error Red** (`#D6452F` light / `#E0594B` dark): Card declined, item unavailable.
|
|
68
|
+
- **Warning Amber** (`#E07A2F`): Store closing soon, limited availability.
|
|
69
|
+
- **Info Green Tint** (`#EAF3E3` light / `#1E2A18` dark): Applied-reward / saved-favorite background.
|
|
70
|
+
|
|
71
|
+
## 3. Typography Rules
|
|
72
|
+
|
|
73
|
+
### Font Family
|
|
74
|
+
- **Display / Brand**: `Poppins` (by Indian Type Foundry / Jonny Pinhorn, SIL OFL) — geometric humanist sans, the closest free analog to Panera's warm rounded marketing face. Used for screen titles, item names, prices, reward headlines.
|
|
75
|
+
- **Body / UI**: `Inter` (by Rasmus Andersson, SIL OFL) — neutral high-legibility UI sans for descriptions, menu copy, metadata, calorie counts.
|
|
76
|
+
- **Fallback Stack**: `-apple-system, BlinkMacSystemFont, 'SF Pro Display', 'SF Pro Text', 'Segoe UI', Roboto, Helvetica, Arial, sans-serif`
|
|
77
|
+
- **iOS**: SF Pro is the system fallback when Poppins/Inter aren't bundled — keep the warm, friendly tone.
|
|
78
|
+
|
|
79
|
+
### Hierarchy
|
|
80
|
+
|
|
81
|
+
| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
|
|
82
|
+
|------|------|------|--------|-------------|----------------|-------|
|
|
83
|
+
| Screen Title | Poppins | 32pt | 800 | 1.2 | -0.5pt | "Good morning", screen headers |
|
|
84
|
+
| Hero / Reward Headline | Poppins | 26pt | 700 | 1.25 | -0.3pt | "You're 2 visits from a reward" |
|
|
85
|
+
| Section Header | Poppins | 22pt | 700 | 1.3 | -0.2pt | "Order Favorites", "Soups" |
|
|
86
|
+
| Card / Item Title | Poppins | 18pt | 600 | 1.3 | -0.1pt | Item-detail name, large card name |
|
|
87
|
+
| Item Name (list) | Poppins | 15pt | 600 | 1.35 | 0pt | Menu-row item name |
|
|
88
|
+
| Body | Inter | 16pt | 400 | 1.5 | 0pt | Item descriptions, paragraph copy |
|
|
89
|
+
| Meta / Calorie | Inter | 14pt | 400 | 1.4 | 0pt | "720 cal", "Ready in 12–17 min" |
|
|
90
|
+
| Price | Poppins | 14pt | 700 | 1.3 | 0pt | "$7.59" item price |
|
|
91
|
+
| Reward Tag | Poppins | 12pt | 700 | 1.0 | 0.4pt (uppercase) | "FREE WITH 2,500 PTS" |
|
|
92
|
+
| Button | Poppins | 16pt | 700 | 1.0 | 0.2pt | Primary/secondary buttons |
|
|
93
|
+
| Pill / Chip | Inter | 13pt | 600 | 1.0 | 0.1pt | Filter chips, pickup/delivery toggle |
|
|
94
|
+
| Tab Label | Inter | 10pt | 600 | 1.0 | 0.1pt | Bottom tab labels |
|
|
95
|
+
| Caption | Inter | 12pt | 500 | 1.4 | 0pt | Fine print, disclaimers |
|
|
96
|
+
|
|
97
|
+
### Principles
|
|
98
|
+
- **Appetite-forward hierarchy**: item names and prices are bold and prominent; descriptions stay readable but secondary — the photo + name + price is the unit.
|
|
99
|
+
- **Display vs body split**: Poppins carries brand/display warmth (titles, names, prices, reward headlines); Inter carries dense legible copy (descriptions, metadata).
|
|
100
|
+
- **Weight concentrated at 400 / 500 / 600 / 700 / 800**: regular body, medium captions, semibold names, bold prices and buttons, extrabold screen titles. No thin, no hairline.
|
|
101
|
+
- **Warm dark text, never pure black**: body text is `#2A2A1F`, preserving the bakery warmth.
|
|
102
|
+
- **Dynamic Type first-class**: titles, item names, body, prices, calories scale; tab labels, reward tags, chips stay fixed.
|
|
103
|
+
|
|
104
|
+
## 4. Component Stylings
|
|
105
|
+
|
|
106
|
+
### Buttons
|
|
107
|
+
|
|
108
|
+
**Primary Button ("Add to Order" / "Checkout" / "Start Order")**
|
|
109
|
+
- Shape: Fully rounded pill, 999pt corner radius
|
|
110
|
+
- Background: `#4C8B2B` (Panera Green) light / `#6BBE45` dark
|
|
111
|
+
- Text: `#FFFFFF` light / `#14140F` dark
|
|
112
|
+
- Padding: 14pt vertical, 28pt horizontal (full-width sticky variant: 16pt vertical)
|
|
113
|
+
- Font: Poppins 16pt weight 700
|
|
114
|
+
- Pressed: background `#3C6E22` + scale 0.98
|
|
115
|
+
- Sticky cart variant: full-width, pinned bottom above tab bar, shows "Add to Order · $7.59"
|
|
116
|
+
|
|
117
|
+
**Secondary / Outline Button ("Customize" / "Add to Favorites")**
|
|
118
|
+
- Background: transparent
|
|
119
|
+
- Text: `#4C8B2B` light / `#6BBE45` dark
|
|
120
|
+
- Border: 1.5pt `#4C8B2B` light / `#6BBE45` dark
|
|
121
|
+
- Padding: 12pt vertical, 22pt horizontal
|
|
122
|
+
- Corner radius: 999pt (pill)
|
|
123
|
+
- Font: Poppins 14pt weight 600
|
|
124
|
+
- Pressed: background `#EAF3E3` light / `#1E2A18` dark
|
|
125
|
+
|
|
126
|
+
**Pill / Toggle Button (Pickup / Delivery, filter chips)**
|
|
127
|
+
- Background: `#FAF6EC` light / `#28281F` dark (selected: `#4C8B2B` / `#6BBE45`)
|
|
128
|
+
- Text: `#2A2A1F` / `#F3EFE4` (selected: `#FFFFFF` / `#14140F`)
|
|
129
|
+
- Border: 1pt `#E7E0CF` / `#33332A`
|
|
130
|
+
- Padding: 10pt vertical, 18pt horizontal
|
|
131
|
+
- Corner radius: 999pt
|
|
132
|
+
- Font: Inter 13pt weight 600
|
|
133
|
+
|
|
134
|
+
**Text Button ("View full menu" / "See all")**
|
|
135
|
+
- Font: Inter 14pt weight 600
|
|
136
|
+
- Color: `#4C8B2B` light / `#6BBE45` dark
|
|
137
|
+
- No underline; chevron `›` optional trailing
|
|
138
|
+
- Pressed: 60% opacity
|
|
139
|
+
|
|
140
|
+
### Core Atoms
|
|
141
|
+
|
|
142
|
+
**Menu Item Card (the core atom)**
|
|
143
|
+
- Layout: leading square food photo (92pt list / full-width hero on detail), trailing name + description + price + add button
|
|
144
|
+
- Photo corner radius: 14pt
|
|
145
|
+
- Name: Poppins 15–18pt w600
|
|
146
|
+
- Description: Inter 12–14pt w400 `#6C6655`, 2-line clamp
|
|
147
|
+
- Price: Poppins 14pt w700
|
|
148
|
+
- Add button: 30pt green circle with white `+` glyph
|
|
149
|
+
- Reward tag (optional): "★ FREE WITH 2,500 PTS" in Poppins 12pt w700 `#4C8B2B`
|
|
150
|
+
- Row divider: 0.5pt `#E7E0CF`
|
|
151
|
+
|
|
152
|
+
**MyPanera Rewards Card**
|
|
153
|
+
- Background: linear gradient `#4C8B2B → #6BBE45` (135°)
|
|
154
|
+
- Corner radius: 18pt
|
|
155
|
+
- Padding: 16pt all
|
|
156
|
+
- Label: "MYPANERA REWARDS" uppercase Poppins 11pt w700, 92% white
|
|
157
|
+
- Headline: "You're 2 visits from a reward" Poppins 19pt w700 `#FFFFFF`
|
|
158
|
+
- Subtext: Unlimited Sip Club / renewal status, Inter 12pt 92% white
|
|
159
|
+
- Progress bar: 6pt track `rgba(255,255,255,0.28)`, fill `#FFFFFF`, 3pt radius
|
|
160
|
+
- Trailing chevron `›` to rewards detail
|
|
161
|
+
|
|
162
|
+
**Quantity Stepper**
|
|
163
|
+
- Container: pill, `#FAF6EC` / `#28281F`, 1pt `#E7E0CF` / `#33332A` border
|
|
164
|
+
- − / + glyphs: Poppins 16pt `#4C8B2B` / `#6BBE45`, 44pt hit area each
|
|
165
|
+
- Count: Poppins 15pt w700 `#2A2A1F` / `#F3EFE4`, centered
|
|
166
|
+
- Spacing: 16pt between glyphs and count
|
|
167
|
+
|
|
168
|
+
**Customization Row**
|
|
169
|
+
- Full-width, 52pt tall, leading label (Inter 16pt), trailing radio/checkbox or stepper
|
|
170
|
+
- Selected: leading `#EAF3E3` tint / green checkmark `#4C8B2B`
|
|
171
|
+
- Add-on price suffix: "+$1.49" Inter 14pt `#6C6655`
|
|
172
|
+
- Divider: 0.5pt `#E7E0CF`
|
|
173
|
+
|
|
174
|
+
**Reward / Loyalty Chip**
|
|
175
|
+
- Pill, `#FAF6EC` / `#28281F`, 1pt border
|
|
176
|
+
- Leading 22pt green coin (gradient `#6BBE45 → #4C8B2B`)
|
|
177
|
+
- Text: "2,500 pts available" Poppins 13pt w700
|
|
178
|
+
- Used for available points, applied rewards, Sip Club status
|
|
179
|
+
|
|
180
|
+
### Navigation
|
|
181
|
+
|
|
182
|
+
**Bottom Tab Bar**
|
|
183
|
+
- Height: 56pt + safe area
|
|
184
|
+
- Background: `#FFFFFF` / `#14140F` at 94% with blur, 0.5pt top border `#E7E0CF` / `#33332A`
|
|
185
|
+
- Tabs (5): Home, Order, Rewards, Favorites, Account
|
|
186
|
+
- Icon size: 22pt
|
|
187
|
+
- Active color: `#4C8B2B` light / `#6BBE45` dark (icon fills solid)
|
|
188
|
+
- Inactive: `#9C9684` light / `#76705F` dark
|
|
189
|
+
- Labels: Inter 10pt w600, always shown
|
|
190
|
+
|
|
191
|
+
**Top Nav (Item detail / Cart)**
|
|
192
|
+
- Height: 44pt + safe area, transparent over hero photo (scrolls to opaque)
|
|
193
|
+
- Leading: back chevron in a 32pt translucent circle over photo
|
|
194
|
+
- Trailing: heart (favorite) + share, same translucent circle treatment
|
|
195
|
+
- Title: appears Poppins 17pt w600 when scrolled past hero
|
|
196
|
+
|
|
197
|
+
**Category Strip (Order tab)**
|
|
198
|
+
- Horizontal scroll of category chips/photos: Soups, Sandwiches, Salads, Bowls, Bakery, Drinks
|
|
199
|
+
- Active category: green underline 2pt `#4C8B2B` / `#6BBE45`
|
|
200
|
+
- Chip text: Inter 13pt w600
|
|
201
|
+
|
|
202
|
+
### Input Fields
|
|
203
|
+
|
|
204
|
+
**Search Bar ("Find a menu item")**
|
|
205
|
+
- Height: 44pt
|
|
206
|
+
- Background: `#FAF6EC` / `#28281F`
|
|
207
|
+
- Border: none
|
|
208
|
+
- Corner radius: 999pt (pill)
|
|
209
|
+
- Leading `magnifyingglass` 16pt `#6C6655` / `#B4AE9C`
|
|
210
|
+
- Placeholder: "Search the menu" Inter 14pt `#9C9684`
|
|
211
|
+
- Focus: 1.5pt `#4C8B2B` border
|
|
212
|
+
|
|
213
|
+
**Address / Pickup Selector**
|
|
214
|
+
- Full-width row, 56pt, leading location pin (green), title + subtitle stack
|
|
215
|
+
- Title: "Pickup at Cherry Creek" Poppins 15pt w600
|
|
216
|
+
- Subtitle: "Ready in ~15 min" Inter 13pt `#6C6655`
|
|
217
|
+
- Trailing chevron, tap opens store/address sheet
|
|
218
|
+
|
|
219
|
+
### Distinctive Components
|
|
220
|
+
|
|
221
|
+
**MyPanera Rewards Card** — green-gradient progress banner; the loyalty engine pinned near top of Home (see Core Atoms).
|
|
222
|
+
|
|
223
|
+
**Unlimited Sip Club Badge**
|
|
224
|
+
- Coffee-cup glyph + "Unlimited Sip Club" label
|
|
225
|
+
- Background: Sip Club coffee `#5A3A22` or green; gold star accent for active membership
|
|
226
|
+
- Used on Home banner and account screen to surface subscription status/renewal
|
|
227
|
+
|
|
228
|
+
**Item Detail Hero**
|
|
229
|
+
- Full-bleed food photo, 280–340pt tall
|
|
230
|
+
- Name, calories, price overlaid below on cream surface
|
|
231
|
+
- Customization rows + quantity stepper
|
|
232
|
+
- Sticky green "Add to Order · $7.59" bar pinned bottom
|
|
233
|
+
|
|
234
|
+
**Reward Star Tag**
|
|
235
|
+
- Inline "★ FREE WITH 2,500 PTS" tag on redeemable items
|
|
236
|
+
- Gold star `#F2B705` + green text `#4C8B2B`
|
|
237
|
+
- Signals which menu items the member's points can unlock
|
|
238
|
+
|
|
239
|
+
**Pickup / Delivery Toggle**
|
|
240
|
+
- Segmented pill at top of cart
|
|
241
|
+
- Selected segment: green fill `#4C8B2B`, white text
|
|
242
|
+
- Unselected: transparent, `#6C6655` text
|
|
243
|
+
|
|
244
|
+
**Cart Summary Sheet**
|
|
245
|
+
- Bottom sheet listing line items with thumbnail, name, qty stepper, price
|
|
246
|
+
- Subtotal / rewards-applied / total rows
|
|
247
|
+
- Green "Checkout" pill pinned bottom
|
|
248
|
+
- Applied reward row tinted `#EAF3E3` with green checkmark
|
|
249
|
+
|
|
250
|
+
## 5. Layout Principles
|
|
251
|
+
|
|
252
|
+
### Spacing System
|
|
253
|
+
- Base unit: 4pt
|
|
254
|
+
- Scale: 4, 8, 12, 16, 18, 20, 24, 28, 32, 40, 56
|
|
255
|
+
- Card vertical gap: 0 (rows divided by hairline) or 12pt (separated photo cards)
|
|
256
|
+
- Section top margin: 24pt
|
|
257
|
+
- Screen content inset: 16pt horizontal
|
|
258
|
+
|
|
259
|
+
### Grid & Container
|
|
260
|
+
- iPhone: content at 16pt horizontal insets; hero photos full-bleed
|
|
261
|
+
- iPad: content at max-width 720pt centered, 24pt insets; menu in 2-column grid
|
|
262
|
+
- Menu list: single column of rows; featured items in horizontal photo carousel
|
|
263
|
+
- Category strip: horizontal scroll, 12pt gap between chips
|
|
264
|
+
|
|
265
|
+
### Whitespace Philosophy
|
|
266
|
+
- **Food breathes**: photos get generous size and rounded corners; descriptions stay tight under names
|
|
267
|
+
- **Rewards card is the anchor**: it always sits in a calm zone near the top of Home with margin around it
|
|
268
|
+
- **Sticky CTA never crowds**: the green "Add to Order" bar floats with 16pt internal padding above the tab bar
|
|
269
|
+
- **Warm dividers, not boxes**: menu rows are separated by 0.5pt hairlines, not heavy card borders
|
|
270
|
+
|
|
271
|
+
### Border Radius Scale
|
|
272
|
+
- Square (0pt): Full-bleed hero photos, dividers
|
|
273
|
+
- Subtle (6pt): Inline tags, small badges
|
|
274
|
+
- Standard (10pt): Small thumbnails, chips
|
|
275
|
+
- Comfortable (14pt): Menu photo cards, list food images
|
|
276
|
+
- Card (18pt): Rewards card, sheets, large surfaces
|
|
277
|
+
- Large (24pt): Modal top corners
|
|
278
|
+
- Pill (999pt): Buttons, toggles, search bar, reward chips, steppers
|
|
279
|
+
- Circle (50%): Add buttons, avatars, nav circles, reward coins
|
|
280
|
+
|
|
281
|
+
## 6. Depth & Elevation
|
|
282
|
+
|
|
283
|
+
Panera uses gentle, warm elevation — soft shadows that suggest fresh layers, never harsh tech drop-shadows.
|
|
284
|
+
|
|
285
|
+
| Level | Treatment | Use |
|
|
286
|
+
|-------|-----------|-----|
|
|
287
|
+
| Flat (Level 0) | No shadow | Menu rows, page content, dividers |
|
|
288
|
+
| Raised (Level 1) | `rgba(60,40,10,0.06) 0 2px 8px` | Photo cards, rewards card |
|
|
289
|
+
| Floating (Level 2) | `rgba(60,40,10,0.10) 0 4px 16px` | Sticky CTA bar, store selector |
|
|
290
|
+
| Sheet (Level 3) | `rgba(40,30,10,0.16) 0 -4px 24px` | Cart sheet, customization sheet, store picker |
|
|
291
|
+
| Modal Overlay | `rgba(20,15,5,0.4)` | Dim behind sheets and modals |
|
|
292
|
+
|
|
293
|
+
**Shadow Philosophy**: shadows are warm-tinted (brown-amber, not neutral gray) so they read as natural depth against cream surfaces. The rewards card and food cards get a soft raise so they feel tangible; the sticky checkout bar floats just enough to read as "always available". On dark mode, shadows nearly vanish, so a 1pt `#33332A` divider/hairline becomes the elevation cue on sheets and the sticky bar.
|
|
294
|
+
|
|
295
|
+
### Motion
|
|
296
|
+
- **Add to Order**: tapping the green CTA triggers a 200ms scale-bounce + the cart badge increments with a soft haptic; a brief "Added" toast slides up 250ms ease-out
|
|
297
|
+
- **Quantity stepper**: count number cross-fades + ticks 120ms; soft haptic on each tap
|
|
298
|
+
- **Rewards progress**: progress fill animates from old → new value over 600ms ease-out when a reward is earned; gold star sparkle on unlock
|
|
299
|
+
- **Category switch**: underline slides between categories 200ms ease-out; menu list cross-fades
|
|
300
|
+
- **Item detail open**: photo card expands into full-bleed hero with a 300ms shared-element-style transition (iOS push)
|
|
301
|
+
- **Cart sheet**: slides up 300ms ease-out; backdrop dims simultaneously
|
|
302
|
+
- **Pickup/Delivery toggle**: selected fill slides 180ms ease-out
|
|
303
|
+
- **Pull to refresh (Home)**: bread-loaf / Panera mark spinner
|
|
304
|
+
- **Haptic feedback**: soft impact on Add to Order, stepper tap, reward unlock, toggle switch
|
|
305
|
+
|
|
306
|
+
## 7. Do's and Don'ts
|
|
307
|
+
|
|
308
|
+
### Do
|
|
309
|
+
- Use warm white (`#FFFFFF`) with cream cards (`#F4EFE1`) in light — Panera is a bakery, not a tech app
|
|
310
|
+
- Use warm near-black (`#14140F`) for dark mode — NOT cold gray, NOT pure black
|
|
311
|
+
- Use warm dark text (`#2A2A1F`) — NOT pure black
|
|
312
|
+
- Keep Panera Green (`#4C8B2B`, bright `#6BBE45`) as the single action color — CTAs, active tabs, rewards arc
|
|
313
|
+
- Make food photography the hero — large rounded photo cards do the selling
|
|
314
|
+
- Pin the MyPanera rewards card near the top of Home — it's the loyalty engine
|
|
315
|
+
- Use the gold star (`#F2B705`) only for reward / Sip Club / rating moments
|
|
316
|
+
- Use fully-rounded pills for buttons and toggles — Panera's UI is soft and rounded
|
|
317
|
+
- Pin a sticky green "Add to Order · $price" bar on item detail
|
|
318
|
+
- Show calorie counts next to prices — it's a Panera signature
|
|
319
|
+
- Use the quantity stepper + customization rows as the ordering atoms
|
|
320
|
+
|
|
321
|
+
### Don't
|
|
322
|
+
- Don't use pure white tech surfaces — the cream warmth is the brand
|
|
323
|
+
- Don't introduce a second brand action color — green is the only CTA color
|
|
324
|
+
- Don't use cold gray dark mode — keep it warm `#14140F`
|
|
325
|
+
- Don't use pure black (`#000000`) for body text — `#2A2A1F` warm dark is correct
|
|
326
|
+
- Don't make the green dark variant disappear on dark — use `#6BBE45` for legible CTAs
|
|
327
|
+
- Don't bury the MyPanera rewards card — it must be prominent on Home
|
|
328
|
+
- Don't over-use the gold star — it's the celebratory loyalty accent, not decoration
|
|
329
|
+
- Don't use sharp rectangular buttons — Panera buttons are pills
|
|
330
|
+
- Don't hide prices or calories — they belong next to the item name
|
|
331
|
+
- Don't add heavy card borders around menu rows — use warm 0.5pt hairlines
|
|
332
|
+
- Don't animate aggressively — motion is gentle 180–600ms ease-out
|
|
333
|
+
|
|
334
|
+
## 8. Responsive Behavior
|
|
335
|
+
|
|
336
|
+
### Device Sizes
|
|
337
|
+
| Device | Width | Key Changes |
|
|
338
|
+
|--------|-------|-------------|
|
|
339
|
+
| iPhone SE (3rd gen) | 375pt | List photos 80pt; hero photo 240pt; single-column menu |
|
|
340
|
+
| iPhone 13/14/15 | 390pt | Standard layout |
|
|
341
|
+
| iPhone 15/16 Pro | 393pt | Dynamic Island accommodated in transparent top nav |
|
|
342
|
+
| iPhone 15/16 Pro Max | 430pt | List photos 100pt; hero photo 360pt |
|
|
343
|
+
| iPad (portrait) | 768pt | 2-column menu grid; rewards card spans top; content max 720pt centered |
|
|
344
|
+
| iPad (landscape) | 1024pt+ | 3-column menu grid; persistent category sidebar |
|
|
345
|
+
|
|
346
|
+
### Dynamic Type
|
|
347
|
+
- Screen titles, item names, descriptions, prices, calories: full scale
|
|
348
|
+
- Tab labels, reward tags, filter chips, stepper glyphs: FIXED (layout-sensitive)
|
|
349
|
+
- Photo card minimum sizes preserved; text truncates with ellipsis at extreme scales
|
|
350
|
+
|
|
351
|
+
### Orientation
|
|
352
|
+
- All screens support rotation
|
|
353
|
+
- iPad split: category sidebar (landscape) + menu grid + cart panel
|
|
354
|
+
- Hero photos rotate freely; sticky CTA bar stays pinned bottom
|
|
355
|
+
|
|
356
|
+
### Touch Targets
|
|
357
|
+
- Add button (circle): 30pt glyph, 44pt hit area
|
|
358
|
+
- Stepper − / +: 24pt glyph, 44pt hit area
|
|
359
|
+
- Tab bar icons: 22pt glyph, 44pt hit area
|
|
360
|
+
- Menu row: full-row tap, ≥ 100pt tall
|
|
361
|
+
- Primary buttons: 48pt tall minimum
|
|
362
|
+
|
|
363
|
+
### Safe Area Handling
|
|
364
|
+
- Top: transparent nav respects safe area and Dynamic Island over hero photo
|
|
365
|
+
- Bottom: sticky CTA bar and tab bar respect home indicator
|
|
366
|
+
- Keyboard: search and address fields scroll above keyboard
|
|
367
|
+
- Sides: 16pt content inset
|
|
368
|
+
|
|
369
|
+
## 9. Agent Prompt Guide
|
|
370
|
+
|
|
371
|
+
### Quick Color Reference
|
|
372
|
+
- Canvas (light): `#FFFFFF`
|
|
373
|
+
- Card surface (light): `#F4EFE1`
|
|
374
|
+
- Canvas (dark): `#14140F`
|
|
375
|
+
- Surface (dark): `#1E1E18`
|
|
376
|
+
- Divider: `#E7E0CF` light / `#33332A` dark
|
|
377
|
+
- Text primary: `#2A2A1F` light / `#F3EFE4` dark
|
|
378
|
+
- Text secondary: `#6C6655` light / `#B4AE9C` dark
|
|
379
|
+
- Panera Green (primary): `#4C8B2B`
|
|
380
|
+
- Panera Green Bright (dark CTA / accent): `#6BBE45`
|
|
381
|
+
- Panera Green Pressed: `#3C6E22`
|
|
382
|
+
- Green tint surface: `#EAF3E3` light / `#1E2A18` dark
|
|
383
|
+
- Gold star (reward): `#F2B705`
|
|
384
|
+
- Bread tan: `#D8B271`
|
|
385
|
+
- Soup orange: `#E07A2F`
|
|
386
|
+
- Berry red: `#B0324B`
|
|
387
|
+
- Error: `#D6452F` light / `#E0594B` dark
|
|
388
|
+
|
|
389
|
+
### Example Component Prompts
|
|
390
|
+
- "Build the Panera MyPanera rewards card in SwiftUI: full-width rounded rectangle, 18pt corner radius, linear gradient `#4C8B2B → #6BBE45` at 135°, 16pt padding. Top row: 'MYPANERA REWARDS' uppercase Poppins 11pt w700 white at 92% opacity, trailing chevron. Headline: 'You're 2 visits from a reward' Poppins 19pt w700 `#FFFFFF`. Subtext: 'Unlimited Sip Club renews May 28' Inter 12pt white 92%. Bottom: 6pt progress track `rgba(255,255,255,0.28)` with white fill at 64%, 3pt radius. Soft warm shadow `rgba(60,40,10,0.06) 0 2px 8px`."
|
|
391
|
+
|
|
392
|
+
- "Create a Panera menu item row: leading 92pt square food photo with 14pt corner radius, trailing column with name in Poppins 15pt w600 `#2A2A1F`, description in Inter 12pt w400 `#6C6655` clamped to 2 lines, optional reward tag '★ FREE WITH 2,500 PTS' in Poppins 12pt w700 `#4C8B2B`, then a foot row with price 'Poppins 14pt w700' and a 30pt green circle add-button with a white `+`. Row divider 0.5pt `#E7E0CF`."
|
|
393
|
+
|
|
394
|
+
- "Build the Panera item-detail screen: full-bleed food hero photo 320pt tall, transparent top nav with back/heart/share in 32pt translucent circles. Below on cream `#F4EFE1`: item name Poppins 18pt w600, '720 cal · $7.59' Inter 14pt `#6C6655`. Customization rows (52pt, label + radio/checkbox, '+$1.49' suffix). Quantity stepper pill. Sticky bottom bar: full-width Panera Green `#4C8B2B` pill, Poppins 16pt w700 white, 'Add to Order · $7.59', floating shadow `rgba(60,40,10,0.10) 0 4px 16px`."
|
|
395
|
+
|
|
396
|
+
- "Render the Panera quantity stepper: pill container `#FAF6EC` (dark `#28281F`) with 1pt `#E7E0CF` border, − and + glyphs in Poppins 16pt `#4C8B2B` (dark `#6BBE45`) with 44pt hit areas, centered count in Poppins 15pt w700 `#2A2A1F`. Soft haptic + 120ms count cross-fade on each tap."
|
|
397
|
+
|
|
398
|
+
- "Build the Panera primary button: fully-rounded pill (999pt radius), background `#4C8B2B` (dark `#6BBE45`), text `#FFFFFF` (dark `#14140F`) in Poppins 16pt w700, 14pt vertical / 28pt horizontal padding. Pressed: background `#3C6E22` + scale 0.98 + soft haptic."
|
|
399
|
+
|
|
400
|
+
- "Render the Panera bottom tab bar: 56pt + safe area, background `#FFFFFF` / `#14140F` at 94% with blur, 0.5pt top border. 5 tabs — Home, Order, Rewards, Favorites, Account — 22pt icons, active `#4C8B2B` (dark `#6BBE45`) with solid fill, inactive `#9C9684` (dark `#76705F`), Inter 10pt w600 labels always shown."
|
|
401
|
+
|
|
402
|
+
### Iteration Guide
|
|
403
|
+
1. Canvas is warm white `#FFFFFF` with cream cards `#F4EFE1` in light, warm near-black `#14140F` in dark — never cold gray, never pure black
|
|
404
|
+
2. Text primary is warm dark `#2A2A1F` — NOT pure black; body Inter 400, names Poppins 600+
|
|
405
|
+
3. Panera Green `#4C8B2B` (bright `#6BBE45` for dark/accent) is the ONLY action color — CTAs, active tabs, rewards arc, tags
|
|
406
|
+
4. Food photography is the hero — large rounded photo cards do the selling
|
|
407
|
+
5. The MyPanera rewards card (green gradient + progress) is the loyalty engine pinned near top of Home
|
|
408
|
+
6. Buttons and toggles are fully-rounded pills — Panera's UI is soft
|
|
409
|
+
7. Gold star `#F2B705` is reserved for reward / Sip Club / rating moments only
|
|
410
|
+
8. The order spine is menu → item detail (hero photo + stepper + customization) → cart (pickup/delivery) → green checkout
|
|
411
|
+
9. Show calories next to prices — it's a Panera signature
|
|
412
|
+
10. Motion is gentle 180–600ms ease-out; soft haptics on Add to Order, stepper, reward unlock
|