Photography Portfolio


Photography portfolio redesign using NextJS and Cloudinary's API that ensures fast page loads and optimal performance through server-side rendering (SSR) and static site generation (SSG), guaranteeing a seamless user experience with efficient resource utilization. By harnessing Cloudinary's image management features, I have optimized the handling, transformation, and delivery of the images, resulting in a highly responsive and visually stunning portfolio.


Crypto Dice


The game to bet on your coin's next valuation! Select your favorite crypto currency and bet if the price will go up or down. The app works with real-time prices of Bitcoin and Ethereum by using Binance's public websockets. Built using JavaScript, React and Styled Components. End to End testing using Cypress and Jest.




A single page application empowers coffee shops to manage digital punch cards for their customers. The project involved creating a custom database schema and REST API using Active Record, PostgreSQL, and Rails. User authentication, implemented through BCrypt encryption and cookies, enabled coffee shops to securely log in. The front-end was designed using React JS and CSS, incorporating a minimalist design to enhance user experience. Functionality included updating punch cards, as well as creating or deleting cards, allowing seamless interaction with the database.


Pomodoro Timer


Stay focused while studying by using the pomodoro technique. Set up timers for working time and relaxing time and don't feel guilty when taking a break! This app lets you set how many minutes you will be working or resting, and set your favorite alert sound. Built using JavaScript and React.


Random Bazaar


Built using JavaScript and React on the Frontend, Random Bazaar is a versatile platform for item transactions. It uses Active Record, PostgreSQL, and Rails to create a custom database schema and REST API. User authentication ensures secure access. The search engine allows easy item discovery. User-to-user messaging enables communication and negotiation. Image uploads using Active Storage enhance item showcasing. With its robust features, Random Bazaar offers a user-friendly experience for seamless item transactions and interactions.