how.studio

Ajanslar ve portfolyolarAçık

Bu tasarımı yapay zekâyla kullanın

AI aracınızı seçin, fikrinizi anlatın ve istemi gönderin.

  • İstemi Claude Code projenizdeki ajanın sohbetine yapıştırıp gönderin.

İndir

Örnek düzen

Portfolyo, bu paketten oluşturuldu
Yalnızca bu paketin ölçümlerinden oluşturulmuş genel bir sayfa: sitenin renkleri, yazı tipleri, düğmeleri ve boşluklarıyla örnek metinler.

Renkler

4 renk

Bileşenler

ServicesStart a project
düğme ghost
#e0ddd280 üzerinde saydam üzerinde #333333 metin, r 6px, h 40px, 12px/360
düğme secondary
#ecffb4 üzerinde #333333 metin, r 6px, h 40px, 12px/360
bağlantı
#333333, alt çizgi yok, 360
üst bilgi
48px, static, bulanıklık, 12px boyutunda 3 bağlantı
ana başlık
12px / 360, start hizalı, maks. 389px
formlar
0 forms, 1 inputs. Required markers: 0. Help texts: 0. Label placement: none (1).
ikonlar
Icons: 25 inline SVGs, outline/stroke, sizes 18px, stroke 1px.

Etkileşim ve animasyon

  • button primary "Start a project": hover değişikliği yok
  • nav link "Work": hover değişikliği yok
  • focus button primary: outline 1px auto rgb(17, 17, 17), offset 1px
  • tooltip’ler: Tooltip triggers exist (10 × aria-describedby, 3 × title) but none opened on hover in the first viewport; title attributes fall back to the browser's native tooltip.
  • menüler: Hover/click menus: below the trigger, 10px gap, right edges aligned; #e0ddd280, radius 4px, padding 0px 0px, shadow none; appears instantly (no fade); stays open after the pointer leaves (click-away or hover-intent grace).
  • animasyon: 91 elements carry transitions; typical 0.15s with cubic-bezier(0.4, 0, 0.2, 1), mostly on opacity, color, background-color. 1 running keyframe animations (marquee 17s infinite). 9 sizable elements sit at opacity 0 before scrolling: scroll-reveal animations are in use (reveal on enter, fade + rise is the usual recipe).

Tipografi

2 font ailesi
Azeret MonoKendi sunucusundawagramKendi sunucusunda
headline-displayQuick brown fox12px / 360 / lh 13.8px
headline-lgQuick brown fox60px / 300 / lh 51px / -3px
headline-mdQuick brown fox24px / 400 / lh 1.4
body-mdThe quick brown fox jumps over the lazy dog16px / 400 / lh 24px
label-mdThe quick brown fox jumps over the lazy dog12px / 360 / lh 1.15
buttonThe quick brown fox jumps over the lazy dog12px / 360 / lh 13.8px
Kullanılan boyutlar

Boşluk

4px birim
48121624324880
İçerik genişliği
1171px
Kırılma noktaları
400, 768, 1024, 1152, 1536px

Köşe yarıçapı

düğme 6pxgirdi 0pxkart 0pxgörsel 8px

Gölgeler

0

Düz: kutu gölgesi kullanılmıyor.

Tema

No dark mode responded to prefers-color-scheme, a theme toggle, or a root class/attribute.

Logo ve simgeler

5 referans

Bu kesitler ve ölçüleri BRAND.md içinde. Paketi kullanmadan önce doğru logonun seçildiğini kontrol et.

Bileşen envanteri

87 türden 12 · 21 varyant · 13 durum · 1 overlay

Her satır, sayfada bulunan bir görsel örnektir. Görüntüler, çıkarma sırasında ulaşılan durumları gösterir. Eksik görüntüler ve canlı doğrulanmamış durumlar ayrı işaretlenir. Ayrıntılar COMPONENTS.md ve components.css dosyalarındadır.

