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,449 @@
|
|
|
1
|
+
# Design System Inspiration of Craft (iOS)
|
|
2
|
+
|
|
3
|
+
## 1. Visual Theme & Atmosphere
|
|
4
|
+
|
|
5
|
+
Craft's iOS app is a *beautifully crafted document editor* — the antithesis of a spreadsheet-y productivity tool. Where most note apps feel like text fields with chrome bolted on, Craft feels like a native iOS app that a designer obsessed over: rounded everything, soft layered shadows, fluid spring physics, and a signature blue→purple gradient that threads through every primary action. The canvas is warm off-white (`#FCFCFD`) in light, a soft near-charcoal (`#1A1A1E`) in dark — never pure black, never clinical. Open a document and you see a hero zone (optional full-bleed cover, a large emoji or photo icon, the title in Inter 28pt extrabold), then a vertical flow of **blocks** — but unlike Notion's invisible-flat blocks, Craft's blocks frequently render as *cards*: rounded rectangles with a subtle border and a soft drop shadow, with an icon chip on the left. Nested pages, link previews, toggles, and to-dos all become tappable cards. This card-forward block model is Craft's signature visual move.
|
|
6
|
+
|
|
7
|
+
The brand color is unmistakable: a **blue→purple gradient** running roughly `#2F5BEA` (Craft Blue) to `#6E56CF` (Craft Purple). It appears on the "New Document" button, the floating `+` action, the active bottom-bar icon, selected-state fills, focused input borders, and the app icon itself. Unlike Notion (which has *no* brand accent), Craft leans into this gradient as identity — it's the one constant across light and dark. Solid `#2F5BEA` is used where a gradient would be visually noisy (small toggles, links, inline accents).
|
|
8
|
+
|
|
9
|
+
The second signature is **Daily Note** — a date-stamped document auto-created each day, surfaced as a card and as a dedicated tab/entry point. It's Craft's opinion that journaling and daily capture deserve a first-class home. Combined with **block actions** (long-press or the leading handle reveals Style, Turn into, Move, Link to, Delete) and the **`/` block inserter** (type `/` to open a menu of block types — Text, Page, To-do, Image, Code, Table, Toggle), these three affordances — cards, Daily Note, `/` inserter — are how everything in Craft gets built.
|
|
10
|
+
|
|
11
|
+
Typography is **Inter** as the primary UI/document face (Craft historically shipped a refined sans very close to Inter; Inter is the faithful, freely-licensed stand-in), falling back to SF Pro on iOS. Hierarchy is editorial: document title at 28pt extrabold, H1 24pt bold, H2 20pt bold, H3 17pt semibold, body 16pt regular. Generous corner radii (10–20pt on cards, sheets, and buttons) and soft, low-opacity shadows give the whole app a tactile, "objects you can pick up" feel — far softer than Material, warmer than stock iOS.
|
|
12
|
+
|
|
13
|
+
**Key Characteristics:**
|
|
14
|
+
- Warm off-white canvas (`#FCFCFD`) light / soft charcoal (`#1A1A1E`) dark — never pure black
|
|
15
|
+
- Signature **blue→purple gradient** (`#2F5BEA` → `#6E56CF`) on every primary action — the constant brand identity
|
|
16
|
+
- **Card-forward blocks** — nested pages, links, toggles, to-dos render as rounded cards with icon chips + soft shadows
|
|
17
|
+
- **Daily Note** — auto-created date-stamped document, surfaced as a card and a dedicated entry point
|
|
18
|
+
- **`/` block inserter** — type `/` to insert any block type (Text, Page, To-do, Image, Code, Table, Toggle)
|
|
19
|
+
- **Block actions** — long-press / leading handle → Style, Turn into, Move, Link to, Delete
|
|
20
|
+
- Optional full-bleed **cover + emoji/photo page icon** hero zone, generous and editorial
|
|
21
|
+
- Cross-document **links & backlinks** — pages reference each other as inline cards
|
|
22
|
+
- Generous corner radii (10–20pt) + soft layered shadows — tactile, "pick-it-up" feel
|
|
23
|
+
- Fluid spring motion — sheets, cards, and the `/` menu animate with iOS-native spring physics
|
|
24
|
+
- Minimal chrome: compact top bar (back · search · `+` · ⋯), a slim bottom bar with center gradient FAB
|
|
25
|
+
|
|
26
|
+
## 2. Color Palette & Roles
|
|
27
|
+
|
|
28
|
+
### Primary (Interactive)
|
|
29
|
+
- **Craft Blue** (`#2F5BEA`): Primary solid interactive — links, toggles, focused borders, selected states, gradient start.
|
|
30
|
+
- **Craft Blue Pressed** (`#2347C9`): Pressed state for solid blue controls.
|
|
31
|
+
- **Craft Purple** (`#6E56CF`): Gradient end; secondary accent on highlights and decorative chips.
|
|
32
|
+
- **Craft Purple Soft** (`#8B73E8`): Lighter purple for dark-mode accents and hover tints.
|
|
33
|
+
- **Brand Gradient**: linear `#2F5BEA → #6E56CF` (≈120°) — New Document button, FAB, active tab, hero cover default.
|
|
34
|
+
|
|
35
|
+
### Canvas & Surfaces (Light Mode)
|
|
36
|
+
- **Canvas White** (`#FCFCFD`): Primary light canvas — warm off-white, not pure white.
|
|
37
|
+
- **Surface Gray** (`#F4F4F6`): Sidebar / space list background, subtle elevated rows.
|
|
38
|
+
- **Card Surface** (`#FFFFFF`): Block-card background, sheets, popovers (lifts above the warm canvas).
|
|
39
|
+
- **Surface Pressed** (`#ECECEF`): Pressed/selected rows and cards.
|
|
40
|
+
- **Divider** (`#E6E6EA`): Hairline borders on cards and between sections.
|
|
41
|
+
- **Selection Highlight** (`#2F5BEA29`): ~16% blue overlay on selected text/blocks.
|
|
42
|
+
|
|
43
|
+
### Canvas & Surfaces (Dark Mode)
|
|
44
|
+
- **Dark Canvas** (`#1A1A1E`): Primary dark canvas — Craft's soft charcoal, NOT pure black.
|
|
45
|
+
- **Dark Card** (`#232328`): Block-card background, sheets, popovers.
|
|
46
|
+
- **Dark Surface 2** (`#2C2C32`): Hovered/pressed cards, secondary fills.
|
|
47
|
+
- **Dark Divider** (`#34343C`): Hairline borders on dark.
|
|
48
|
+
- **Dark Selection** (`#2F5BEA3D`): ~24% blue overlay on dark selection.
|
|
49
|
+
|
|
50
|
+
### Text
|
|
51
|
+
- **Text Primary Light** (`#1C1C22`): Primary body/title text — near-black, slightly warm.
|
|
52
|
+
- **Text Secondary Light** (`#6A6A78`): Metadata, captions, secondary body.
|
|
53
|
+
- **Text Tertiary Light** (`#9B9BA6`): Placeholder, disabled, very low-emphasis.
|
|
54
|
+
- **Text Primary Dark** (`#ECECEF`): Primary text on dark — soft white.
|
|
55
|
+
- **Text Secondary Dark** (`#9B9BA6`): Secondary on dark (shared tone, works on both).
|
|
56
|
+
- **Text Tertiary Dark** (`#67677A`): Placeholder/disabled on dark.
|
|
57
|
+
|
|
58
|
+
### Block Accent Tints (icon chips & callouts)
|
|
59
|
+
Craft tints block-card icon chips and callouts with low-opacity brand/utility colors.
|
|
60
|
+
|
|
61
|
+
| Role | Light Mode | Dark Mode |
|
|
62
|
+
|------|-----------|-----------|
|
|
63
|
+
| Blue Tint | `#2F5BEA14` | `#2F5BEA2E` |
|
|
64
|
+
| Purple Tint | `#6E56CF14` | `#6E56CF33` |
|
|
65
|
+
| Green Tint | `#30A46C1F` | `#30A46C33` |
|
|
66
|
+
| Amber Tint | `#F0A92B24` | `#F0A92B33` |
|
|
67
|
+
| Red Tint | `#E5484D1F` | `#E5484D33` |
|
|
68
|
+
| Neutral Tint | `#7676801F` | `#8B8B9E29` |
|
|
69
|
+
|
|
70
|
+
### Highlight / Callout Colors (saturated)
|
|
71
|
+
For inline text highlights, callout accents, and tag chips.
|
|
72
|
+
|
|
73
|
+
| Role | Color |
|
|
74
|
+
|------|-------|
|
|
75
|
+
| Blue | `#2F5BEA` |
|
|
76
|
+
| Purple | `#6E56CF` |
|
|
77
|
+
| Green | `#30A46C` |
|
|
78
|
+
| Amber | `#F0A92B` |
|
|
79
|
+
| Red | `#E5484D` |
|
|
80
|
+
| Pink | `#D6409F` |
|
|
81
|
+
| Teal | `#12A594` |
|
|
82
|
+
| Gray | `#7E7E8A` |
|
|
83
|
+
|
|
84
|
+
### Semantic
|
|
85
|
+
- **Error Red** (`#E5484D`): Delete confirmation, error toast, destructive actions.
|
|
86
|
+
- **Success Green** (`#30A46C`): Completed to-do fill, save-success toast.
|
|
87
|
+
- **Warning Amber** (`#F0A92B`): Warning callouts, sync-pending indicator.
|
|
88
|
+
- **Link Blue** (`#2F5BEA`): Inline links and cross-document references.
|
|
89
|
+
- **Focus Ring** (`#2F5BEA`): 2pt focused input/border ring.
|
|
90
|
+
|
|
91
|
+
## 3. Typography Rules
|
|
92
|
+
|
|
93
|
+
### Font Family
|
|
94
|
+
- **Primary**: `Inter` (by Rasmus Andersson, SIL OFL) — geometric humanist sans; faithful, freely-licensed stand-in for Craft's bespoke product sans, optimized for UI and long-form reading at small sizes.
|
|
95
|
+
- **Serif Option (reading mode)**: `Lora` (Google Fonts, SIL OFL) — optional serif for a "book"-style reading preference on long documents.
|
|
96
|
+
- **Mono (code blocks)**: `JetBrains Mono` (SIL OFL) — used only inside code blocks and inline code.
|
|
97
|
+
- **Fallback Stack**: `-apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Segoe UI', Roboto, Helvetica, Arial, sans-serif`
|
|
98
|
+
- **iOS behavior**: falls back to SF Pro Display (titles) / SF Pro Text (body) when Inter isn't bundled.
|
|
99
|
+
|
|
100
|
+
### Hierarchy
|
|
101
|
+
|
|
102
|
+
| Role | Font | Size | Weight | Line Height | Letter Spacing | Notes |
|
|
103
|
+
|------|------|------|--------|-------------|----------------|-------|
|
|
104
|
+
| Doc Title | Inter | 28pt | 800 | 1.2 | -0.5pt | Below cover/emoji, extrabold hero |
|
|
105
|
+
| Heading 1 (`/h1`) | Inter | 24pt | 700 | 1.25 | -0.3pt | Top-level section in page |
|
|
106
|
+
| Heading 2 (`/h2`) | Inter | 20pt | 700 | 1.3 | -0.2pt | Sub-section |
|
|
107
|
+
| Heading 3 (`/h3`) | Inter | 17pt | 600 | 1.35 | -0.1pt | Sub-sub-section |
|
|
108
|
+
| Body | Inter | 16pt | 400 | 1.55 | 0pt | Paragraph block default |
|
|
109
|
+
| Body Emphasis | Inter | 16pt | 600 | 1.55 | 0pt | Bold inline run |
|
|
110
|
+
| Card Title | Inter | 15pt | 600 | 1.3 | 0pt | Block-card primary label |
|
|
111
|
+
| Card Subtitle | Inter | 12pt | 400 | 1.35 | 0pt | Block-card metadata line |
|
|
112
|
+
| Meta | Inter | 13pt | 400 | 1.4 | 0pt | "Edited 2m ago", doc subtitle |
|
|
113
|
+
| Caption | Inter | 12pt | 500 | 1.4 | 0.1pt | Chips, small labels |
|
|
114
|
+
| Quote | Lora | 17pt | 400 | 1.5 | 0pt | Italic quote block |
|
|
115
|
+
| Code Inline | JetBrains Mono | 14pt | 400 | 1.4 | 0pt | `inline code` with tint bg |
|
|
116
|
+
| Code Block | JetBrains Mono | 13pt | 400 | 1.5 | 0pt | Fenced code block |
|
|
117
|
+
| Button | Inter | 15pt | 600 | 1.0 | 0pt | Primary/secondary buttons |
|
|
118
|
+
| Link | Inter | 16pt | 500 | 1.55 | 0pt | Inline link — `#2F5BEA` |
|
|
119
|
+
| Tab Label | Inter | 10pt | 500 | 1.0 | 0.1pt | Bottom-bar labels (when shown) |
|
|
120
|
+
| Sidebar Label | Inter | 14pt | 500 | 1.3 | 0pt | Space/document list rows |
|
|
121
|
+
| Placeholder | Inter | 16pt | 400 | 1.55 | 0pt | "Type / for blocks" |
|
|
122
|
+
|
|
123
|
+
### Principles
|
|
124
|
+
- **Editorial rhythm**: sizes/weights follow document conventions (Title > H1 > H2 > H3 > body), not app-chrome conventions.
|
|
125
|
+
- **Extrabold reserved for the doc title**: 800 weight is the single most expressive moment; everything else tops out at 700.
|
|
126
|
+
- **Body breathes**: 16pt body at 1.55 line-height — Craft documents are made to be *read*, not skimmed.
|
|
127
|
+
- **Monospace is code-only**: JetBrains Mono appears solely in code blocks and inline code.
|
|
128
|
+
- **Dynamic Type first-class**: title, headings, body, captions scale; card subtitles, tab labels, slash-menu rows stay fixed for layout safety.
|
|
129
|
+
|
|
130
|
+
## 4. Component Stylings
|
|
131
|
+
|
|
132
|
+
### Buttons
|
|
133
|
+
|
|
134
|
+
**Primary Button (New Document / Done / Share)**
|
|
135
|
+
- Shape: Rounded rectangle, 12pt corner radius
|
|
136
|
+
- Background: gradient `#2F5BEA → #6E56CF` (≈120°)
|
|
137
|
+
- Text: `#FFFFFF`, Inter 15pt weight 600
|
|
138
|
+
- Padding: 13pt vertical, 26pt horizontal
|
|
139
|
+
- Pressed: `filter: brightness(0.92)` + scale 0.98 + soft haptic
|
|
140
|
+
- Optional leading SF Symbol 15pt, 8pt gap
|
|
141
|
+
|
|
142
|
+
**Solid Button (Secondary primary)**
|
|
143
|
+
- Background: solid `#2F5BEA` (`#2347C9` pressed)
|
|
144
|
+
- Text: `#FFFFFF`, Inter 15pt weight 600
|
|
145
|
+
- Same shape/padding as primary; used where a gradient would be visually noisy at small size
|
|
146
|
+
|
|
147
|
+
**Secondary / Outline Button**
|
|
148
|
+
- Background: transparent
|
|
149
|
+
- Text: `#1C1C22` light / `#ECECEF` dark
|
|
150
|
+
- Border: 1pt `#E6E6EA` / `#34343C`
|
|
151
|
+
- Corner radius: 10pt
|
|
152
|
+
- Padding: 12pt vertical, 20pt horizontal
|
|
153
|
+
- Font: Inter 14pt weight 500
|
|
154
|
+
- Pressed: background `#ECECEF` / `#2C2C32`
|
|
155
|
+
|
|
156
|
+
**Ghost / Text Button (Add block / Cancel)**
|
|
157
|
+
- Background: transparent, no border
|
|
158
|
+
- Text: `#2F5BEA` (action) or `#6A6A78` (Cancel)
|
|
159
|
+
- Font: Inter 14pt weight 600
|
|
160
|
+
- Pressed: 0.6 opacity
|
|
161
|
+
|
|
162
|
+
**Floating Action Button (`+`)**
|
|
163
|
+
- Size: 46pt, 14pt corner radius (rounded square, NOT a circle)
|
|
164
|
+
- Background: gradient `#2F5BEA → #6E56CF`
|
|
165
|
+
- Glyph: `plus` 22pt `#FFFFFF`
|
|
166
|
+
- Shadow: `0 8px 20px -6px rgba(47,91,234,0.6)`
|
|
167
|
+
- Centered in the bottom bar; opens the new-block / new-document sheet
|
|
168
|
+
|
|
169
|
+
**Icon Button (top bar / block handle)**
|
|
170
|
+
- Size: 22pt glyph in a 44pt hit area
|
|
171
|
+
- Default color: `#6A6A78` / `#9B9BA6`
|
|
172
|
+
- Pressed: `#2F5BEA`
|
|
173
|
+
|
|
174
|
+
### Blocks (the core atom)
|
|
175
|
+
|
|
176
|
+
Every content unit is a "block". Blocks support: leading drag/handle (long-press reveal), `/` insert, drag-reorder, and a Style/Turn-into menu. Many block types render as **cards**.
|
|
177
|
+
|
|
178
|
+
**Paragraph Block**
|
|
179
|
+
- Content: body 16pt w400 `#1C1C22`
|
|
180
|
+
- Empty placeholder: "Type / for blocks" in `#9B9BA6`
|
|
181
|
+
- Block gap: 8pt vertical
|
|
182
|
+
|
|
183
|
+
**Heading 1 / 2 / 3 Block**
|
|
184
|
+
- 24 / 20 / 17pt, weights 700 / 700 / 600
|
|
185
|
+
- 16pt top margin, 6pt bottom margin
|
|
186
|
+
|
|
187
|
+
**Card Block (Page / Link / nested document)** — *signature*
|
|
188
|
+
- Layout: rounded card, 12pt radius, 1pt `#E6E6EA` border, soft shadow `0 6px 18px -10px rgba(0,0,0,0.10)` light / `…0.6` dark
|
|
189
|
+
- Leading icon chip: 36pt rounded square (9pt radius) with tinted bg (e.g. blue tint) + emoji/favicon
|
|
190
|
+
- Title: Inter 15pt w600; subtitle: Inter 12pt w400 `#6A6A78`
|
|
191
|
+
- Trailing chevron `chevron.right` 16pt `#9B9BA6`
|
|
192
|
+
- Padding: 14pt all; tap opens the page / link
|
|
193
|
+
|
|
194
|
+
**To-do Block**
|
|
195
|
+
- Leading checkbox: 18pt rounded square (6pt radius), 1.8pt `#9B9BA6` border
|
|
196
|
+
- Checked: fill `#2F5BEA`, white checkmark, label gets strikethrough + `#9B9BA6`
|
|
197
|
+
- Content: 16pt w400; tap circle toggles with spring + soft haptic
|
|
198
|
+
|
|
199
|
+
**Toggle Block** (collapsible)
|
|
200
|
+
- Leading chevron ▸ (closed) / ▾ (open) 14pt `#9B9BA6`
|
|
201
|
+
- Title: 16pt w500; children indented 20pt; expand 220ms spring
|
|
202
|
+
|
|
203
|
+
**Callout Block**
|
|
204
|
+
- Background: a brand-tint fill (e.g. blue tint `#2F5BEA14`)
|
|
205
|
+
- Leading emoji 20pt; content 16pt w400
|
|
206
|
+
- Corner radius: 12pt; padding: 14pt; no border
|
|
207
|
+
|
|
208
|
+
**Code Block**
|
|
209
|
+
- Background: `#F4F4F6` light / `#2C2C32` dark
|
|
210
|
+
- Font: JetBrains Mono 13pt; 14pt padding; 10pt radius
|
|
211
|
+
- Language label top-right `#9B9BA6` 12pt; copy button top-right
|
|
212
|
+
|
|
213
|
+
**Quote Block**
|
|
214
|
+
- Left border: 3pt `#6E56CF`; padding 2pt/14pt; Lora 17pt italic `#6A6A78`
|
|
215
|
+
|
|
216
|
+
**Divider Block**
|
|
217
|
+
- 1pt `#E6E6EA` line, 16pt vertical margin
|
|
218
|
+
|
|
219
|
+
**Image / Photo Block**
|
|
220
|
+
- Full-width minus 22pt insets; 12pt corner radius; optional caption 12pt `#9B9BA6` below
|
|
221
|
+
|
|
222
|
+
**Table Block**
|
|
223
|
+
- Inline grid; header row w600; 1pt `#E6E6EA` cell borders; horizontal scroll within block
|
|
224
|
+
|
|
225
|
+
### Page Structure
|
|
226
|
+
|
|
227
|
+
**Page Header (hero)**
|
|
228
|
+
- Optional full-bleed cover, 96pt mobile / 160pt tablet, 14pt corner radius (insets) or full-bleed
|
|
229
|
+
- Page icon: 40pt emoji OR photo, with -38pt top offset overlapping cover
|
|
230
|
+
- Title: Inter 28pt w800 `#1C1C22`, 22pt horizontal inset, 6pt top margin from icon
|
|
231
|
+
- Subtitle row: "Edited 2m ago · Shared with N" — Inter 13pt `#6A6A78`
|
|
232
|
+
|
|
233
|
+
**Page Body**
|
|
234
|
+
- 22pt horizontal insets; vertical flow of blocks; 8pt block gap
|
|
235
|
+
- Empty state: "Type / for blocks" placeholder in first block
|
|
236
|
+
|
|
237
|
+
### Navigation
|
|
238
|
+
|
|
239
|
+
**Top Bar (Document)**
|
|
240
|
+
- Height: 44pt + safe area
|
|
241
|
+
- Leading: back chevron `chevron.left` + section name (e.g. "Home")
|
|
242
|
+
- Trailing: search · `+` (insert) · ⋯ (page actions: Share, Style, Move, Export, Delete)
|
|
243
|
+
- No large title — the document's own hero title is the title
|
|
244
|
+
|
|
245
|
+
**Bottom Bar**
|
|
246
|
+
- Height: 64pt + safe area
|
|
247
|
+
- Background: `#FCFCFD` / `#1A1A1E` @ 94% with blur, 0.5pt top divider
|
|
248
|
+
- Layout: left group (Home, Search) · center gradient FAB (`+`) · right group (Documents, Profile)
|
|
249
|
+
- Active icon: solid `#2F5BEA` (no pill); inactive `#6A6A78` / `#9B9BA6`
|
|
250
|
+
- Labels: optional Inter 10pt w500
|
|
251
|
+
|
|
252
|
+
**Space / Document List (slide-in or root)**
|
|
253
|
+
- Background: `#F4F4F6` / `#1A1A1E`
|
|
254
|
+
- Rows: 44pt tall, leading 20pt emoji/icon, title Inter 14pt w500, trailing ⋯
|
|
255
|
+
- Active row: `#ECECEF` / `#2C2C32` background
|
|
256
|
+
- Sections: "Spaces", "Recent", "Daily Notes", "Shared"; nested pages indent 20pt with leading chevron
|
|
257
|
+
|
|
258
|
+
### Input Fields
|
|
259
|
+
|
|
260
|
+
**Search Bar**
|
|
261
|
+
- Height: 40pt; background `#F4F4F6` / `#2C2C32`; no border; 10pt radius
|
|
262
|
+
- Leading `magnifyingglass` 16pt `#9B9BA6`; placeholder "Search" 15pt `#9B9BA6`
|
|
263
|
+
- Focus: 2pt `#2F5BEA` ring
|
|
264
|
+
|
|
265
|
+
**Text Field (rename / new doc)**
|
|
266
|
+
- Height: 44pt; background `#FFFFFF` / `#232328`; 1pt `#E6E6EA` / `#34343C`; 10pt radius
|
|
267
|
+
- Focus: border → 2pt `#2F5BEA`; 14pt horizontal padding; Inter 16pt
|
|
268
|
+
|
|
269
|
+
### Distinctive Components
|
|
270
|
+
|
|
271
|
+
**Block Card** — the signature: nested pages, link previews, toggles, and to-dos all become rounded icon-chip cards with soft shadows. This card-forward model (vs. Notion's flat blocks) is Craft's identity.
|
|
272
|
+
|
|
273
|
+
**Daily Note** — a date-stamped document auto-created each day, surfaced as a dedicated card ("Daily Note — May 18") and an entry point. Tapping creates/opens today's note; it accrues blocks like any page.
|
|
274
|
+
|
|
275
|
+
**`/` Block Inserter** — type `/` at the start of a line to open a cursor-anchored sheet/popover of block types. Each row: 28pt icon chip + title (Inter 13pt w600) + subtitle (12pt `#9B9BA6`). Selected row: blue tint. Tap or Return inserts.
|
|
276
|
+
|
|
277
|
+
**Block Actions Menu** — long-press a block or tap its leading handle to open: Style, Turn into, Copy link, Duplicate, Move to, Link to page, Delete. Bottom sheet on phone.
|
|
278
|
+
|
|
279
|
+
**Cross-Document Link Card** — typing `@` or pasting a Craft link inserts an inline card with the linked page's icon + title; backlinks surface at the page bottom.
|
|
280
|
+
|
|
281
|
+
**Cover + Icon Hero** — optional full-bleed cover image (Unsplash / upload / gradient) with a large emoji or photo icon overlapping it; the page's expressive identity moment.
|
|
282
|
+
|
|
283
|
+
**Style Sheet** — a bottom sheet for text/page styling: card style toggle, full-width toggle, text size, page background, font (sans / serif). Spring-presented.
|
|
284
|
+
|
|
285
|
+
## 5. Layout Principles
|
|
286
|
+
|
|
287
|
+
### Spacing System
|
|
288
|
+
- Base unit: 4pt
|
|
289
|
+
- Scale: 4, 8, 10, 12, 16, 20, 24, 32, 40, 48, 64
|
|
290
|
+
- Block vertical gap: 8pt
|
|
291
|
+
- Heading top margin: 16pt
|
|
292
|
+
- Page content inset: 22pt horizontal (slightly generous — editorial feel)
|
|
293
|
+
- Card internal padding: 14pt
|
|
294
|
+
|
|
295
|
+
### Grid & Container
|
|
296
|
+
- iPhone: content at 22pt horizontal insets; cover full-bleed or inset (14pt radius)
|
|
297
|
+
- iPad: content max-width 720pt centered, 32pt insets; sidebar 280pt always visible in landscape
|
|
298
|
+
- Block cards span full content width
|
|
299
|
+
- Tables scroll horizontally within their block
|
|
300
|
+
|
|
301
|
+
### Whitespace Philosophy
|
|
302
|
+
- **Editorial breathing room**: 8pt between blocks, 16pt before headings, 22pt page insets — generous, book-like
|
|
303
|
+
- **Cards float, text flows**: structural blocks (pages, links, toggles) get card framing + shadow; prose blocks flow inline with no chrome
|
|
304
|
+
- **Hero is optional but expressive**: cover + icon zone can be tall and image-rich, or absent (0pt)
|
|
305
|
+
- **Soft, never harsh**: every container uses ≥10pt radius; nothing is a hard 90° rectangle except dividers/full-bleed covers
|
|
306
|
+
|
|
307
|
+
### Border Radius Scale
|
|
308
|
+
- Square (0pt): Dividers, full-bleed covers
|
|
309
|
+
- Subtle (6pt): Checkboxes, small chips, inline code bg
|
|
310
|
+
- Comfortable (10pt): Outline buttons, search bar, text fields, icon chips
|
|
311
|
+
- Standard (12pt): Block cards, callouts, primary buttons, image blocks
|
|
312
|
+
- Large (16–20pt): Bottom sheets, modals, FAB
|
|
313
|
+
- Pill (500pt): Tags, segmented toggles
|
|
314
|
+
- Circle (50%): Avatars
|
|
315
|
+
|
|
316
|
+
## 6. Depth & Elevation
|
|
317
|
+
|
|
318
|
+
Craft uses depth deliberately and softly — shadows are low-opacity and diffuse, signaling "this is a liftable object," never harsh Material elevation.
|
|
319
|
+
|
|
320
|
+
| Level | Treatment | Use |
|
|
321
|
+
|-------|-----------|-----|
|
|
322
|
+
| Flat (Level 0) | No shadow | Prose blocks, dividers, list rows |
|
|
323
|
+
| Card (Level 1) | `0 6px 18px -10px rgba(0,0,0,0.10)` light / `…0.6` dark | Block cards (page/link/toggle/to-do), callouts |
|
|
324
|
+
| Floating (Level 2) | `0 12px 32px -12px rgba(0,0,0,0.14)` light / `…0.7` dark | `/` inserter, block-actions menu, popovers |
|
|
325
|
+
| Sheet (Level 3) | `0 -10px 40px rgba(0,0,0,0.18)` | Bottom sheets (Style, Share, New) |
|
|
326
|
+
| FAB | `0 8px 20px -6px rgba(47,91,234,0.6)` | Center gradient FAB (brand-tinted shadow) |
|
|
327
|
+
| Modal Overlay | `rgba(0,0,0,0.32)` | Dim behind sheets/modals |
|
|
328
|
+
|
|
329
|
+
**Shadow Philosophy**: Craft's shadows are soft and brand-aware — the FAB casts a *blue-tinted* shadow, reinforcing the gradient identity. On dark mode, shadows deepen (0.6–0.7) and a 1pt divider border is added to floating panels for an elevation cue. Depth is tactile (objects you can pick up), not flat (Notion) and not heavy (Material).
|
|
330
|
+
|
|
331
|
+
### Motion
|
|
332
|
+
- **Block reorder (drag)**: 60fps lift with slight scale-up (1.03) + shadow bloom; neighbors shift over 200ms ease-out; drop snaps with spring (response 0.30, damping 0.82) + soft haptic
|
|
333
|
+
- **Card tap → open page**: push transition 320ms with subtle parallax (iOS native push)
|
|
334
|
+
- **`/` inserter**: fade-in + 6pt slide-up in 180ms ease-out; dismiss fade + slide-down 150ms; arrow/scroll selection instant
|
|
335
|
+
- **Toggle expand/collapse**: chevron rotates 90° in 180ms; children expand height 0→auto with spring (response 0.32, damping 0.85)
|
|
336
|
+
- **To-do complete**: checkbox fills with a 220ms spring scale-pop + soft haptic; label strikes through over 150ms
|
|
337
|
+
- **Sheet present (Style / Share / New)**: slides up 360ms spring (response 0.40, damping 0.82), dim fades in
|
|
338
|
+
- **Sidebar / space list**: edge-swipe 1:1 tracking; release threshold 50% → spring open/close (damping 0.80)
|
|
339
|
+
- **FAB press**: scale 0.94 + brightness 0.92, releases with spring overshoot
|
|
340
|
+
- **Page save (auto)**: silent — no motion; "Saved" / "Syncing" pill only on conflict or manual save
|
|
341
|
+
- **Haptic feedback**: soft impact on to-do complete, toggle, block drag start, `/` open, sheet present
|
|
342
|
+
|
|
343
|
+
## 7. Do's and Don'ts
|
|
344
|
+
|
|
345
|
+
### Do
|
|
346
|
+
- Use warm off-white (`#FCFCFD`) light / soft charcoal (`#1A1A1E`) dark — NEVER pure white or pure black
|
|
347
|
+
- Carry the blue→purple gradient (`#2F5BEA → #6E56CF`) on every primary action — it's the constant identity
|
|
348
|
+
- Render structural blocks (pages, links, toggles, to-dos) as rounded cards with icon chips + soft shadows
|
|
349
|
+
- Make the FAB a rounded square (14pt radius), not a circle, with a blue-tinted shadow
|
|
350
|
+
- Surface Daily Note as a first-class card and entry point
|
|
351
|
+
- Use the `/` inserter as the primary block-creation gesture
|
|
352
|
+
- Give everything generous radius (≥10pt) and soft, diffuse, low-opacity shadows
|
|
353
|
+
- Use solid `#2F5BEA` where a gradient would be visually noisy at small size (toggles, links, ring)
|
|
354
|
+
- Animate with iOS-native spring physics — fluid, slightly bouncy, never linear
|
|
355
|
+
- Keep the doc title at 28pt extrabold (800) — the single most expressive type moment
|
|
356
|
+
- Keep prose blocks chrome-free; reserve card framing for structural blocks
|
|
357
|
+
|
|
358
|
+
### Don't
|
|
359
|
+
- Don't use pure black (`#000000`) for canvas or text — `#1A1A1E` / `#1C1C22` are correct
|
|
360
|
+
- Don't render every block as a card — prose flows inline; only structural blocks get card framing
|
|
361
|
+
- Don't make the FAB a circle — Craft's FAB is a rounded square
|
|
362
|
+
- Don't use a flat single accent color where the gradient belongs (primary buttons, FAB, active tab)
|
|
363
|
+
- Don't use hard 90° corners on containers — Craft is soft everywhere except dividers/covers
|
|
364
|
+
- Don't use heavy Material-style drop shadows — keep them diffuse and low-opacity
|
|
365
|
+
- Don't animate linearly or abruptly — motion is spring-based and fluid
|
|
366
|
+
- Don't bold body paragraphs by default — body is 400 weight
|
|
367
|
+
- Don't add a tint pill behind the active tab — active is just solid `#2F5BEA`
|
|
368
|
+
- Don't bury Daily Note — it's a signature, give it a visible home
|
|
369
|
+
- Don't hardcode multi-column layouts — Craft defaults to single-column document flow
|
|
370
|
+
|
|
371
|
+
## 8. Responsive Behavior
|
|
372
|
+
|
|
373
|
+
### Device Sizes
|
|
374
|
+
| Device | Width | Key Changes |
|
|
375
|
+
|--------|-------|-------------|
|
|
376
|
+
| iPhone SE (3rd gen) | 375pt | Cover 80pt; space list is 86% screen width |
|
|
377
|
+
| iPhone 13/14/15 | 390pt | Standard layout |
|
|
378
|
+
| iPhone 15/16 Pro | 393pt | Dynamic Island accommodated in top bar |
|
|
379
|
+
| iPhone 15/16 Pro Max | 430pt | Cover 120pt; larger emoji icon |
|
|
380
|
+
| iPad (portrait) | 768pt | 2-column: sidebar (280pt) + content (centered max 720pt) |
|
|
381
|
+
| iPad (landscape) | 1024pt+ | 3-pane optional: spaces · document list · editor |
|
|
382
|
+
|
|
383
|
+
### Dynamic Type
|
|
384
|
+
- Doc title, headings, body, quote, captions: full scale
|
|
385
|
+
- Card subtitles, tab labels, slash-menu rows, sidebar labels: FIXED (layout-sensitive)
|
|
386
|
+
- Code blocks: scale to XL but stay monospace
|
|
387
|
+
|
|
388
|
+
### Orientation
|
|
389
|
+
- All screens rotate; iPad gains split-view (sidebar + editor)
|
|
390
|
+
- Cover/image blocks reflow to new width; hero recomputes height
|
|
391
|
+
|
|
392
|
+
### Touch Targets
|
|
393
|
+
- To-do checkbox: 18pt glyph, 44pt hit
|
|
394
|
+
- Block handle: 22pt glyph, 44pt hit
|
|
395
|
+
- Bottom-bar icons: 21pt glyph, 44pt hit
|
|
396
|
+
- FAB: 46pt (already ≥44pt)
|
|
397
|
+
- Sidebar row: 44pt tall, full-row tap
|
|
398
|
+
- Primary buttons: ≥44pt tall
|
|
399
|
+
|
|
400
|
+
### Safe Area Handling
|
|
401
|
+
- Top: top bar respects safe area + Dynamic Island
|
|
402
|
+
- Bottom: bottom bar + home indicator respected; FAB sits above home indicator
|
|
403
|
+
- Keyboard: editor scrolls above keyboard; `/` inserter positions above keyboard
|
|
404
|
+
- Sides: 22pt content inset
|
|
405
|
+
|
|
406
|
+
## 9. Agent Prompt Guide
|
|
407
|
+
|
|
408
|
+
### Quick Color Reference
|
|
409
|
+
- Canvas (light): `#FCFCFD`
|
|
410
|
+
- Canvas (dark): `#1A1A1E`
|
|
411
|
+
- Card (light): `#FFFFFF` · Card (dark): `#232328`
|
|
412
|
+
- Surface gray (light): `#F4F4F6`
|
|
413
|
+
- Divider: `#E6E6EA` light / `#34343C` dark
|
|
414
|
+
- Text primary: `#1C1C22` light / `#ECECEF` dark
|
|
415
|
+
- Text secondary: `#6A6A78` light / `#9B9BA6` dark
|
|
416
|
+
- Craft Blue (solid): `#2F5BEA`
|
|
417
|
+
- Craft Purple: `#6E56CF`
|
|
418
|
+
- Brand gradient: `#2F5BEA → #6E56CF` (≈120°)
|
|
419
|
+
- Success green: `#30A46C`
|
|
420
|
+
- Warning amber: `#F0A92B`
|
|
421
|
+
- Error red: `#E5484D`
|
|
422
|
+
- Blue tint (icon chip): `#2F5BEA14` light / `#2F5BEA2E` dark
|
|
423
|
+
|
|
424
|
+
### Example Component Prompts
|
|
425
|
+
- "Build the Craft document header in SwiftUI: optional 96pt full-bleed cover (14pt corner radius), a 40pt emoji icon with -38pt top offset overlapping the cover at 22pt leading, then the title in Inter 28pt weight 800 `#1C1C22` at 22pt horizontal inset, and a subtitle row 'Edited 2m ago · Shared with 4' in Inter 13pt `#6A6A78`."
|
|
426
|
+
|
|
427
|
+
- "Create a Craft Card Block: rounded card 12pt radius, 1pt `#E6E6EA` border, soft shadow `0 6px 18px -10px rgba(0,0,0,0.10)`. Leading 36pt rounded-square icon chip (9pt radius) with a blue tint background `#2F5BEA14` and an emoji. Title in Inter 15pt w600 `#1C1C22`, subtitle in Inter 12pt w400 `#6A6A78`, trailing `chevron.right` 16pt `#9B9BA6`. 14pt padding. Tap pushes the nested page with 320ms parallax."
|
|
428
|
+
|
|
429
|
+
- "Render the Craft `/` block inserter: cursor-anchored floating panel, 12pt corner radius, `#FFFFFF` bg light / `#232328` dark, shadow `0 12px 32px -12px rgba(0,0,0,0.14)`, 1pt `#34343C` border in dark. Rows 44pt: leading 28pt icon chip, title Inter 13pt w600 `#1C1C22`, subtitle Inter 12pt w400 `#9B9BA6`. Selected row background blue tint `#2F5BEA14`. Fade-in + 6pt slide-up 180ms; tap or Return inserts the block."
|
|
430
|
+
|
|
431
|
+
- "Build the Craft primary button: gradient `#2F5BEA → #6E56CF` at ≈120°, 12pt corner radius, Inter 15pt w600 `#FFFFFF`, 13pt vertical / 26pt horizontal padding. Pressed: brightness 0.92 + scale 0.98 + soft haptic."
|
|
432
|
+
|
|
433
|
+
- "Create the Craft to-do block: leading 18pt rounded-square checkbox (6pt radius, 1.8pt `#9B9BA6` border). On tap, fill `#2F5BEA` with a white checkmark using a 220ms spring scale-pop + soft haptic; label gets strikethrough and `#9B9BA6` over 150ms. Label in Inter 16pt w400."
|
|
434
|
+
|
|
435
|
+
- "Render the Craft bottom bar: 64pt + safe area, `#1A1A1E` @ 94% with blur and a 0.5pt `#34343C` top divider. Left group (Home, Search), a center 46pt rounded-square FAB (14pt radius) with the brand gradient and a blue-tinted shadow `0 8px 20px -6px rgba(47,91,234,0.6)`, right group (Documents, Profile). Active icon solid `#2F5BEA`, inactive `#9B9BA6`, no tint pill."
|
|
436
|
+
|
|
437
|
+
- "Build the Craft Daily Note card: a block card titled 'Daily Note — May 18' with a 📅 emoji in a purple-tint chip `#6E56CF14`, subtitle 'Auto-created · 3 blocks', trailing chevron. Tapping opens (or creates) today's date-stamped document."
|
|
438
|
+
|
|
439
|
+
### Iteration Guide
|
|
440
|
+
1. Canvas is warm off-white `#FCFCFD` light / soft charcoal `#1A1A1E` dark — NOT pure white/black
|
|
441
|
+
2. The blue→purple gradient `#2F5BEA → #6E56CF` is the constant identity — every primary action carries it
|
|
442
|
+
3. Structural blocks (pages, links, toggles, to-dos) render as rounded cards with icon chips + soft shadows; prose flows chrome-free
|
|
443
|
+
4. The FAB is a rounded square (14pt radius) with a blue-tinted shadow — never a circle
|
|
444
|
+
5. Daily Note is a first-class card + entry point — surface it prominently
|
|
445
|
+
6. The `/` inserter is the primary block-creation gesture — cursor-anchored floating panel
|
|
446
|
+
7. Everything is soft: ≥10pt radius on containers, diffuse low-opacity shadows
|
|
447
|
+
8. Motion is iOS-native spring — fluid and slightly bouncy, never linear
|
|
448
|
+
9. Doc title is 28pt extrabold (800) — the single most expressive type moment; body is 16pt/400 at 1.55
|
|
449
|
+
10. Use solid `#2F5BEA` for small accents (toggles, links, focus ring); reserve the gradient for primary buttons/FAB/active tab
|