Freelancer Tax Calculator
A web calculator that helps Serbian freelancers compare taxes under Model A and Model B, with live EUR to RSD exchange rates and net-income charts.
- Role
- Full-stack Developer
- Platform
- Web (Responsive Single Page Application)
- Category
- Web
- Year
- 2025

01 The brief
Assignment
Build a modern web application for Serbian freelancers to calculate taxes under Model A and Model B, including automatic EUR → RSD exchange rate updates and clear net income comparisons.
Objective
Enable freelancers in Serbia to instantly compare tax obligations under different models, with accurate real-time exchange rates, easy input/output, and a clear, user-friendly interface.
Built with
- Preact
- Vite
- TailwindCSS
- shadcn/ui (Radix UI)
- Recharts
- Netlify Functions (serverless)
- Kurs API
Project overview
Project Background
I created the Freelancer Tax Calculator (Serbia), a responsive web application designed to help freelancers quickly calculate and compare their tax obligations under Model A and Model B. The challenge was to present complex tax calculations in a clear, accessible way, while ensuring automatic updates with live EUR → RSD exchange rates from the National Bank of Serbia (NBS).
Objective
- Provide an intuitive calculator for freelance taxes in Serbia
- Allow gross income input in EUR or RSD
- Automatically fetch and update the official NBS exchange rate
- Compare Model A vs Model B with detailed breakdowns
- Display net income in both currencies with visual feedback (progress bar)
Deliverables
- Fully functional, responsive tax calculator web app
- Automatic integration with NBS exchange rate via serverless proxy
- Visual breakdown of tax burdens with progress bars and charts
- Options for health insurance indicator and additional user settings
- Public GitHub repository and deployable Netlify build
Timeline and Milestones
- Project Kickoff: Apr 12, 2025
- Frontend Setup: Apr 12, 2025
- Serverless API Proxy & Exchange Rate Integration: Apr 12, 2025
- Launch (Netlify Hosting): Apr 13, 2025
Gallery - 03 images
Execution
Phase 1: Research & Planning
- Researched Serbian tax models A & B and freelancer pain points
- Evaluated APIs for EUR → RSD exchange rates and CORS limitations
- Defined app flow: gross input → tax model calculation → net income output
- Skills Used: Tax system analysis, technical planning, UX flow design
Phase 2: Design & Development
- Built frontend with Preact + Vite for speed and modularity
- Designed UI with TailwindCSS and shadcn/ui (Radix) components
- Implemented charts with Recharts for visualizing tax distribution
- Added serverless proxy via Netlify Functions for Kurs API integration
- Skills Used: Frontend dev, UI/UX, serverless functions, API integration
Phase 3: Testing & Launch
- Performed cross-device and cross-browser testing (desktop & mobile)
- Validated exchange rate accuracy with official NBS data
- Optimized usability with visual feedback (progress bar + chart)
- Launched the app on Netlify with MIT license and public GitHub repo
- Skills Used: Deployment, open-source release management