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,460 @@
|
|
|
1
|
+
# Design System Inspiration of Reddit (iOS)
|
|
2
|
+
|
|
3
|
+
## 1. Visual Theme & Atmosphere
|
|
4
|
+
|
|
5
|
+
Reddit's iOS app is a card-based community reader organized around the single most recognizable interactive control in consumer tech: the upvote/downvote column. Every post in a feed — whether from r/aww, r/AskReddit, or r/programming — is laid out the same way: a horizontal card with the vote arrow stack on the left (up arrow, karma number, down arrow), a subreddit avatar + "r/subredditname", a post title, optional media preview, and a row of actions (comments count, share, save, more). The consistency of this unit is the brand. A Reddit power user can scan 50 cards in 20 seconds because every card is structurally identical.
|
|
6
|
+
|
|
7
|
+
Reddit's color system is a two-pole light-mode vs dark-mode pair stitched together by the Reddit Orange-Red (`#FF4500`) — the single brand accent seen in the app logo, subreddit pill tints, and (historically) the upvote hover. The functional accent work, though, is done by a smaller palette: Upvote Orange (`#FF8717`) on active upvotes, Downvote Blue-Purple (`#7193FF` light / `#9494FF` dark) on active downvotes, and a grayscale for dormant votes. This is a meaningful chromatic decision: orange + blue-purple are complementary, they read semantically (warmth vs coolness) for approve vs disapprove, and they NEVER both light up at once because a user can only vote one way.
|
|
8
|
+
|
|
9
|
+
The mood is information-density-first. Reddit is a reading and scrolling app — people spend minutes in a thread, not seconds — so the app tolerates high-density cards with small type (14pt body, 12pt metadata) and uses ample white space ONLY inside cards (16pt internal padding), not between them. Newer Reddit iOS adds media-first card variants — photo-dominant, video-autoplaying — but the bone structure (vote column + meta + title + actions) stays. Subreddit customization is a signature feature: each community can set its own accent color (the "subreddit color"), its own banner image, its own sidebar rules, so a thread in r/AnimalCrossing looks cozy green and a thread in r/programming looks cool steel.
|
|
10
|
+
|
|
11
|
+
**Key Characteristics:**
|
|
12
|
+
- Reddit Orange-Red (`#FF4500`) as the brand color — logo, subreddit pill accent, rare CTAs
|
|
13
|
+
- Vote column on every post/comment — up arrow, karma number, down arrow in a vertical stack
|
|
14
|
+
- Upvote orange (`#FF8717`) and downvote blue-purple (`#7193FF`) as complementary semantic pair
|
|
15
|
+
- Card-first feed UI — every post is a self-contained card with avatar + title + preview + actions
|
|
16
|
+
- Subreddit avatars as circular icons — and subreddit accent color customization per community
|
|
17
|
+
- Flair pills (rectangular 4pt-radius chips) for post tags — per-subreddit styled
|
|
18
|
+
- Comment thread indentation lines — thin vertical rules on the leading edge of nested replies
|
|
19
|
+
- Snoo (the alien mascot) as the fallback avatar and Empty State character
|
|
20
|
+
- Chat Channels with real-time chat — a newer feature with Discord-like group messaging
|
|
21
|
+
- Media-first post variants — full-bleed image cards, video autoplay with mute toggle
|
|
22
|
+
- Light mode (`#F6F7F8` new / `#DAE0E6` old) and dark mode (`#1A1A1B` canvas, `#272729` cards)
|
|
23
|
+
- Reddit Sans (custom font, 2023+) with Noto Sans and SF Pro fallbacks
|
|
24
|
+
|
|
25
|
+
## 2. Color Palette & Roles
|
|
26
|
+
|
|
27
|
+
### Primary Brand
|
|
28
|
+
- **Reddit Orange-Red** (`#FF4500`): The single brand accent — logo, primary CTA pill, subreddit pill accent, occasional button.
|
|
29
|
+
- **Reddit Red** (`#FF585B`): Alerts, destructive banners, "community removed" warnings.
|
|
30
|
+
- **Orange-Red Pressed** (`#CC3700`): Pressed state for primary CTAs.
|
|
31
|
+
|
|
32
|
+
### Vote Colors (The Semantic Pair)
|
|
33
|
+
- **Upvote Orange** (`#FF8717`): Active upvote — slightly yellower than Reddit Red, intentionally distinct from the brand red.
|
|
34
|
+
- **Upvote Orange (Dark Mode)** (`#FFAA66`): Lighter variant for dark mode contrast.
|
|
35
|
+
- **Downvote Blue-Purple (Light)** (`#7193FF`): Active downvote — indigo-adjacent, cold.
|
|
36
|
+
- **Downvote Blue-Purple (Dark)** (`#9494FF`): Lighter variant for dark mode.
|
|
37
|
+
- **Vote Arrow Inactive** (`#878A8C` light / `#818384` dark): Gray dormant state.
|
|
38
|
+
|
|
39
|
+
### Canvas & Surfaces (Light Mode)
|
|
40
|
+
- **Canvas (New)** (`#F6F7F8`): Default light canvas — a cool very-light gray.
|
|
41
|
+
- **Canvas (Classic)** (`#DAE0E6`): The "old Reddit" blue-tinged light canvas, still used in some contexts.
|
|
42
|
+
- **Card Surface** (`#FFFFFF`): Post cards and comment threads sit on white.
|
|
43
|
+
- **Surface 2** (`#F2F3F5`): Hovered/pressed card state.
|
|
44
|
+
- **Divider** (`#EDEFF1`): Hairline between cards, between comments.
|
|
45
|
+
- **Subreddit Banner Placeholder** (`#0079D3`): Default blue tint if no custom banner.
|
|
46
|
+
|
|
47
|
+
### Canvas & Surfaces (Dark Mode)
|
|
48
|
+
- **Canvas (Dark)** (`#1A1A1B`): Primary dark canvas.
|
|
49
|
+
- **Card Surface (Dark)** (`#272729`): Post cards and comment threads.
|
|
50
|
+
- **Surface 2 (Dark)** (`#343536`): Hovered / pressed card state, input backgrounds.
|
|
51
|
+
- **Divider (Dark)** (`#343536`): Dark-mode separator.
|
|
52
|
+
- **Chat Surface (Dark)** (`#161617`): Slightly darker than canvas for chat screens.
|
|
53
|
+
|
|
54
|
+
### Text
|
|
55
|
+
- **Text Primary (Light)** (`#1A1A1B`): Post titles, body text.
|
|
56
|
+
- **Text Secondary (Light)** (`#7C7C7C`): Metadata — "2h ago", "r/subreddit • 125 comments".
|
|
57
|
+
- **Text Tertiary (Light)** (`#AFAFAF`): Placeholder, disabled.
|
|
58
|
+
- **Text Primary (Dark)** (`#D7DADC`): Dark-mode primary.
|
|
59
|
+
- **Text Secondary (Dark)** (`#818384`): Dark-mode metadata.
|
|
60
|
+
- **Text Link** (`#0079D3`): Hyperlinks in comments and post body.
|
|
61
|
+
|
|
62
|
+
### Subreddit Accent Colors
|
|
63
|
+
Each subreddit can set its own "accent color" — seen on the join button, the sidebar, and the banner tint. This is configurable per-community, commonly:
|
|
64
|
+
- Default (`#0079D3`), Gaming (`#24A0ED`), AskReddit (`#FF4500`), Memes (`#A5A4A4`), etc.
|
|
65
|
+
|
|
66
|
+
### Semantic
|
|
67
|
+
- **Success Green** (`#46D160`): Successful actions.
|
|
68
|
+
- **Warning Yellow** (`#FFB000`): Warning banners.
|
|
69
|
+
- **Error Red** (`#FF585B`): Error messages.
|
|
70
|
+
- **Gold Award** (`#FFB000`): Gold Award badge (Reddit removed in 2023 but still in historical data).
|
|
71
|
+
- **Silver Award** (`#C7C7C7`): Silver Award badge.
|
|
72
|
+
- **Reddit Premium** (`#FFD635`): Premium subscriber badge, Reddit Gold era.
|
|
73
|
+
- **NSFW Tag** (`#F3B200` pill with black text): "NSFW" post flair.
|
|
74
|
+
- **Spoiler Tag** (`#000000` pill with white text): "SPOILER" flair.
|
|
75
|
+
|
|
76
|
+
## 3. Typography Rules
|
|
77
|
+
|
|
78
|
+
### Font Family
|
|
79
|
+
- **Primary (2023+)**: `Reddit Sans` (proprietary, released 2023) — a humanist sans with gentle curves, designed for long reading sessions. Has Regular, Medium, SemiBold, Bold, Black.
|
|
80
|
+
- **Secondary (Fallback)**: `Noto Sans` — used for non-Latin scripts.
|
|
81
|
+
- **Tertiary (Fallback)**: `SF Pro Text` / `SF Pro Display` — iOS native fallback.
|
|
82
|
+
- **Monospace**: `Reddit Mono` (2023+) for code blocks; fallback `SF Mono`.
|
|
83
|
+
- **Fallback Stack**: `-apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Noto Sans', Helvetica, Arial, sans-serif`
|
|
84
|
+
|
|
85
|
+
### Hierarchy
|
|
86
|
+
|
|
87
|
+
| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
|
|
88
|
+
|------|------|------|--------|-------------|----------------|-------|
|
|
89
|
+
| Large Title | Reddit Sans | 24pt | 700 | 1.2 | -0.3pt | "Home", "Popular", subreddit name on detail |
|
|
90
|
+
| Post Title | Reddit Sans | 18pt | 600 | 1.25 | -0.2pt | The post title card headline |
|
|
91
|
+
| Body Text | Reddit Sans | 14pt | 400 | 1.5 | -0.1pt | Post body, comment body |
|
|
92
|
+
| Comment Body | Reddit Sans | 14pt | 400 | 1.5 | -0.1pt | Same as body (comments are first-class) |
|
|
93
|
+
| Metadata | Reddit Sans | 12pt | 400 | 1.3 | 0pt | "r/subreddit • 2h ago • 125 comments" |
|
|
94
|
+
| Karma (Vote Column) | Reddit Sans | 12pt | 700 | 1.0 | 0pt | The number between up/down arrows |
|
|
95
|
+
| Subreddit Pill | Reddit Sans | 12pt | 600 | 1.0 | 0pt | "r/AnimalCrossing" pill |
|
|
96
|
+
| Flair Pill | Reddit Sans | 11pt | 600 | 1.0 | 0.2pt | Per-subreddit colored flair tags |
|
|
97
|
+
| Username | Reddit Sans | 12pt | 500 | 1.2 | 0pt | "u/username" in comments |
|
|
98
|
+
| Button (Primary) | Reddit Sans | 14pt | 600 | 1.0 | 0pt | "Join", "Continue" |
|
|
99
|
+
| Tab Label | Reddit Sans | 11pt | 500 | 1.0 | 0.1pt | Bottom tab labels |
|
|
100
|
+
| Nav Title | Reddit Sans | 17pt | 600 | 1.2 | -0.2pt | Top nav bar title |
|
|
101
|
+
| Section Header | Reddit Sans | 13pt | 700 | 1.2 | 0.5pt | "COMMUNITY INFO" tracked uppercase |
|
|
102
|
+
| Code (Mono) | Reddit Mono | 13pt | 400 | 1.5 | 0pt | Inline + block code in comments |
|
|
103
|
+
|
|
104
|
+
### Principles
|
|
105
|
+
- **14pt is the workhorse**: Post body, comments, replies all at 14pt regular. This is tuned for long-form reading in a chat-like density.
|
|
106
|
+
- **12pt for metadata**: Timestamps, subreddit pills, comment context all at 12pt — small but scannable.
|
|
107
|
+
- **18pt for post title** is the hero — big enough to catch attention on a card, small enough to fit multi-line titles.
|
|
108
|
+
- **Dynamic Type respected**: Body text and post titles scale; vote-column karma number, tab labels, and flair pills are fixed for layout.
|
|
109
|
+
- **Username hierarchy**: "u/username" in 12pt weight 500 — not as prominent as subreddit `r/` pills, because Reddit is community-first, not user-first.
|
|
110
|
+
- **Markdown rendering**: Post and comment bodies render full Markdown — `**bold**`, `*italic*`, `~~strike~~`, `> quote`, `[link](url)`, `` `code` ``, triple-backtick blocks, headers, lists.
|
|
111
|
+
|
|
112
|
+
## 4. Component Stylings
|
|
113
|
+
|
|
114
|
+
### Buttons
|
|
115
|
+
|
|
116
|
+
**Primary Pill (Join / Continue)**
|
|
117
|
+
- Shape: Pill, 24pt corner radius (or 500pt for full-capsule)
|
|
118
|
+
- Background: `#FF4500` for universal primary; subreddit-accent color for community-specific CTA
|
|
119
|
+
- Text: white, Reddit Sans 14pt weight 600
|
|
120
|
+
- Padding: 8pt vertical, 20pt horizontal
|
|
121
|
+
- Pressed: darker shade + scale 0.97
|
|
122
|
+
- Used for: "Join" (subreddit), "Continue", "Create Post"
|
|
123
|
+
|
|
124
|
+
**Secondary Outline**
|
|
125
|
+
- Background: transparent
|
|
126
|
+
- Text: subreddit accent color (or `#1A1A1B` / `#D7DADC` default)
|
|
127
|
+
- Border: 1pt solid `#EDEFF1` (light) or `#343536` (dark)
|
|
128
|
+
- Pressed: background `#F2F3F5` / `#343536`
|
|
129
|
+
- Used for: "Joined" (after joining), "Follow"
|
|
130
|
+
|
|
131
|
+
**Subreddit Join Button**
|
|
132
|
+
- Same as primary pill, but tinted in the subreddit's custom accent color
|
|
133
|
+
- When joined, shifts to outline style with "Joined" text
|
|
134
|
+
- Icon prefix: `+` (not joined) or `checkmark` (joined)
|
|
135
|
+
|
|
136
|
+
**Vote Arrow (The Signature Button)**
|
|
137
|
+
- Two stacked icons with a karma number between them
|
|
138
|
+
- Arrow icon: upward/downward chevron, 18pt
|
|
139
|
+
- Default (inactive): `#878A8C` / `#818384`
|
|
140
|
+
- Active up: `#FF8717` (orange)
|
|
141
|
+
- Active down: `#7193FF` / `#9494FF` (blue-purple)
|
|
142
|
+
- Hit target: 36pt × 36pt per arrow
|
|
143
|
+
- Tap: immediate state change + soft haptic + brief scale bounce (1.0 → 1.2 → 1.0)
|
|
144
|
+
- Karma number: Reddit Sans 12pt weight 700, center-aligned between arrows, color matches active vote state (orange/blue-purple/gray)
|
|
145
|
+
|
|
146
|
+
**Icon Actions (Comments, Share, Save, More)**
|
|
147
|
+
- Size: 18pt icon + optional count
|
|
148
|
+
- Layout: horizontal row below post content
|
|
149
|
+
- Default: `#878A8C` / `#818384`
|
|
150
|
+
- Active (saved): `#FFB000` gold
|
|
151
|
+
- Tap hit area: 44pt
|
|
152
|
+
|
|
153
|
+
### Cards & Containers
|
|
154
|
+
|
|
155
|
+
**Post Card (The Signature Component)**
|
|
156
|
+
A self-contained post as a card with structured sections.
|
|
157
|
+
- Background: `#FFFFFF` light / `#272729` dark
|
|
158
|
+
- Corner radius: 0pt (old Reddit style) or 16pt (new card style — user preference toggle)
|
|
159
|
+
- Padding: 12pt internal
|
|
160
|
+
- Structure (TOP to BOTTOM):
|
|
161
|
+
1. **Header row** (10pt height): subreddit avatar (20pt circular) + `r/subreddit` pill + `•` + timestamp + `•` + optional "Pinned" or "Crosspost" tag
|
|
162
|
+
2. **Title row**: post title in Reddit Sans 18pt weight 600, `#1A1A1B` / `#D7DADC`, up to 3-line clamp
|
|
163
|
+
3. **Flair row** (optional): horizontal row of pill tags, 11pt weight 600
|
|
164
|
+
4. **Preview row** (optional): image, video, gallery, link card, or text preview
|
|
165
|
+
5. **Action row** (32pt height): Vote arrow column + karma (left) + comments count + share + save + more (right side)
|
|
166
|
+
- Between cards: 8pt gap with canvas color showing through
|
|
167
|
+
- Tap: slight background tint (`#F2F3F5` / `#343536`) + navigate to detail
|
|
168
|
+
|
|
169
|
+
**Post Card — Media-First Variant**
|
|
170
|
+
For image/video-dominant posts, the media takes the top 60% of the card with title + vote column overlaid or below:
|
|
171
|
+
- Image: full-width, up to 16:9 or 1:1 aspect
|
|
172
|
+
- 16pt radius on corners (when cards enabled); 0pt when classic view
|
|
173
|
+
- Title below image in 18pt weight 600
|
|
174
|
+
- Vote column at bottom-left; actions bottom-right
|
|
175
|
+
|
|
176
|
+
**Comment**
|
|
177
|
+
- Leading indentation line: 2pt `#EDEFF1` / `#343536` vertical bar, `Int × 10pt` from leading edge (each reply level indents 10pt)
|
|
178
|
+
- Structure: avatar (optional, 20pt circular) + username + `•` + timestamp + `•` + karma (if not hidden) — then body text
|
|
179
|
+
- Body: 14pt weight 400, line-height 1.5
|
|
180
|
+
- Trailing actions: reply, vote arrows, share, more (ghost/muted icons)
|
|
181
|
+
- Collapse indicator: `[-]` or `[+]` at leading edge to toggle thread collapse
|
|
182
|
+
|
|
183
|
+
**Subreddit Banner (Detail Screen)**
|
|
184
|
+
- Full-width banner image OR solid color matching subreddit accent
|
|
185
|
+
- Height: 120-180pt
|
|
186
|
+
- Subreddit avatar: circular 72pt, overlapping the bottom of banner by 36pt, white 3pt border
|
|
187
|
+
- Below: subreddit name (Reddit Sans 22pt weight 700), member count (12pt `#7C7C7C`)
|
|
188
|
+
- Trailing "Join/Joined" button at top-right of banner
|
|
189
|
+
|
|
190
|
+
**Chat Channel Card**
|
|
191
|
+
- Newer Reddit feature — group chat rooms
|
|
192
|
+
- Similar card layout to posts but with "Live" badge if active
|
|
193
|
+
- Member count + "chatting now" indicator
|
|
194
|
+
|
|
195
|
+
### Navigation
|
|
196
|
+
|
|
197
|
+
**Bottom Tab Bar**
|
|
198
|
+
- Height: 49pt + safe area
|
|
199
|
+
- Background: `#FFFFFF` (light) / `#1A1A1B` (dark) — solid, no blur
|
|
200
|
+
- Tabs: Home, Communities, Create (center, with `+` FAB-style), Chat, Inbox
|
|
201
|
+
- Active color: `#FF4500` (brand red) or `#D7DADC` (neutral — varies)
|
|
202
|
+
- Inactive: `#878A8C` / `#818384`
|
|
203
|
+
- Labels: Reddit Sans 11pt weight 500
|
|
204
|
+
- Badge: red `#FF585B` circle with white count
|
|
205
|
+
|
|
206
|
+
**Top Nav (Feed)**
|
|
207
|
+
- Height: 44pt + safe area
|
|
208
|
+
- Leading: profile avatar (28pt circular)
|
|
209
|
+
- Center: subreddit name or "Home" / "Popular" / "All" switcher (tap to open sheet)
|
|
210
|
+
- Trailing: search + sort + more
|
|
211
|
+
- Background: `#FFFFFF` light / `#1A1A1B` dark with bottom 1pt divider
|
|
212
|
+
|
|
213
|
+
**Top Nav (Subreddit Detail)**
|
|
214
|
+
- Transparent over banner image when scrolled to top
|
|
215
|
+
- Collapses to solid surface with subreddit name + back chevron on scroll
|
|
216
|
+
- Trailing: Join button + search + more
|
|
217
|
+
|
|
218
|
+
### Input Fields
|
|
219
|
+
|
|
220
|
+
**Compose (Create Post)**
|
|
221
|
+
- Full-screen modal
|
|
222
|
+
- Subreddit picker at top (pill with `r/pickme` placeholder)
|
|
223
|
+
- Title input: 18pt weight 600 placeholder "Title"
|
|
224
|
+
- Body input: 14pt regular placeholder "body (optional)"
|
|
225
|
+
- Formatting toolbar: Bold, Italic, Link, Quote, Code, List (flat icons, 20pt)
|
|
226
|
+
- Attach row: Photo/Video, Poll, Link, GIF
|
|
227
|
+
- Submit button: `#FF4500` pill "Post" in top-right nav
|
|
228
|
+
|
|
229
|
+
**Search Bar**
|
|
230
|
+
- Height: 40pt
|
|
231
|
+
- Corner radius: 20pt (pill)
|
|
232
|
+
- Background: `#F2F3F5` light / `#343536` dark
|
|
233
|
+
- Leading: `magnifyingglass` 18pt `#878A8C`
|
|
234
|
+
- Placeholder: "Search Reddit"
|
|
235
|
+
|
|
236
|
+
**Comment Input**
|
|
237
|
+
- Appears at bottom of thread when "Add a comment" tapped
|
|
238
|
+
- Expandable multiline; starts at ~40pt height, grows to ~200pt
|
|
239
|
+
- Corner radius: 20pt
|
|
240
|
+
- Focus: shows submit button at trailing right in `#FF4500`
|
|
241
|
+
|
|
242
|
+
### Distinctive Components
|
|
243
|
+
|
|
244
|
+
**Vote Column (The Signature)**
|
|
245
|
+
A vertical stack of three elements: up arrow, karma number, down arrow.
|
|
246
|
+
- Width: 44pt (standard) or 32pt (compact)
|
|
247
|
+
- Height: ~72pt (22pt arrow + 28pt number + 22pt arrow)
|
|
248
|
+
- Up arrow: `chevron.up` or custom up-tri icon, 18pt
|
|
249
|
+
- Number: Reddit Sans 12pt weight 700, center
|
|
250
|
+
- Down arrow: `chevron.down` or custom down-tri icon, 18pt
|
|
251
|
+
- State transitions:
|
|
252
|
+
- None → Up: arrow fills orange, number turns orange, number increments, scale bounce
|
|
253
|
+
- None → Down: arrow fills blue-purple, number turns blue-purple, number decrements, scale bounce
|
|
254
|
+
- Up → None: arrow returns to gray, number to gray, decrements
|
|
255
|
+
- Up → Down: arrow slides down, color changes, number decrements by 2, scale bounce
|
|
256
|
+
- Haptic: selection haptic on each state change
|
|
257
|
+
- Position: left side of post card (standard), or below media (media-first variant)
|
|
258
|
+
|
|
259
|
+
**Flair Pill**
|
|
260
|
+
- Small rectangular or rounded tag attached to post
|
|
261
|
+
- Per-subreddit styled — background color, text color, optional emoji prefix
|
|
262
|
+
- Shape: 4pt corner radius, 11pt weight 600 text
|
|
263
|
+
- Padding: 3pt vertical, 6pt horizontal
|
|
264
|
+
- Example tags: "News", "Discussion", "Shitpost", "NSFW", "Spoiler"
|
|
265
|
+
- System flairs:
|
|
266
|
+
- "NSFW": `#F3B200` bg, black text
|
|
267
|
+
- "SPOILER": black bg, white text
|
|
268
|
+
- "OC" (Original Content): `#46D160` bg, white text
|
|
269
|
+
|
|
270
|
+
**Subreddit Pill (Inline `r/subredditname`)**
|
|
271
|
+
- Used inside post cards and anywhere a subreddit is referenced inline
|
|
272
|
+
- No background; subreddit avatar 16pt circular + `r/name` in 12pt weight 600
|
|
273
|
+
- Tap: navigate to subreddit
|
|
274
|
+
- Color: brand red `#FF4500` when top-level header, neutral `#1A1A1B` / `#D7DADC` when inline
|
|
275
|
+
|
|
276
|
+
**Comment Thread Indentation**
|
|
277
|
+
- Each nested reply indents 10pt
|
|
278
|
+
- A 2pt wide vertical line on the leading edge of nested replies in `#EDEFF1` / `#343536`
|
|
279
|
+
- Lines are continuous — when you scroll down the reply chain, the line follows
|
|
280
|
+
- Collapse on tap: `[-]` → `[+]` toggles hide sub-thread
|
|
281
|
+
|
|
282
|
+
**Snoo (The Alien Mascot)**
|
|
283
|
+
- Reddit's owl-eyed alien mascot in red-and-orange spacesuit
|
|
284
|
+
- Appears on: empty state illustrations, error 404 pages, splash screen, settings > about
|
|
285
|
+
- Also featured in Snoovatar feature — users design their own Snoo as their profile avatar
|
|
286
|
+
|
|
287
|
+
**Award Icons (Deprecated but still visible)**
|
|
288
|
+
- Pre-2023 awards: Silver, Gold, Platinum — shown as small icons next to post/comment titles
|
|
289
|
+
- Still visible on historical posts even though the feature was removed
|
|
290
|
+
- Icons: 16pt round with metal-colored backgrounds
|
|
291
|
+
|
|
292
|
+
**Media Gallery**
|
|
293
|
+
- When a post has multiple images, render as horizontal swipe gallery with pagination dots at bottom
|
|
294
|
+
- 1-indexed counter in top-right corner: "1/4"
|
|
295
|
+
|
|
296
|
+
**Live Chat Channel**
|
|
297
|
+
- Reddit Chat Channels render as a Discord-like threaded chat with real-time messages
|
|
298
|
+
- Each message: avatar + username (in subreddit accent color) + message body + timestamp
|
|
299
|
+
- "N typing" indicator at bottom
|
|
300
|
+
- Join/Leave affordance
|
|
301
|
+
|
|
302
|
+
## 5. Layout Principles
|
|
303
|
+
|
|
304
|
+
### Spacing System
|
|
305
|
+
- Base unit: 4pt
|
|
306
|
+
- Scale: 4, 8, 10, 12, 16, 20, 24, 32, 44, 72
|
|
307
|
+
- Standard margin: 16pt horizontal on screens
|
|
308
|
+
- Card padding: 12pt internal
|
|
309
|
+
- Card-to-card gap: 8pt
|
|
310
|
+
- Comment indentation step: 10pt per reply level
|
|
311
|
+
|
|
312
|
+
### Grid & Container
|
|
313
|
+
- Feed: single column, full-width cards with 16pt side margins (or 0pt full-bleed in classic view)
|
|
314
|
+
- Card content: left-aligned; vote column left, actions right
|
|
315
|
+
- Chat: full-width single column with 16pt padding
|
|
316
|
+
|
|
317
|
+
### Whitespace Philosophy
|
|
318
|
+
- **Inside cards**: generous 12-16pt padding
|
|
319
|
+
- **Between cards**: minimal 8pt gap — the canvas color acts as a visual break
|
|
320
|
+
- **Comment thread**: tight vertical density (10pt between comments) to fit long discussions
|
|
321
|
+
- **Post detail**: comfortable reading density (16pt gaps between body sections)
|
|
322
|
+
|
|
323
|
+
### Border Radius Scale
|
|
324
|
+
- Square (0pt): Classic view post cards, dividers
|
|
325
|
+
- Soft (4pt): Flair pills, compact buttons
|
|
326
|
+
- Standard (8pt): Media corners in classic view, code blocks
|
|
327
|
+
- Card (16pt): New card-style post cards, subreddit banner
|
|
328
|
+
- Pill (500pt / 24pt): Primary CTAs, Join button, search bar
|
|
329
|
+
- Full Circle (50%): Avatars, subreddit icons, up/down arrows on vote
|
|
330
|
+
|
|
331
|
+
## 6. Depth & Elevation
|
|
332
|
+
|
|
333
|
+
| Level | Treatment | Use |
|
|
334
|
+
|-------|-----------|-----|
|
|
335
|
+
| Flat (0) | No shadow | Cards sitting on canvas (card radius provides visual separation) |
|
|
336
|
+
| Hover (1) | `rgba(0,0,0,0.04)` background tint | Pressed card state |
|
|
337
|
+
| Floating (2) | `rgba(0,0,0,0.08) 0 2px 8px` | Floating "Back to top" button, overlay toast |
|
|
338
|
+
| Sheet (3) | `rgba(0,0,0,0.2) 0 -12px 32px` | Bottom action sheet (sort, filter, more) |
|
|
339
|
+
| Modal Overlay | `rgba(0,0,0,0.5)` backdrop | Modal dim |
|
|
340
|
+
|
|
341
|
+
**Shadow Philosophy**: Reddit is largely flat. Cards sit on the canvas with either a corner radius or a hairline divider — not shadows. Only genuinely floating UI (the "back to top" pill, bottom-sheet actions) has shadows.
|
|
342
|
+
|
|
343
|
+
### Motion
|
|
344
|
+
- **Vote tap**: Arrow icon scales 1.0 → 1.25 → 1.0 spring, color cross-fades, karma number tick animates + haptic selection
|
|
345
|
+
- **Card tap**: 200ms ease-out background tint to `#F2F3F5` / `#343536`
|
|
346
|
+
- **Navigate to detail**: Native iOS push transition; card stays in place at feed top
|
|
347
|
+
- **Comment expand/collapse**: 60fps height animation, 200ms ease
|
|
348
|
+
- **Join button**: "Join" → "Joined" with checkmark scale bounce + green flash
|
|
349
|
+
- **Media gallery swipe**: Horizontal page gesture with spring snap
|
|
350
|
+
- **Pull-to-refresh**: Red Snoo alien icon spins as refresh indicator
|
|
351
|
+
- **Infinite scroll**: New cards fade + slide up 8pt over 150ms
|
|
352
|
+
- **Chat message arrival**: Slide up from bottom + opacity fade over 200ms
|
|
353
|
+
|
|
354
|
+
## 7. Do's and Don'ts
|
|
355
|
+
|
|
356
|
+
### Do
|
|
357
|
+
- Use `#FF4500` (Reddit Orange-Red) as the single brand accent — logo, key CTAs
|
|
358
|
+
- Use the semantic vote pair: `#FF8717` upvote orange and `#7193FF` downvote blue-purple
|
|
359
|
+
- Show the vote column on EVERY post and comment — it's the brand
|
|
360
|
+
- Keep cards flat — use corner radius (16pt in card view, 0pt in classic) not shadows
|
|
361
|
+
- Render Markdown inline: bold, italic, quote, code, link
|
|
362
|
+
- Support subreddit accent color customization — the Join button should tint to community color
|
|
363
|
+
- Use circular subreddit avatars — `r/subredditname` pill next to avatar
|
|
364
|
+
- Indent comment replies 10pt per level with a 2pt vertical rule on the leading edge
|
|
365
|
+
- Use Reddit Sans (fallback Noto Sans, then SF Pro) at 14pt body / 18pt title / 12pt meta
|
|
366
|
+
- Offer both card view (16pt corners) and classic view (0pt full-bleed) as a user preference
|
|
367
|
+
|
|
368
|
+
### Don't
|
|
369
|
+
- Don't flip the semantic vote colors — upvote MUST be warm (orange) and downvote cool (blue-purple)
|
|
370
|
+
- Don't put the vote column anywhere other than left of post content (or below media in media-first)
|
|
371
|
+
- Don't use drop shadows on post cards — Reddit is flat
|
|
372
|
+
- Don't skip the subreddit `r/name` pill — every post must identify its community
|
|
373
|
+
- Don't use brand red `#FF4500` for the upvote — that's `#FF8717` orange
|
|
374
|
+
- Don't use blue `#0079D3` as an accent — that's the LINK color, not the brand color
|
|
375
|
+
- Don't round subreddit avatars to anything other than circles
|
|
376
|
+
- Don't compress the metadata row — `r/subreddit • timestamp • comments` should be readable
|
|
377
|
+
- Don't use Discord-style role colors for usernames — Reddit keeps usernames neutral
|
|
378
|
+
- Don't animate vote state changes too aggressively — a subtle bounce + color swap is enough
|
|
379
|
+
|
|
380
|
+
## 8. Responsive Behavior
|
|
381
|
+
|
|
382
|
+
### Device Sizes
|
|
383
|
+
| Device | Width | Key Changes |
|
|
384
|
+
|--------|-------|-------------|
|
|
385
|
+
| iPhone SE (3rd gen) | 375pt | Vote column collapses to 32pt; title clamp 2 lines |
|
|
386
|
+
| iPhone 13/14/15 | 390pt | Standard 44pt vote column; 3-line title clamp |
|
|
387
|
+
| iPhone 15/16 Pro | 393pt | Dynamic Island accommodated in nav |
|
|
388
|
+
| iPhone 15/16 Pro Max | 430pt | Standard layout with slightly wider cards |
|
|
389
|
+
| iPad | 768pt+ | Two-column feed in landscape |
|
|
390
|
+
|
|
391
|
+
### Dynamic Type
|
|
392
|
+
- Post title, body, comment body: respect Dynamic Type
|
|
393
|
+
- Karma number, tab labels, flair pills, vote arrow icons: fixed size
|
|
394
|
+
- Timestamp / metadata: respects Dynamic Type but capped at 14pt
|
|
395
|
+
|
|
396
|
+
### Orientation
|
|
397
|
+
- Feed, thread, chat: portrait-locked on iPhone (except video posts in landscape)
|
|
398
|
+
- Image / video viewer: rotates to landscape
|
|
399
|
+
- iPad: all orientations; feed becomes 2-column in landscape
|
|
400
|
+
|
|
401
|
+
### Touch Targets
|
|
402
|
+
- Vote arrows: 36pt × 36pt each, stacked
|
|
403
|
+
- Card tap: full card surface
|
|
404
|
+
- Action row icons: 44pt hit area
|
|
405
|
+
- Subreddit pill tap: hit area expands around pill
|
|
406
|
+
- Comment collapse arrow: 32pt hit area
|
|
407
|
+
|
|
408
|
+
### Safe Area Handling
|
|
409
|
+
- Top: nav bar respects safe area; transparent over banner scrolls into solid
|
|
410
|
+
- Bottom: tab bar respects home indicator; chat compose bar floats above safe area
|
|
411
|
+
- Sides: 16pt content insets
|
|
412
|
+
|
|
413
|
+
## 9. Agent Prompt Guide
|
|
414
|
+
|
|
415
|
+
### Quick Color Reference
|
|
416
|
+
- Reddit Orange-Red: `#FF4500`
|
|
417
|
+
- Reddit Red (alert): `#FF585B`
|
|
418
|
+
- Upvote Orange: `#FF8717`
|
|
419
|
+
- Upvote Dark Variant: `#FFAA66`
|
|
420
|
+
- Downvote Blue-Purple (light): `#7193FF`
|
|
421
|
+
- Downvote Blue-Purple (dark): `#9494FF`
|
|
422
|
+
- Vote Inactive (light): `#878A8C`
|
|
423
|
+
- Vote Inactive (dark): `#818384`
|
|
424
|
+
- Canvas (new light): `#F6F7F8`
|
|
425
|
+
- Canvas (classic light): `#DAE0E6`
|
|
426
|
+
- Canvas (dark): `#1A1A1B`
|
|
427
|
+
- Card surface (light): `#FFFFFF`
|
|
428
|
+
- Card surface (dark): `#272729`
|
|
429
|
+
- Surface 2 (light): `#F2F3F5`
|
|
430
|
+
- Surface 2 (dark): `#343536`
|
|
431
|
+
- Divider (light): `#EDEFF1`
|
|
432
|
+
- Divider (dark): `#343536`
|
|
433
|
+
- Text primary (light): `#1A1A1B`
|
|
434
|
+
- Text secondary (light): `#7C7C7C`
|
|
435
|
+
- Text primary (dark): `#D7DADC`
|
|
436
|
+
- Text secondary (dark): `#818384`
|
|
437
|
+
- Link: `#0079D3`
|
|
438
|
+
- Default subreddit accent: `#0079D3`
|
|
439
|
+
- Gold Award / Premium: `#FFB000`
|
|
440
|
+
- Success green: `#46D160`
|
|
441
|
+
|
|
442
|
+
### Example Component Prompts
|
|
443
|
+
- "Create a SwiftUI Reddit vote column: 44pt wide, 72pt tall stack. Top: up-chevron icon 18pt (gray #878A8C default, orange #FF8717 when active). Center: karma number in Reddit Sans 12pt weight 700, centered, color matching active state. Bottom: down-chevron icon 18pt (gray default, #7193FF blue-purple when active). Tap: scale 1.0 → 1.25 → 1.0 spring on icon + selection haptic + number tick increment. Three states: neutral, up (orange), down (blue-purple)."
|
|
444
|
+
- "Build a Reddit post card: background #FFFFFF light / #272729 dark, 16pt corner radius, 12pt internal padding. Top row: 20pt circular subreddit avatar + `r/AnimalCrossing` pill in 12pt weight 600 + '• 2h ago • 125 comments' in 12pt #7C7C7C. Next: post title in Reddit Sans 18pt weight 600 #1A1A1B, max 3 lines. Optional flair row: horizontal pills with per-subreddit colors. Image preview if available, 16pt corners. Bottom action row: vote column left + (comments icon + count, share icon, save icon, more-ellipsis) right at 18pt each #878A8C."
|
|
445
|
+
- "Design the Reddit comment thread row: leading indentation bars at 10pt per reply level, 2pt wide #EDEFF1. Header row: 20pt avatar (optional) + 'u/username' 12pt weight 500 + '• 2h' timestamp 12pt #7C7C7C + '• 234' karma 12pt weight 500. Body text in Reddit Sans 14pt weight 400 line-height 1.5. Support markdown inline. Trailing action row: reply icon + vote arrows + share + more. Collapse indicator `[-]` / `[+]` at leading edge toggles sub-thread visibility."
|
|
446
|
+
- "Create the subreddit banner detail: full-width banner image (120-180pt tall) or solid accent color. Circular subreddit avatar (72pt) with white 3pt border overlapping the bottom edge by 36pt. Below: subreddit name in Reddit Sans 22pt weight 700, member count '142k members' in 12pt #7C7C7C. Top-right of banner: Join pill in subreddit accent color (#FF4500 default, or custom like #0079D3), white text 14pt weight 600, pill 24pt corner radius — morphs to 'Joined' with checkmark prefix after tap."
|
|
447
|
+
- "Build a Reddit flair pill: rectangular tag, 4pt corner radius, 3pt vertical × 6pt horizontal padding. Reddit Sans 11pt weight 600. Per-subreddit styled — backgrounds and text colors configurable. System flairs: 'NSFW' in `#F3B200` bg + black text, 'SPOILER' in black bg + white text, 'OC' in `#46D160` bg + white text."
|
|
448
|
+
- "Design the Reddit bottom tab bar: 5 tabs — Home, Communities, Create (center, +-icon styled differently), Chat, Inbox. Icons 22pt. Active color: #FF4500 (brand) or #1A1A1B (neutral — both in use). Inactive: #878A8C. Labels: Reddit Sans 11pt weight 500. Background: solid #FFFFFF light / #1A1A1B dark, no blur. Red `#FF585B` badge pill on Inbox tab when unread messages exist."
|
|
449
|
+
|
|
450
|
+
### Iteration Guide
|
|
451
|
+
1. The vote column is non-negotiable — up-chevron + karma number + down-chevron appears on EVERY post and comment
|
|
452
|
+
2. Upvote is ORANGE `#FF8717` and downvote is BLUE-PURPLE `#7193FF` — these are complementary and semantic (warm vs cool)
|
|
453
|
+
3. Reddit brand red `#FF4500` is the BRAND color (logo, primary CTA) — it is NOT the upvote color. Do not confuse.
|
|
454
|
+
4. Cards are FLAT — use 16pt corner radius in card view, 0pt full-bleed in classic view, NEVER drop shadows
|
|
455
|
+
5. Canvas is `#F6F7F8` (new light) / `#1A1A1B` (dark); cards sit on `#FFFFFF` light / `#272729` dark
|
|
456
|
+
6. Subreddit accent color is configurable per community — the Join button and sidebar tint adapt
|
|
457
|
+
7. Comment threads indent 10pt per reply with a 2pt `#EDEFF1` / `#343536` vertical rule on the leading edge
|
|
458
|
+
8. Typography: Reddit Sans (fallback Noto Sans, then SF Pro). 14pt body / 18pt title / 12pt meta. Weights 400, 500, 600, 700.
|
|
459
|
+
9. Flair pills are 4pt radius rectangles with per-subreddit or per-system color; NSFW `#F3B200`, Spoiler black, OC green
|
|
460
|
+
10. Render full Markdown inline in post body and comments — bold, italic, quote, code, link
|