Button, ghost-icon-right (sm)sayfada 5, örn. "Explore"#333333 text on transparent, radius 0px, h 34px, padding 8px 0px 8px 0px, 16px/400, icon right 18px
hover, active (pressed): değişiklik yok
Button, secondary-with-icon (lg)sayfada 4, örn. "Awards03.11.25Most Admired A"#333333 text on rgba(224, 221, 210, 0.5), radius 8px, h 531px, padding 24px 24px 24px 24px, 16px/400, icon left 18px
hover, active (pressed), disabled: değişiklik yok
Button, success-icon-right (sm)sayfada 3, örn. "Send us your brief"#333333 text on #ecffb4, radius 6px, h 44px, padding 15px 24px 15px 24px, 12px/360, icon right 18px
active (pressed), disabled: değişiklik yok
Button, ghost-icon-right (sm) · navsayfada 1, örn. "Services"#333333 text on transparent, radius 6px, h 40px, padding 0px 16px 0px 16px, 12px/360, icon right 9px
active (pressed): değişiklik yok
Button, success (sm)sayfada 1, örn. "Start a project"#333333 text on #ecffb4, radius 6px, h 40px, padding 13px 16px 13px 16px, 12px/360
hover, disabled: değişiklik yok
Button, secondary-with-iconsayfada 1, örn. "Thought leadership26.10.26Tr"#333333 text on rgba(224, 221, 210, 0.5), radius 8px, h 122px, padding 12px 12px 12px 12px, 16px/400, icon left 18px
yalnızca durağan
Button, secondary (lg)sayfada 1, örn. "Veriff$1.6Bvaluation of Veri"#333333 text on rgba(224, 221, 210, 0.5), radius 8px, h 169px, padding 24px 24px 24px 24px, 16px/400
yalnızca durağan
Button, secondary (lg) · mainsayfada 1, örn. "Yum Bun434%increase in Yum B"#333333 text on rgba(224, 221, 210, 0.5), radius 8px, h 143px, padding 24px 24px 24px 24px, 16px/400
yalnızca durağan
Icon button, ghostsayfada 2#333333 text on transparent, radius 0px, h 18px, padding 0px 0px 0px 0px, 16px/400, icon only 18px
hover, active (pressed): değişiklik yok
Text link, plainsayfada 12, örn. "PetsFlexing the UK’s biggest" · covered by mux-player.align-middle#333333, no underline, 16px/400
rest: önizleme kullanılamıyor
Text input, outlined-icon-rightsayfada 1 · partially outside the capture viewporth 1px, bg transparent, border none, radius 0px, padding 0px 0px 0px 0px, 16px text #333333, placeholder #333333, button on the right
rest: önizleme kullanılamıyorfocus (keyboard): canlı doğrulanmadı
Combobox / custom select, outlined (lg)sayfada 1, örn. "All Projects"h 18px, bg transparent, border none, radius 0px, padding 0px 0px 0px 0px, 16px text #333333
hover: değişiklik yok
Navigation link, plainsayfada 2, örn. "Work"#333333, no underline, 12px/360
hover: değişiklik yok
Footersayfada 1, örn. "The truth is in thereLet’s r"h 1075px, bg #f9f8f2, 0 link columns, 17 links, headings: The truth is in there, social links
rest: önizleme kullanılamıyor
Badge / pill / tag, subtle-squaresayfada 18, örn. "Pet Care"#333333 on #edebe3, radius 6px, h 24px, padding 6px 12px 6px 12px, 12px/400
hover: değişiklik yok
Image / figure, aspect-1.78-roundedsayfada 6 · covered by mux-player.align-middle696×391px, aspect 1.78, radius 8px, object-fit cover
rest: önizleme kullanılamıyor
Image / figure, aspect-1-roundedsayfada 4313×313px, aspect 1, radius 8px, object-fit cover
hover: değişiklik yok
Image / figure, aspect-1.78-rounded · mainsayfada 198×55px, aspect 1.78, radius 4px, object-fit fill
hover: değişiklik yok
Dropdown menu 1combobox "All Projects" tarafından click ile açılır, Escape ile kapanır266×306px, below, 12px from the trigger, bg transparent, text #333333 16px, radius 0px, padding 4px 4px 4px 4px, no shadow, 10 items 30px tall, page scroll locked, closes on Escape

