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
13581d7f2f
style(content): normalise italic markdown syntax in languages pages
...
Change *italic* to _italic_ for consistency across English and French
languages 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
8052ccf0d5
docs(content): add languages & worldbuilding page content
...
Cover conlanging projects: Eittlandic (Old Norse-derived language
for fictional Nordic country), Proto-Ñyqy (proto-language of the
Ñyqy family), and Zikãti (conlanging experiment)
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
9f1d4db0de
feat: fill pages
2025-11-13 22:13:40 +01:00
3f828a754b
feat(frontend): main page
2025-11-11 19:12:03 +01:00
89c7588883
feat(backend): build backend with Nix and add CI
2025-11-06 09:27:39 +01:00
e2b975fa12
feat(backend): redact email password in logs
2025-11-06 09:27:39 +01:00
def25632d1
feat(backend): add rate limiting to the backend’s API
2025-11-06 09:27:39 +01:00
d0642d031b
feat(backend): relay contact requests to SMTP server
2025-11-06 09:27:39 +01:00
007c3d1c18
feat: initialization migration to Nuxt + Backend
...
This commit initializes both the Nuxt frontend and the Rust backend of
the new version of phundrak.com
2025-11-06 09:27:39 +01:00
cc62d0bb95
chore: deploy to Cloudflare Pages
2025-02-09 12:11:44 +01:00
727ec58600
chore: update vuepress and plugins
2025-02-09 11:57:54 +01:00
333b7a7562
docs: update mastodon link
2024-11-17 14:29:45 +01:00
baf999ea1c
docs: update resume
2024-10-01 23:20:02 +02:00
9a92f57986
chore: update metadata
2024-07-09 20:45:36 +02:00
c8ce7ca6da
chore(package.json): remove unused packages
2024-06-20 09:33:58 +02:00
d54aabd621
refactor: rework API loader and caching
...
This commit removes dependency on rxjs.
It also implements better composables to handle data fetching from
remote APIs and caching these values more transparently.
This commit also switches from yarn to npm
It also switches to the official Umami plugin
2024-06-20 09:27:59 +02:00
24d558e0f5
test
2024-02-26 07:38:38 +01:00
bc36bdec90
feat(umami): switch to dedicated Vuepress plugin
2024-02-26 06:51:54 +01:00
1b54860f93
docs(find-me): Update Discord handle
...
Update content/en/find-me.org
Update content/find-me.org
Update content/lfn/find-me.org
2024-02-26 06:51:27 +01:00
37f9b36b2f
feat,docs: add Umami to website, update privacy pages
2024-01-27 18:25:44 +01:00
4b447369c2
chore: switch from Drone to Gitea Actions
2024-01-27 16:55:30 +01:00
cf1147204c
chore: update Vuepress, add search bar
2024-01-27 16:15:57 +01:00
1ff33bfd64
chore: update dependencies
2023-11-03 19:48:47 +01:00
2496bff82f
fix: only subscribe once to observables
2023-11-03 19:48:47 +01:00
6a37029e55
docs: update index and privacy
2023-11-03 19:48:47 +01:00
2f11f5a477
docs: update index in English and French
2023-11-03 19:48:46 +01:00
b84d320908
docs: update content/lfn/index.org
2023-11-03 19:48:40 +01:00
48ec3f49a0
docs(README): update Emacs version on badge
2023-11-03 19:48:40 +01:00
0fa7aa7a97
docs(resume): update resume
2023-11-03 19:48:40 +01:00
236e28c14e
docs(vocal synth): update ALYS links
2023-11-03 19:48:39 +01:00
ec625ce8a5
Revert "chore: update mastodon account"
...
This reverts commit 5d88c1855aabe7d0cab8e8d5b9cebcea872bbbb3.
2023-11-03 19:48:39 +01:00
4ae4912268
chore: update mastodon account
2023-11-03 19:48:39 +01:00
7d09cfa8ef
docs: update webfinger
2023-11-03 19:48:39 +01:00
fc863eab30
docs: fixed incorrect link to image
2023-11-03 19:48:39 +01:00
1a5565a953
docs: update readme
2023-11-03 19:48:39 +01:00
c1f6a4b110
chore: add two static files
...
The webfinger is my general Mastodon alias.
I use sometimes the CSS files in my emails to stylize them a bit.
2023-11-03 19:48:39 +01:00
4f0aee4c62
feat: implement Gemini export and deployment
2023-11-03 19:48:39 +01:00
23bbcfabe3
docs: update pinned GitHub repositories
2023-11-03 19:48:39 +01:00
c19d847686
chore: add gitattributes file for orgmode detection in languages of project
2023-11-03 19:48:39 +01:00
e9d890f4dc
docs: update README instructions
2023-11-03 19:48:39 +01:00
6eb11a8e09
refactor: simplify code head generation
2023-11-03 19:48:39 +01:00