Thanks to visit codestin.com
Credit goes to github.com

Skip to content

zaplata2026/website

Repository files navigation

Какво ми взима държавата 🇧🇬

Професионален калкулатор за данъци и осигуровки в България, показващ как промените в данъчното законодателство през 2026 година ще засегнат вашата заплата.

Next.js TypeScript Tailwind CSS Tests

🎯 Основни функционалности

  • Точни изчисления: Базирани на официалните данъчни ставки за 2025 и 2026
  • Пълна разбивка: Детайлна информация за всички осигуровки и данъци
  • Разходи за работодател: Показва колко струва служител на работодателя
  • Покупателна способност: Сравнение с реални продукти
  • SEO оптимизиран: Пълна оптимизация за търсачки
  • Респонсивен дизайн: Работи перфектно на всички устройства
  • 100% типизиран: Изцяло написан на TypeScript
  • Unit tested: Пълно тестово покритие на бизнес логиката

🚀 Бърз старт

Инсталация

# Клонирайте репозиторито
git clone https://github.com/yourusername/kakvomivzimat.git

# Влезте в директорията
cd kakvomivzimat

# Инсталирайте зависимостите
npm install

# Стартирайте development сървъра
npm run dev

Отворете http://localhost:3000 във вашия браузър.

Тестване

# Пуснете всички тестове
npm test

# Пуснете тестовете в watch режим
npm run test:watch

📊 Данъчни промени 2025 → 2026

Максимален осигурителен доход

  • 2025: 4,130 лв. (брутна заплата)
  • 2026: 4,600 лв. (брутна заплата)
  • Промяна: +470 лв. (+11.4%)

Осигуровки за служителя

Пенсии

  • 2025: 6.58%
  • 2026: 7.47%
  • Промяна: +0.89%

Останалите осигуровки остават същите:

  • ОЗМ (Общо заболяване и майчинство): 1.4%
  • Безработица: 0.4%
  • ДЗПО (Допълнително задължително пенсионно осигуряване): 2.2%
  • Здравно осигуряване: 3.2%

Осигуровки за работодателя

Пенсии

  • 2025: 8.22%
  • 2026: 9.33%
  • Промяна: +1.11%

Останалите осигуровки остават същите:

  • ОЗМ: 2.1%
  • Безработица: 0.6%
  • ДЗПО: 2.8%
  • ТЗПБ (Трудова злополука и професионална болест): 0.4%
  • Здравно осигуряване: 4.8%

Данък върху доходите на физическите лица

  • 2025 и 2026: 10% (без промяна)

🏗️ Архитектура

Технологичен стек

  • Framework: Next.js 15 (App Router)
  • Language: TypeScript 5
  • Styling: Tailwind CSS 3.4
  • Testing: Jest + ts-jest
  • Deployment: Vercel (препоръчително)

Структура на проекта

kakvomivzimat/
├── app/                          # Next.js App Router
│   ├── layout.tsx               # Root layout с SEO metadata
│   ├── page.tsx                 # Главна страница
│   └── globals.css              # Глобални стилове
├── components/                   # React компоненти
│   ├── SalaryCalculatorForm.tsx # Форма за въвеждане на заплата
│   ├── ResultsDisplay.tsx       # Показване на резултати
│   └── ProductComparison.tsx    # Сравнение с продукти
├── lib/                         # Бизнес логика
│   ├── SalaryCalculator.ts      # Основен калкулатор клас
│   └── SalaryCalculator.test.ts # Unit tests
├── public/                      # Статични файлове
├── .gitignore
├── package.json
├── tsconfig.json
├── tailwind.config.ts
├── next.config.ts
├── jest.config.js
└── README.md

💻 Основни компоненти

SalaryCalculator класа

Основният изчислителен клас, който съдържа цялата бизнес логика:

import { salaryCalculator } from '@/lib/SalaryCalculator';

// Сравнение между 2025 и 2026
const comparison = salaryCalculator.compareSalaryBetweenYears(4000);

console.log(comparison.netSalaryDifference); // -91.42 лв.
console.log(comparison.annualNetSalaryDifference); // -1,097.04 лв.
console.log(comparison.percentageChange); // -2.29%

Ключови методи

calculateNetFromGross(grossSalary, config)

Изчислява нетна заплата от брутна заплата.

const result = calculator.calculateNetFromGross(5000, TAX_CONFIG_2025);
// Връща детайлна разбивка на всички осигуровки и данъци

compareSalaryBetweenYears(netSalary2025)

Сравнява заплати между 2025 и 2026 година.

const comparison = calculator.compareSalaryBetweenYears(4000);
// Връща пълно сравнение с всички разлики