Bu sayfada yok: Toggle / segmented control, Button group, Floating action button, Close / dismiss button, Search field, Textarea, Select (native), Checkbox, Radio, Switch / toggle, Range slider, File input / dropzone, Date / time input, Input with attached button or addon, Field label, Help / hint text, Validation error text, Fieldset / form section, Header / navbar, Menu / dropdown trigger, Breadcrumb, Tabs, Pagination, Stepper / progress steps, Sidebar navigation, Footer link, Skip link, Back to top, Social icon links, Theme toggle, Language / region switch, Tooltip, Popover, Dialog / modal, Drawer / sheet / off-canvas, Toast / snackbar, Banner / announcement bar, Cookie / consent notice, Lightbox / media viewer, Chip (removable / selectable tag), Alert / callout, Progress bar, Spinner / loader, Skeleton / shimmer, Counter / notification dot, Empty state, Rating / stars, Card, Pricing card / plan, Feature item (icon + title + text), Testimonial / quote card, Stat / metric, Styled list, List row / menu row, Table, Table row, Accordion / disclosure, Avatar, Avatar stack, Divider, Code block / inline code, Keyboard key, Blockquote, Video / media embed, Carousel / slider, Logo strip, Icon, Eyebrow / kicker, FAQ block, Call-to-action band, Newsletter / signup form, Search results / listing row, Hero, Content container, Sticky bar.

Responsive

1440 / 1024 / 768 / 390 px
ViewportİçerikKenar boşluğuGövdeBaşlıkÜst bilgiHeroIzgaralarDüğmeler
desktop 14401408px16px16px12px, 1 line, start48px, 3 links, 1 CTAmedia behind/overlapping text2→2 col; 2→1 col; 6→2 colcontent-width
laptop 1024992px16px16px12px, 1 line, start48px, 3 links, 1 CTAmedia behind/overlapping text2→2 col; 2→1 col; 6→2 colcontent-width
tablet 768736px16px16px12px, 1 line, start46px, hamburger (icon), 1 CTAmedia behind/overlapping text5 full-width
phone 390358px16px16px12px, 1 line, start46px, hamburger (icon), 1 CTAmedia behind/overlapping text5 full-width
  • H1 goes 12px → 12px (100%), 1 → 1 lines.
  • Nav collapses to a hamburger by 390px (first seen at 768px); header 48px → 46px.
  • Body text is 16px at the sampled desktop and phone widths.
  • Phone side gutter 16px.
  • 5 buttons stretch full-width on phones.
  • Section top padding 32px → 16px.

Paketteki dosyalar

84 dosya

31 kB rehber metinle başla. Paketteki tüm metin 548 kB; ayrıntılı dosyaları gerektikçe aç. Görseller ayrıdır.

START_HERE.md93 satır
# Start here: how.studio

Observed 2026-10-28T00:39:13.979Z; default light theme. This is a compact handoff, not the full evidence archive: everything you need to start is here, the detailed files are one step away.

## How to use this pack

1. Read `START_HERE.md` and `tokens.css` first: the priority values. Keep observed values; a value marked inferred or fallback is a suggestion to resolve against the screenshots.
2. Open `screenshots/desktop-1440-fold.png` and `screenshots/phone-390-fold.png` and match the composition, density, whitespace and image treatment; the values do not carry those. Treat the inside of an image or canvas as a visual inference, not measured DOM.
3. Read `FONTS.md` and load `fonts.css` before `tokens.css`. Keep exact weights and variable-font settings and verify the fonts that actually render. If a font is unavailable, name the substitute and compare its width and apparent weight before touching the type scale.
4. Before drawing any logo or icon, read `BRAND.md` and open `screenshots/brand-logo.png`, `screenshots/brand-icon-1.png`, `screenshots/brand-icon-2.png`: for a new product, create an original mark with the observed proportions and treatment; never guess a shape from a label.
5. Before building any control, read `COMPONENTS.md` (every variant and measured state, with a crop of each), use `components.css` for the CSS and `demos/` for a live copy of each component. A component listed as not found does not exist on the site; do not invent it.
6. Read `REGIONS.md` and inspect its context, detail and icon crops: reconstruct outer and inner surfaces, per-layer gradients and shadows and group spacing (`regions.css` has the recipes), then check the whole page again.
7. Read `BEHAVIOR.md` for hover, focus, tooltips, menus, motion, scrolling, tables, forms, text and each breakpoint, and reproduce the behaviour, not only the colours. No alternate theme was verified; use the observed theme unless another is requested.
8. `layout.html` is a generic page composed only from this pack's measured values, with placeholder copy: open it to see the colours, type, recipes and spacing working together and to check your own wiring of the fonts and tokens against it. It is not the site's composition; the screenshots are.
9. `DESIGN.md` has the whole system when a value is missing above. `evidence.json` is diagnostic data: never in the first read.
10. When done, render at desktop, 390px and 320px, compare with the screenshots, fix the biggest visible mismatch first (usually type size, whitespace or image treatment), recheck keyboard focus, overflow, navigation and forms, and repeat.
11. For another site's design, run `npx stylepack-cli <host>` in the project (it downloads that pack and records it the same way), or fetch https://stylepack.ai/packs/<host>/pack.zip; one question at a time is at https://stylepack.ai/packs/<host>/fonts, /colors and /buttons.

