Tak, tak, wiem... Nie powinienem zawierać projektu portfolio na stronie portfolio, jednakże postanowiłem to zrobić z uwagi na użyte technologie. Jest to mianowicie mój pierwszy projekt z użyciem React.js oraz TypeScript. Z perspektywy czasu, React może nie był najlepszym wyborem do tak prostej strony, jednak ta decyzja projektowa pozwoliła mi głęboko zrozumieć jego działanie i w połączeniu z TypeScriptem dała solidny fundament do tworzenia prawdziwych aplikacji z jego wykorzystaniem. Największego problemu przysporzył dynamicznie renderowany DOM, który uniemożliwił łatwe odsłanianie (animację) elementów przy przewijaniu, ponieważ niedostępny dla mnie był querySelector. Co więcej, nie mogłem znaleźć gotowej bilbioteki do animacji, odpowiadającej moim potrzebom - każda sprawiała więcej problemów niż pożytku. To skłoniło mnie do napisania własnego, uniwersalnego komponentu do tego typu animacji, który dodatkowo nie tworzył żadnych elementów opakowujących, co pozwoliło zachować pierwotny layout np. z użyciem CSS grid. Również react-router okazał się nie być najlepszym rozwiązaniem przy wymaganej przeze mnie nawigacji. Gdybym miał jeszcze raz wybierać technologię, prawdopodobnie zdecydowałbym się na coś w rodzaju Gatsby.js lub przynajmniej Next.js - o których wtedy jeszcze nie miałem pojęcia.