Projects
Portfolio
This is the very page you're looking at! The idea for this project was born in 2023 when the crisis in the IT industry became apparent to me. I decided to create this portfolio to raise my value on the increasingly more demanding market. This page is meant to serve as my digital business card and at the same time a testimony of my skills.
Design
In designing my portfolio, I aimed to create more than just a formal information medium; I wanted it to reflect my personality and appreciation for artistic aesthetics. After exploring themes like pixel art retro cars and sunny tropical beaches, I ultimately decided on a print media-inspired theme. Every element of the website reflects this concept, from the textured paper background, through the dynamic ink splatter navigation menu to the newspaper like article that you're reading now. In the end I'm proud of my design decisions and I'm pleased with the visual outcome of the website.
Tech stack
As a React developer, it's no surprise that I've primarily utilized technologies from the React ecosystem for this project. However, my choices were also influenced by my desire to enhance my proficiency in specific areas. Here's a rundown of the technologies I've employed: - TypeScript: for type safety and enhanced development experience. - React 18: leveraging the latest features and improvements in the React framework. - Next.js 13/14: for efficient app directory routing and server-side rendering capabilities. - SCSS and CSS Modules: for modular and maintainable styling solutions. - React Hook Forms: for building dynamic and interactive form components. - two.js: for creating dynamic graphics and animations, enriching the visual experience of the portfolio. These technologies collectively form the foundation of my development stack, enabling me to create a robust and visually engaging portfolio.
Challenges
While this project may not have been inherently complex, its unique theme presented several noteworthy challenges. One such challenge was implementing the halftone effect on the homepage image. This required a deep dive into niche CSS rules like mix-blend-mode, background radial gradients, and filters with multiple values. Although I didn't invent this technique, understanding and implementing it posed a slight challenge. Another challenge arose with the ink splatter effect seen during navigation. Wanting to create a dynamic and non-repeating splash effect, I initially attempted to achieve this with CSS alone, leveraging recently learned techniques like mix-blend-mode. However, inconsistencies across browsers led me to explore alternative solutions. Ultimately, I turned to the graphics library two.js, which allowed me to achieve a consistent and visually appealing solution. The final challenge I'll mention is implementing a custom scrollbar, which ultimately proved to be more difficult than anticipated. I researched existing solutions but found that none of the packages I tried offered the desired combination of looks and functionality. Undeterred, I attempted to implement my own solution, which initially seemed to work fine. However, as I continued developing other features, layout glitches started to arise. Recognizing the potential time investment required to resolve these issues, I made the decision to abandon the custom scrollbar feature for the time being. This experience taught me that scrollbar styling is not yet standardized across browsers, leading to inconsistencies and potential layout issues. Despite the setback, I remain open to revisiting this feature in the future, with a better understanding of the challenges involved.
Lessons learned
In the process of developing this portfolio, I've acquired valuable knowledge and skills. I've gained proficiency in new app directory api offered by Next.js 13/14. Additionally, I've delved into the world of CSS with the exploration of mix-blend-mode, discovering its versatility and the array of effects it can achieve. Experimenting with the two.js library has expanded my understanding of dynamic graphics and animation, while exploring SVG filters has opened up new possibilities for creative visual effects. These learnings have not only enriched my toolkit as a frontend developer but have also inspired me to continue exploring and innovating in my future projects.
Future plans
In the future, I aim to revisit the custom scrollbar feature, refining its implementation and addressing any layout glitches that may arise. Additionally, I plan to incorporate animations to enhance the overall user experience. As I continue to develop and add future projects to my portfolio, I will ensure to update information about myself to reflect my evolving skills and experiences.
Commercial projects
During my professional journey, I've had the privilege of contributing to a variety of projects. Below, you'll find details of the commercial projects I've been involved in.
At Code & Pepper:
In my role at Code & Pepper, I contributed to several projects. One such project was Issuefly.com, an online issue tracking web application designed to streamline communication between business partners. Leveraging technologies like JavaScript, AngularJS, and Material Design, we created a user-friendly platform that enhanced collaboration and workflow efficiency. Another notable project was Rownacszanse.pl, a grant distribution program aimed at providing equal development opportunities for youth in rural regions. Utilizing JavaScript, jQuery, PHP, SQL, and MySQL, we developed a platform that facilitated the distribution of grants and resources, empowering young individuals to pursue their goals and aspirations. Additionally, I worked on Localbini.com, a touring platform connecting guides and tourists for personalized experiences. By employing JavaScript and PHP, among other technologies, we created a dynamic platform that enriched travel experiences and fostered meaningful connections between locals and travelers. At Code & Pepper, I also contributed to Charlycares.com, a babysitting platform connecting parents with babysitters for childcare services. Through the use of JavaScript and AngularJS, we developed a reliable and user-friendly platform that simplified the process of finding trusted childcare providers. Furthermore, I participated in Noba.nl, a tablet-exclusive web application designed for product promotion at fairs. By harnessing the power of JavaScript and AngularJS, we created an engaging platform that effectively showcased products and engaged event attendees.
At Bitcraft:
During my tenure at Bitcraft, I collaborated on projects such as Conversion.pl, an A/B testing web application enabling e-commerce companies to serve different website variants. Using JavaScript and jQuery, we developed a versatile platform that empowered marketing professionals to optimize website performance and enhance user engagement.
At Transition Technologies Managed Services:
In this company I worked on diverse projects, including the development of a Conference Room Management System CMS and a Campus Navigation System CMS. Leveraging technologies like JavaScript, AngularJS, and React, we created intuitive and efficient systems for managing conference rooms and aiding navigation within clients' campuses. Additionally, I participated in the development of a Medical System, utilizing TypeScript and Angular to create a comprehensive solution for our healthcare client.
At Esports Lab:
At Esports Lab, I was involved in the development of an Esports Training Platform from its inception. By utilizing JavaScript, React, ReactQuery, and Chakra UI, we created a cutting-edge platform designed to enhance the training and performance of esports teams.
At Patient21:
Finally, at Patient21, I contributed to various components of a Medical System, including patient-facing and partner-facing websites, booking widgets, and CMS parts. With technologies like TypeScript, React, Next.js, ReactQuery, and Material UI, we developed versatile solutions tailored to the needs of healthcare providers. Additionally, I led the development of a UI Library, providing creation, testing, editing, previewing, and publishing capabilities. Using TypeScript, React, bit.dev, and Material UI, we created a robust library system to streamline UI development processes. These experiences have equipped me with a diverse skill set and a proven track record of delivering high-quality solutions across various industries and domains.