## Priority values and evidence

Values labeled fallback were not observed for that role; inferred-role means a visible heading was mapped to a display role. Keep observed values, but treat fallbacks as suggestions.
Keep measured sizes, tracking, radii and colors unless the new content requires an explicit adaptation. Do not enlarge the headline simply to fill a different line length.
Content width: 1171px. Inferred spacing base: 4px; sampled scale: 4, 8, 12, 16, 24, 32, 48, 80px. Observed CSS breakpoints: 400, 768, 1024, 1152, 1536px.
Colors: background=#f9f8f2; surface=#edebe2; foreground=#333333; muted-foreground=#666666.
Radii: button 6px, card 0px, input 0px, image 8px.
Shadows: none observed.

## Typography

Load fonts.css before applying tokens.css. FONTS.md contains the observed face/weight inventory and rendered-font checks. A CSS family name alone does not load a font.
Copy the supplied @font-face sources verbatim; do not replace a captured face with Google Fonts merely because its name looks similar. Keep fonts.css linked (or inline it verbatim for a single HTML deliverable). It includes measured semantic font defaults; tokens.css supplies scale and spacing. Use each role as a complete recipe: family, exact numeric weight, size, line height, tracking, font-feature-settings (including cv/ss stylistic sets), optical sizing and variable-font settings. A font shorthand resets feature settings; reapply the supplied longhands after it. Do not round 510 to 500/600, or turn a measured light style into a bold heading.
Use the captured family first. Self-hosted is a hosting location, not an availability verdict. An unverified probe is not evidence of failure; do not choose the optional fallback merely because it is familiar. Substitute only after an actual failed destination request or missing licensed source; record that reason and the replacement. A transient network error merits a retry before redesigning the typography.
Fallback roles are unmeasured suggestions. If a role is absent, start from the nearest observed text treatment; do not assume headings must be bold.
- Azeret Mono: observed weights 360; source loading recipe in fonts.css.
- wagram: observed weights 300, 400; source loading recipe in fonts.css.
- Azeret Mono delivery by face: confirmed 100 900 normal, 100 900 normal, 100 900 normal; failed none; unverified none. Confirmation is from one isolated-origin check, not every deployment. Keep confirmed faces; attempt unverified faces. A failed unused face does not invalidate a working regular/bold face.
- wagram delivery by face: confirmed 400 normal; failed none; unverified none. Confirmation is from one isolated-origin check, not every deployment. Keep confirmed faces; attempt unverified faces. A failed unused face does not invalidate a working regular/bold face.
After loading, inspect the browser's Rendered Fonts for the headline, body and button. Computed font-family/font-weight and document.fonts.check() alone do not prove which face drew the glyphs.

