Catalog

Ninety courses. Six benches.

Interface, JavaScript, TypeScript, React, and delivery are the frontend work. Practice is how you scope it, price it, and run it inside an LLC. Every course includes one call a week. Nothing is charged until after that first conversation.

90 courses · 6 benches

15 courses in Interface

  • BR-01 · Interface · Beginner

    The Box, on Purpose

    Learn the box model by building a page whose spacing you can explain.

    Box model · Margin · Padding · Display

    Read the brief

    Margin, border, padding, and display, taught by drawing the boxes the browser is already drawing. You will stop adding wrappers to fix a gap you cannot name.

    • Explain how margin, border, and padding add up
    • Choose between block, inline, and inline-block
    • Fix a collapsed margin without another wrapper

    $9.99

    3 weeks · 3 calls

  • BR-01 · Interface · Beginner

    Selectors that Hold

    Write selectors that survive a redesign, and stop fighting specificity you created.

    Selectors · Specificity · Cascade · Inheritance

    Read the brief

    Specificity, inheritance, and the cascade, practiced on a stylesheet that has already gone wrong. You will learn to win a conflict by simplifying it.

    • Predict which rule wins and say why
    • Write a selector that does not depend on a long chain
    • Reset a property without !important

    Before this: The Box, on Purpose

    $14.90

    4 weeks · 4 calls

  • BR-01 · Interface · Intermediate

    Flow, Flex, and When Flex Fails

    Use normal flow and flexbox for the layouts they are actually good at.

    Flow · Flexbox · Alignment · Wrapping

    Read the brief

    A row, a stack, a toolbar, and the case where flex starts fighting you. You will know when to stop and reach for grid instead.

    • Build a row that wraps without a media-query hack
    • Align items on the cross axis on purpose
    • Explain when flex is the wrong tool

    Before this: The Box, on Purpose

    $19.90

    4 weeks · 4 calls

  • BR-01 · Interface · Beginner

    Grid for Pages, Not Demos

    Lay out a real page: header, sidebar, and a content column that behaves.

    Grid · Template areas · Gaps · Placement

    Read the brief

    Named areas, placement, and a breakpoint that changes the page without rewriting the markup. You will build a layout you could hand to a writer.

    • Draw a page as named grid areas
    • Place an item without absolute positioning
    • Change the grid at a breakpoint without rewriting markup

    Before this: Flow, Flex, and When Flex Fails

    $29.90

    5 weeks · 5 calls

  • BR-01 · Interface · Intermediate

    Type on a Screen

    Set type for reading: measure, leading, hierarchy, and the few sizes a page needs.

    Typography · Measure · Leading · Hierarchy

    Read the brief

    A display face and a text face, a measure that stays comfortable, and a scale small enough to remember. You will stop picking font sizes by eye.

    • Set a measure that stays readable
    • Build a type scale with a handful of sizes
    • Pair a display face and a text face

    Before this: The Box, on Purpose

    $39.90

    5 weeks · 5 calls

  • BR-01 · Interface · Intermediate

    Color, Contrast, and States

    Choose colors that pass contrast, including hover, focus, and disabled.

    Color · Contrast · States · Tokens

    Read the brief

    Roles instead of hex values, and states that do not rely on color alone. You will check pairs against WCAG rather than against your monitor.

    • Check a pair against WCAG contrast
    • Design hover and focus without relying on color alone
    • Name colors as roles, not as hex values

    Before this: Type on a Screen

    $49.90

    6 weeks · 6 calls

  • BR-01 · Interface · Advanced

    Forms People Can Finish

    Labels, errors, and keyboards. A form a person can complete without guessing.

    Forms · Labels · Errors · Keyboard

    Read the brief

    Every control gets a name, every error sits next to its field, and the form works from the keyboard. Advanced, because the details are where forms fail.

    • Associate every control with a visible label
    • Show an error next to the field it belongs to
    • Complete the form from the keyboard alone

    Before this: Selectors that Hold

    $59.90

    6 weeks · 6 calls

  • BR-01 · Interface · Intermediate

    Responsive Without a Framework

    Breakpoints, container queries, and fluid space, with no utility framework required.

    Media queries · Container queries · Fluid type · Breakpoints

    Read the brief

    You will choose breakpoints from the content, and use a container query where a viewport query is the wrong question.

    • Choose a breakpoint from the content, not a device list
    • Use a container query where a viewport query is wrong
    • Let spacing scale without a pile of overrides

    Before this: Grid for Pages, Not Demos

    $69.90

    7 weeks · 7 calls

  • BR-01 · Interface · Intermediate

    Motion that Respects People

    Transitions that explain a change, and stay still when someone asks them to.

    Transitions · Reduced motion · Easing · Purpose

    Read the brief

    Animate a property that does not force layout, and honor prefers-reduced-motion as a requirement rather than a nicety.

    • Animate a property that does not force layout
    • Honor prefers-reduced-motion
    • Use motion to show where something went

    Before this: Color, Contrast, and States

    $79.90

    8 weeks · 8 calls

  • BR-01 · Interface · Advanced

    Names, Focus, and the Keyboard

    Accessible names, focus order, and the mistakes that hide a control from assistive tech.

    Accessible name · Focus · Keyboard · Semantics

    Read the brief

    You will give controls names a screen reader can announce, keep focus in visual order, and build a skip link that lands. Advanced, and it is the difference between a page that looks done and one that is.

    • Give a control a name a screen reader can announce
    • Keep focus order the same as visual order
    • Build a skip link that actually lands

    Before this: Forms People Can Finish

    $89.90

    8 weeks · 8 calls

  • BR-01 · Interface · Intermediate

    Custom Properties as a System

    Design tokens in CSS variables: themes, density, and one place a color can change.

    Custom properties · Tokens · Theming · Inheritance

    Read the brief

    A theme as custom properties on a root, an override in one subtree, and a clear line between a variable and a preprocessor constant.

    • Model a theme as custom properties on a root
    • Override a token in one subtree
    • Explain how a variable differs from a preprocessor constant

    Before this: Color, Contrast, and States

    $99.90

    9 weeks · 9 calls

  • BR-01 · Interface · Intermediate

    Component CSS that Stays

    Scope styles to a component without a framework, and keep the cascade from leaking.

    Scope · Cascade layers · Components · Naming

    Read the brief

    Cascade layers, a naming scheme that does not explode, and a third-party widget that no longer restyles your page.

    • Scope a component's CSS so it cannot leak
    • Use a cascade layer to settle third-party styles
    • Name a variant without a combinatorial class list

    Before this: Selectors that Hold

    $109.90

    10 weeks · 10 calls

  • BR-01 · Interface · Intermediate

    Debugging Layout in the Browser

    Read the box overlay, the grid inspector, and the cascade until the bug is obvious.

    DevTools · Box overlay · Cascade · Grid inspector

    Read the brief

    You will be handed broken layouts and asked to name the winning rule before you change anything. Guessing is the habit this course is trying to retire.

    • Find which rule is winning from the cascade panel
    • Measure a box instead of guessing the gap
    • Spot an overflow before it becomes a horizontal scroll

    Before this: Grid for Pages, Not Demos

    $119.90

    11 weeks · 11 calls

  • BR-01 · Interface · Intermediate

    Empty, Error, and Busy States

    The screens people actually see: nothing loaded, something failed, and the wait.

    Empty states · Errors · Loading · Content design

    Read the brief

    An empty state that says what to do, an error that names the failure, and a busy state that does not freeze the page. Twelve weeks, because these are product decisions as much as CSS.

    • Design an empty state that tells the person what to do
    • Write an error that names the failure and the next step
    • Show progress without blocking the whole page

    Before this: Forms People Can Finish

    $129.90

    12 weeks · 12 calls

  • BR-01 · Interface · Advanced

    Capstone: A Finished Interface

    One responsive, accessible interface, from a blank file to something you can hand over.

    Capstone · Responsive · Accessibility · Handoff

    Read the brief

    You choose the page. We hold the line on keyboard access, contrast, type, and a layout that works on a phone and a wide screen. You leave with notes another person could build from.

    • Ship a page that works on a phone and a wide screen
    • Pass a keyboard and contrast pass you run yourself
    • Write notes another developer can build from

    Before this: Names, Focus, and the Keyboard

    $147.90

    12 weeks · 12 calls