Migrate from Vite to Next.js 15 with SSR

- Replace Vite + React Router with Next.js 15 App Router
- Implement i18n with next-intl (URL-based: /de, /en, /sr)
- Add SSR/SSG for all pages (48 static pages generated)
- Setup Supabase SSR client for auth
- Migrate all pages: Home, About, Portfolio, Blog, Contact, Login, Dashboard, Imprint, Privacy, Terms
- Add Docker support with standalone output
- Replace i18next with next-intl JSON translations
- Use next/image for optimized images

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-17 01:00:33 +01:00
co-authored by Claude Opus 4.5
parent a66f51b9a2
commit b1ec7b4d61
281 changed files with 8024 additions and 8901 deletions
@@ -0,0 +1,138 @@
// src/i18n/locales/sr/blog/posts/erp-integration-breuninger.ts
export const erpIntegrationBreuninger = {
posts: {
erp_integration: {
title: 'ApparelMagic i TradeByte: Analiza kompleksnih integracija',
date: '2024-02-09',
excerpt: 'Detaljna analiza e-commerce integracije između Apparel Magic-a i Breuninger-a preko TradeByte-a',
category: 'Sistemska integracija',
tags: ['ERP', 'Apparel Magic', 'TradeByte', 'API integracija', 'Python', 'MariaDB'],
coverImage: '/images/posts/erp-integration-breuninger/cover.jpg',
intro: {
title: 'Apparel Magic susreće Breuninger: Tehnička analiza TradeByte integracije',
description: 'Integracija e-commerce sistema sa etabliranim marketplace-ima predstavlja poseban izazov za kompanije. U ovom članku delim svoja iskustva iz kompleksnog integracionog projekta između Apparel Magic-a kao ERP sistema i Breuninger platforme preko TradeByte-a.'
},
background: {
title: 'Pozadina projekta',
systems: {
erp: 'Apparel Magic kao ERP sistem za podatke o proizvodima i upravljanje zalihama',
middleware: 'TradeByte kao middleware za Breuninger platformu'
},
challenges: {
sync: 'Bidirekciona sinhronizacija porudžbina',
customers: 'Automatsko kreiranje kupaca',
delivery: 'Upravljanje otpremnicama',
inventory: 'Upravljanje zalihama u realnom vremenu'
}
},
tech: {
title: 'Tehnička arhitektura',
components: {
title: 'Centralne komponente'
},
database: {
title: 'Middleware baza podataka',
description: 'MariaDB baza podataka služi kao centralno skladište podataka za integraciju:'
}
},
api: {
title: 'API integracije',
apparel_magic: {
title: 'Apparel Magic API',
description: 'REST API Apparel Magic-a se koristi za kreiranje kupaca i upravljanje zalihama:'
},
tradebyte: {
title: 'TradeByte integracija',
description: 'TradeByte API koristi kombinaciju REST-a i XML-a:'
}
},
order_process: {
title: 'Proces poručivanja',
steps: {
fetch: 'Redovno preuzimanje novih porudžbina sa TradeByte-a',
customers: 'Automatsko kreiranje kupaca u Apparel Magic-u',
process: 'Obrada porudžbina i ažuriranje statusa',
delivery: 'Generisanje i čuvanje otpremnica'
},
delivery_notes: {
title: 'Upravljanje otpremnicama'
}
},
challenges: {
title: 'Izazovi i rešenja',
status: {
title: '1. Upravljanje statusima',
description: 'Poseban izazov je bilo upravljanje statusima porudžbina:'
},
error_handling: {
title: '2. Obrada grešaka i monitoring',
description: 'Robusna obrada grešaka je bila ključna za rad u produkciji:'
}
},
best_practices: {
title: 'Najbolje prakse',
api: {
title: '1. API komunikacija',
items: {
retry: 'Implementacija retry mehanizama',
errors: 'Pažljivo rukovanje greškama',
logging: 'Detaljno logovanje sve komunikacije'
}
},
data: {
title: '2. Upravljanje podacima',
items: {
storage: 'Centralno skladištenje podataka u MariaDB',
transactions: 'Transakciona sigurnost kod kritičnih operacija',
validation: 'Redovna validacija podataka'
}
},
automation: {
title: '3. Automatizacija procesa',
items: {
customers: 'Automatizovano kreiranje kupaca',
status: 'Automatsko ažuriranje statusa',
delivery: 'Sistematsko upravljanje otpremnicama'
}
}
},
lessons: {
title: 'Naučene lekcije',
api: {
title: '1. API dizajn',
items: {
docs: 'Temeljna API dokumentacija je ključna',
auth: 'Razumevanje različitih metoda autentifikacije',
limits: 'Uzimanje u obzir rate limit-a'
}
},
validation: {
title: '2. Validacija podataka',
items: {
rules: 'Implementacija strogih pravila validacije',
edge_cases: 'Pažljivo rukovanje posebnim slučajevima',
cleanup: 'Automatsko čišćenje podataka'
}
},
optimization: {
title: '3. Optimizacija procesa',
items: {
automation: 'Kontinuirano poboljšanje automatizacije',
performance: 'Redovne provere performansi',
monitoring: 'Proaktivni monitoring'
}
}
},
conclusion: {
title: 'Zaključak',
requirements: {
understanding: 'Duboko razumevanje oba sistema',
implementation: 'Pažljiva implementacija API komunikacije',
error_handling: 'Robusna obrada grešaka',
monitoring: 'Kontinuirani monitoring'
},
results: 'Razvijeno rešenje uspešno obrađuje porudžbine i omogućava besprekornu integraciju između sistema. Posebno su se automatizovano kreiranje kupaca i upravljanje otpremnicama pokazali kao faktori koji povećavaju efikasnost.'
}
}
}
};