- headline-display: Azeret Mono; 12px/13.8px; weight 360; tracking normal; observed, source h1.
- headline-lg: wagram; 60px/51px; weight 300; tracking -3px; observed, source h2.
- headline-md: wagram; 24px/1.4; weight 400; tracking normal; fallback, source h3, inferred fields: fontSize, fontFamily, fontWeight, lineHeight.
- body-md: wagram; 16px/24px; weight 400; tracking normal; observed, source body.
- label-md: Azeret Mono; 12px/1.15; weight 360; tracking normal; observed, source label.
- button: Azeret Mono; 12px/13.8px; weight 360; tracking normal; observed, source button.
- Font Azeret Mono: self-hosted; use its captured loader first. Self-hosted does not imply unavailable or licensed for reuse; substitution is conditional, not a second design choice.
- Font wagram: self-hosted; use its captured loader first. Self-hosted does not imply unavailable or licensed for reuse; substitution is conditional, not a second design choice.

## Regional composition

Read REGIONS.md and open the referenced context, detail and icon crops before drawing complex previews. Build outer shell, inset content panel and internal groups as distinct layers where observed. Preserve which surface owns each gradient, border and shadow; do not apply one generic card treatment to every layer.
For images, canvas, video and external SVG, use the rendered crops to infer visible internal groupings. Keep those inferences separate from measured DOM facts. Do not treat an illustration as a functional app or paste the screenshot as the finished UI. Return to the whole-page screenshots to match scale and placement.
- r1: 1512×154px at page (-36, 10); 1 measured layers, 0 icon samples, 1 opaque media layers. screenshots/region-r1-context.jpg, screenshots/region-r1-detail.png
- r2: 1440×1246px at page (0, 154); 5 measured layers, 0 icon samples, 1 opaque media layers. screenshots/region-r2-context.jpg, screenshots/region-r2-detail.png
- r3: 696×391.3px at page (16, 1530); 1 measured layers, 0 icon samples, 1 opaque media layers. screenshots/region-r3-context.jpg, screenshots/region-r3-detail.png

## Component recipes

- ghost button: bg transparent; text #333333; border none; radius 6px; height 40px; padding 0px 16px; type 12px/360; shadow none.
- secondary button: bg #ecffb4; text #333333; border none; radius 6px; height 40px; padding 13px 16px; type 12px/360; shadow none.

## Responsive and interaction evidence

- desktop 1440px: content 1408px, gutter 16px, H1 12px, 1 line, start, header 48px, 3 links, 1 CTA, grids 2→2 col; 2→1 col; 6→2 col.
- laptop 1024px: content 992px, gutter 16px, H1 12px, 1 line, start, header 48px, 3 links, 1 CTA, grids 2→2 col; 2→1 col; 6→2 col.
- tablet 768px: content 736px, gutter 16px, H1 12px, 1 line, start, header 46px, hamburger (icon), 1 CTA, grids .
- phone 390px: content 358px, gutter 16px, H1 12px, 1 line, start, header 46px, hamburger (icon), 1 CTA, grids .
H1 goes 12px → 12px (100%), 1 → 1 lines.
Nav collapses to a hamburger by 390px (first seen at 768px); header 48px → 46px.
Body text is 16px at the sampled desktop and phone widths.
Phone side gutter 16px.
- Hover button-primary: no visible change.
- Hover nav-link: no visible change.
- Focus button-primary: outline 1px auto rgb(17, 17, 17), offset 1px.
91 elements carry transitions; typical 0.15s with cubic-bezier(0.4, 0, 0.2, 1), mostly on opacity, color, background-color. 1 running keyframe animations (marquee 17s infinite).
No alternate theme verified.

## Logo and icons

Logo lockup: 288×28px, filled. See BRAND.md and its crops for shape evidence.
Icon: 18×18px; outline/stroke; stroke 1px, caps round.
Icon: 18×18px; outline/stroke; stroke 1px, caps round.

## First images to open

- screenshots/desktop-1440-fold.png: Desktop 1440, above the fold
- screenshots/brand-logo.png: primary logo lockup
- screenshots/phone-390-fold.png: Phone 390, above the fold

## Verify the build

Render at desktop, 390px and 320px. Inspect the result, compare against the supplied references, fix the largest visible mismatch, and recheck keyboard focus, overflow, navigation and form behavior. Match the visual language while following the requested product content.
Page background comes from body; large surface colors remain in the palette.