React logo

Petr Tcoi

Hi! My name is Peter. This is my portfolio.

I create websites using React, TypeScript, Express, MongoDb. Также владею CSS, HTML, Firebase Realtime и React Native.

I am familiar with TDD principles and practice using jest, playwright и storybook.

The code for this website is available on Github. I would appreciate any feedback any offers.

List of works

  • State management with Astro and @nanostores

    My first experience with Astro. A simpler and more efficient alternative to NextJS for small websites.

  • Performance of the spread operator

    A brief analysis of the performance of the spread operator and possible alternatives.

  • Functional Programming with fp-ts Library

    A brief introduction to the fp-ts library. Practical example breakdown with the use of TaskEither / Either.

  • A little bit of Ramda for React and Redux

    A brief overview of possible ways to use Ramda with React/Redux. My first experiments with this library.

  • Testing with Storybook

    The final article on testing. Basic setup of Storybook. Connecting the theme selector. Visual testing using Chromatic.

  • Testing with Playwright

    Continuation of testing the site. More accurate checking of the sidebar menu and theme change using the Playwright framework. Testing website interactions, snapshot tests, and checking whether elements appear in the visible area of the screen.

  • Testing with @testing-library

    Configuration and implementation of unit tests and integration tests using the @testing-library library. The functionality of the buttons to open and close the sidebar menu has been checked.

  • Changing theme via CSS variables

    Demonstration of changing the theme via CSS variables and manipulating the DOM: setting the data-theme attribute for the <html> tag. Also, smooth transition is added when changing the color scheme of the site using the transition property.