Projects
These projects are personal initiatives where I explore ideas, solve practical problems, and experiment with technologies outside of my professional work. They give me the freedom to make the architectural and product decisions myself—from defining the problem and designing the system to implementation, testing, and deployment.
Pratica Tool

Interactive guitar, bass, and ukulele practice platform built with Next.js, TypeScript, Tone.js, Drizzle, and PostgreSQL and deployed on Vercel. Users can configure their instrument, tuning, strings, and fret range, then generate exercises with synchronized notation, tablature, fretboard visualization, and audio playback.
Exercises are generated algorithmically rather than stored as predefined sequences. Based on the selected instrument and practice settings, the application calculates pitches and fretboard positions, builds the exercise sequence, translates it into musical notation, and schedules playback using a custom tick-based timing model. Changes to the instrument or tuning automatically recalculate the exercise for the new configuration.
I built the notation system from scratch, including custom SVG musical symbols and a responsive renderer that translates generated note sequences into staff, tablature, and fretboard views. Each representation can be displayed independently or combined, adapting the score layout across desktop and mobile screens.
A custom playback engine synchronizes the generated notation with sampler-based audio, a visual indicator for the current note, and automatic scrolling through the score. The application also includes authentication and persisted instrument settings, allowing returning users to continue with their preferred instrument configuration.
My Finances API

Backend foundation for a personal finance application built with Java, Spring Boot, Spring Data JPA, and PostgreSQL. The API currently supports user registration and authentication, financial accounts, categories, and basic transactions through REST endpoints.
The application follows a structured Controller → Service → Repository architecture, with related classes organized around each domain entity. Shared interfaces and abstract classes define common entity and service behavior, reducing duplication and establishing consistent patterns as new domains are added.
The project includes JWT-based authentication along with custom validation, DTO and entity mapping utilities, response handling, and application-specific exceptions. Service tests cover core CRUD behavior, while entity tests verify structural conventions and required persistence annotations.
The project is intentionally at an early stage and currently serves as the backend foundation for a larger personal finance application. Development is paused while I focus on other projects, but the codebase remains a practical environment for exploring and refining Java and Spring Boot application architecture.
Personal Website

Personal portfolio and blog built with Next.js, TypeScript, and Tailwind CSS to present my projects, professional experience, technical skills, and writing in a structured and accessible format.
The application uses a simple component-based structure focused on responsive design, content organization, and maintainability. Project and experience content is separated from presentation components, making it easy to evolve the site as new projects, articles, and professional material are added.
The website is deployed on Vercel with a custom domain, with blog content and assets stored using Cloudflare R2. The source repository is public and also provides a transparent view of the project's ongoing development through its code, commits, issues, and pull requests.