Commit Graph

14 Commits

Author SHA1 Message Date
ca854e9d12 feat(CSS): change colors to Nord theme 2026-02-05 13:14:15 +01:00
65ef6f682f feat(footer): more footer content 2026-02-05 13:14:15 +01:00
4fa8fce9b2 feat(SEO): better metadata and SEO tags 2026-02-05 13:06:38 +01:00
e202376998 fix(contact): update metadata of contact page 2026-02-05 13:06:38 +01:00
70e4ce8b4b test: add comprehensive test suite for components, composables, and pages
Add 16 new test files covering:
- Composables: useBackend, useMeta, useDataJson
- Type classes: QueryResult, ResumeContent
- UI components: BadgeList, BadgeListCard
- Navbar components: LanguageSwitcher, ThemeSwitcher
- App components: AppNavbar, AppFooter
- VocalSynth components: Projects, Tools
- Pages: contact, resume, [...slug]

Tests focus on pure logic, interfaces, and component rendering where
possible, avoiding complex mocking of Nuxt auto-imported composables.

Total: 174 tests across 17 test files (including existing useApi tests).
2026-02-05 13:06:38 +01:00
e6a268bafd docs(content): add Keine Tashi UTAU project page
Add bilingual (EN/FR) content pages documenting the BSUP01 Keine Tashi
UTAU vocal library project, including character information, vocal
library specifications, download links, and usage licence.

Also add .small-img CSS class for floating images in content pages.
2026-02-05 13:06:38 +01:00
2a058b75bd refactor(tests): remove unnecessary parameters from useApi tests
Simplify POST, PUT, and PATCH test calls by removing redundant empty
object and boolean parameters.
2026-02-05 13:06:38 +01:00
f7c4b8d6da feat(resume,vocal-synth): add clickable links to tools and technologies
- Add Tool interface with name and optional link properties
- Update BadgeList and BadgeListCard components to render links
- Extract VocalSynthPage types to dedicated module
- Migrate resume.json and vocal-synthesis.json data to use Tool format
- Add links to all tools, frameworks, and technologies in resume
2026-02-05 13:06:38 +01:00
07917a500b fix(tests): properly mock $fetch in useApi tests
Replace vi.mocked($fetch) with a properly stubbed global mock
using vi.stubGlobal() to fix test failures
2026-02-05 13:06:38 +01:00
37972aa660 feat(contact): add toast notifications for form feedback
- Add toast notifications for contact form success/error responses
- Add toast notifications for backend errors in AppFooter
- Add accessibility explanation for honeypot field
- Add loading state to contact form submit button
- Add i18n translations for toast messages (en/fr)
- Fix honeypot input missing v-model binding
2026-02-05 13:06:38 +01:00
10e51b5da4 feat(pages): add contact page 2026-02-05 13:06:38 +01:00
0b65e17903 feat(useApi): better interface 2026-02-05 13:06:38 +01:00
355653e4f2 fix: incorrect types now fixed 2026-02-05 13:06:38 +01:00
3c3e1b67fd chore: separate frontend from backend 2026-02-05 13:06:38 +01:00