calculateProductLoss(annualDifference, productPrice)

Изчислява колко продукти могат да бъдат закупени с годишната разлика.

const breads = calculator.calculateProductLoss(-1097.04, 2.5);
// Връща 438 (хляба)

🧪 Тестване

Проектът има пълно тестово покритие на бизнес логиката:

  • ✅ 27 unit теста
  • ✅ Тестване на конфигурации за 2025 и 2026
  • ✅ Тестване на изчисления под/над максимален осигурителен доход
  • ✅ Тестване на edge cases
  • ✅ Тестване на реални сценарии

Примери за тестове

npm test

# Очакван изход:
# PASS lib/SalaryCalculator.test.ts
#   SalaryCalculator
#     Tax Configuration
#       ✓ 2025 configuration should have correct values
#       ✓ 2026 configuration should have correct values
#     ...
#   Test Suites: 1 passed, 1 total
#   Tests:       27 passed, 27 total

🎨 Дизайн и UX

Цветова палитра

Проектът използва тъмна тема с акцент върху червени цветове, за да предаде негативното чувство от загубата на пари:

  • Основен фон: Черно към тъмно сиво градиент
  • Акцент: Червени тонове (danger-500 до danger-900)
  • Вторичен акцент: Оранжеви тонове за продукти
  • Текст: Бяло и сиви нюанси

Responsive дизайн

  • Mobile-first подход
  • Breakpoints: sm (640px), md (768px), lg (1024px), xl (1280px)
  • Оптимизиран за телефони, таблети и десктопи

🔧 Конфигурация

Персонализиране на данъчни ставки

Можете лесно да промените данъчните ставки, като създадете custom конфигурация:

import { SalaryCalculator, TaxConfig } from '@/lib/SalaryCalculator';

const customConfig: TaxConfig = {
  year: 2027,
  maxInsurableIncome: 5000,
  employee: {
    pension: 0.08,
    sickness: 0.015,
    unemployment: 0.005,
    supplementaryPension: 0.025,
    health: 0.035,
  },
  employer: {
    pension: 0.10,
    sickness: 0.025,
    unemployment: 0.007,
    supplementaryPension: 0.03,
    occupationalAccidents: 0.005,
    health: 0.05,
  },
  incomeTaxRate: 0.12,
};

const calculator = new SalaryCalculator(customConfig, customConfig);

Персонализиране на продукти

Редактирайте components/ProductComparison.tsx:

const PRODUCTS: Product[] = [
  { name: 'Хляб', emoji: '🍞', price: 2.5, unit: 'хляб' },
  { name: 'Вашият продукт', emoji: '🎯', price: 10.0, unit: 'бр.' },
  // ... добавете повече продукти
];

📈 SEO Оптимизация

Проектът е напълно оптимизиран за търсачки:

  • ✅ Semantic HTML
  • ✅ Meta tags (Open Graph, Twitter Cards)
  • ✅ Structured data (JSON-LD)
  • ✅ Responsive design
  • ✅ Fast page load
  • ✅ Accessibility (ARIA labels)
  • ✅ Server-side rendering (SSR)

🚀 Деплоймънт

Vercel (Препоръчително)

# Инсталирайте Vercel CLI
npm i -g vercel

# Deploy
vercel

Други платформи

Проектът е Next.js приложение и може да бъде деплойнат на:

  • Netlify
  • AWS Amplify
  • DigitalOcean App Platform
  • Railway
  • Render

📝 Лиценз

MIT License - вижте LICENSE файл за детайли.

👨‍💻 Автор

Martin Kuvandzhiev

Създадено с ❤️ за българските работещи хора.

🤖 AI Development

Този проект е разработен изцяло от AI, използвайки AI Software Development Rules of encorp.ai.

Технологии:

  • Claude Code (Anthropic)
  • AI-assisted development workflow
  • Automated testing and documentation
  • Professional code generation

🤝 Допринасяне

Pull requests са добре дошли! За значителни промени, моля първо отворете issue, за да обсъдим какво бихте искали да промените.

Как да допринесете

  1. Fork-нете проекта
  2. Създайте feature branch (git checkout -b feature/AmazingFeature)
  3. Commit-нете промените (git commit -m 'Add some AmazingFeature')
  4. Push-нете към branch-а (git push origin feature/AmazingFeature)
  5. Отворете Pull Request

📞 Обратна връзка

Имате въпроси или предложения? Отворете issue в GitHub!


Важно: Този калкулатор предоставя приблизителни изчисления базирани на публично достъпна информация за данъчните ставки. За точна информация за вашата индивидуална ситуация, моля консултирайте се със счетоводител или данъчен консултант.

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •