feat: Reinitialize frontend with SvelteKit and TypeScript

- Delete old Vite+Svelte frontend
- Initialize new SvelteKit project with TypeScript
- Configure Tailwind CSS v4 + DaisyUI
- Implement JWT authentication with auto-refresh
- Create login page with form validation (Zod)
- Add protected route guards
- Update Docker configuration for single-stage build
- Add E2E tests with Playwright (6/11 passing)
- Fix Svelte 5 reactivity with $state() runes

Known issues:
- 5 E2E tests failing (timing/async issues)
- Token refresh implementation needs debugging
- Validation error display timing
This commit is contained in:
2026-02-17 16:19:59 -05:00
parent 54df6018f5
commit f935754df4
120 changed files with 21772 additions and 90 deletions

23
frontend/eslint.config.js Normal file
View File

@@ -0,0 +1,23 @@
import { dirname } from 'path';
import { fileURLToPath } from 'url';
const __dirname = dirname(fileURLToPath(import.meta.url));
/** @type {import('eslint').Linter.Config[]} */
export default [
{
ignores: ['.svelte-kit/', 'node_modules/', 'dist/', 'build/']
},
{
files: ['**/*.js', '**/*.ts', '**/*.svelte'],
languageOptions: {
globals: {
console: 'readonly',
document: 'readonly',
window: 'readonly',
localStorage: 'readonly',
fetch: 'readonly'
}
}
}
];