Maya Shavin Website Logo - click to go to home page
AboutSpeakingProjectsMaya Shavin Website Logo - click to go to home pageHomeBlogTeachingContact

Latest

Making a custom input counter component accessible

Making a custom input counter component accessible

Learn how to resolve accessibility problems caused by overlapping interactive elements in input counter components. By switching from absolute positioning to CSS Flexbox, you'll achieve better accessibility, cleaner code, and built-in RTL/LTR language support.

Apr 16, 2025 · 3 min read

Continue reading

All articles

Filtered by

  • React component testing with Vitest efficiently

    React component testing with Vitest efficiently

    Tips for planning and testing your React component with Vitest and React Testing Library.

    Jun 21, 2023 · 7 min read

    Continue reading

  • Test your React hooks with Vitest efficiently

    Test your React hooks with Vitest efficiently

    Tips for planning and testing custom React hooks with Vitest and React Testing Library.

    Jun 13, 2023 · 7 min read

    Continue reading

  • Build an accessible text field component with React

    Build an accessible text field component with React

    How to build an accessible text field component in React and TypeScript

    Feb 01, 2023 · 11 min read

    Continue reading

  • Build a dialog manager with XState

    Build a dialog manager with XState

    How to use state machines to create a manageable dialog machine.

    Jun 20, 2022 · 18 min read

    Continue reading

Designed & Developed by Maya Shavin - © 2025