feat: initialization migration to Nuxt + Backend

This commit initializes both the Nuxt frontend and the Rust backend of
the new version of phundrak.com
This commit is contained in:
2025-11-04 09:17:18 +01:00
parent cc62d0bb95
commit 007c3d1c18
134 changed files with 17247 additions and 8335 deletions

View File

@@ -1,22 +0,0 @@
#+setupfile: ../headers
#+language: en
* About
** Introduction
This is the personal website of Lucien “Phundrak” Cartier-Tilet.
It is written with [[https://v2.vuepress.vuejs.org/][Vuepress]] and is completely open-source. You can
find the source code on my [[https://labs.phundrak.com/phundrak/phundrak.com][personal Gitea instance]]. Icons used on this
website come from different sources:
- [[https://icomoon.io/][IcoMoon]] which I use to consolidate all the icons used in one font,
including some icons from their default pack
- [[https://fontawesome.com/][FontAwesome]] from which most icons come from --- their Vue package
is, in my opinion, really not usable
- The {{{icon(conlang)}}} [[https://conlang.org/][Language Creation Society]] whose logo I modified in
order to create the icon used here when referring to my constructed
languages
- {{{icon(emacs)}}} [[https://www.gnu.org/software/emacs/][Emacs]] and {{{icon(writefreely)}}} [[https://writefreely.org/][WriteFreely]] whose respective
logo I partially remade as an SVG file in order to create an icon.
- {{{icon(gitea)}}} [[https://gitea.io][Gitea]] whose logo I modified to be monochromatic
#+include: other-links

View File

@@ -1,28 +0,0 @@
#+setupfile: ../headers
#+language: en
* Conlanging
/Conlangs/, short for /constructed languages/, are artificial
languages born out of the mind of a single individual (sometimes a
couple of them), unlike natural languages born through countless
iterations by their native speakers, slowly evolving over time like
English, French, Mandarin, Japanese, Bahasa, or !Xhosa did.
They can serve various goals from their creators:
- be spoken by as many people as possible as a neutral language, like
[[https://en.wikipedia.org/wiki/Esperanto][Esperanto]] and [[https://elefen.org][Lingua Franca Nova]]
- be a secret language between a couple of people
- as a thought experiment, like [[https://en.wikipedia.org/wiki/Lojban][Lojban]]
- fill a litterary universe, like Tolkiens elvish languages or Star
Treks Klingon
- for the sake of art itself
In my case, the last two reasons are the main ones driving me to
create languages. My two main projects at the time of writing this
page are [[https://conlang.phundrak.com/proto-nyqy][Proto-Ñyqy]] and [[https://conlang.phundrak.com/eittlandic][Eittlandic]]. Both are accompanied by their own
worldbuilding project, although Proto-Ñyqys worldbuilding is still
largely secret while Eittlands worldbuilding is mostly public.
More information can be found on my [[https://conlang.phundrak.com/][conlanging website]].
#+include: other-links

View File

@@ -1,31 +0,0 @@
#+setupfile: ../headers
#+language: en
* Where to find me
I am on various websites and some social networks where you can follow
me.
** Social Networks
- {{{icon(mastodon)}}} *Mastodon* :: [[https://mastodon.phundrak.com/@phundrak][@phundrak@mastodon.phundrak.com]]
- {{{icon(twitter)}}} *Twitter* :: [[https://twitter.com/phundrak][@phundrak]], though I harldy use it anymore
and mostly reshare my Mastodon messages when I think to, and
sometimes they get truncated
- {{{icon(writefreely)}}} *Writefreely* ::
- [[https://write.phundrak.com/phundrak][@phundrak@write.phundrak.com]] : blog alternative
- [[https://write.phundrak.com/phundraks-short-stories][@phundraks-short-stories@write.phundrak.com]] :: short stories,
mainly in French for now
- {{{icon(discord)}}} *Discord* :: =@phundrak= (tell me you come from here,
otherwise theres a chance Ill consider your message as spam)
** Other Websites
- {{{icon(envelope)}}} *Email* :: [[mailto:lucien@phundrak.com][lucien@phundrak.com]]
- {{{icon(rss)}}} *Blog* :: [[https://blog.phundrak.com][blog.phundrak.com]]
- {{{icon(gitea)}}} *Gitea* :: [[https://labs.phundrak.com/phundrak][@phundrak@labs.phundrak.com]]
- {{{icon(github)}}} *GitHub* :: [[https://github.com/Phundrak][Phundrak]]
- {{{icon(youtube)}}} *YouTube* :: [[https://www.youtube.com/@phundrak][@phundrak]]
- {{{icon(reddit)}}} *Reddit* :: [[https://www.reddit.com/user/phundrak][/u/phundrak]]
- {{{icon(linkedin)}}} *LinkedIn* :: [[https://www.linkedin.com/in/lucien-cartier-tilet/][Lucien Cartier-Tilet]]
- {{{icon(twitch)}}} *Twitch* :: [[https://www.twitch.tv/phundrak][phundrak]]
#+include: other-links

View File

@@ -1,29 +0,0 @@
#+setupfile: ../headers
#+language: en
* Home
Hi, Im Lucien Cartier-Tilet, a consultant working at [[https://aubay.com][Aubay]].
I studied for my Masters 2 degree in THYP (in French: /Technologies de
lHypermédia/, in English: /Hypermedia Technologies/) at the Université
Vincennes Saint-Denis (Paris 8).
I worked at VoxWave from 2012 to 2018 as its co-founder and CTO.
During that time, I developed French singing vocal libraries for vocal
synthesizers, known as ALYS and LEORA.
Im a free software enthusiast, using GNU/Linux since 2008 and Emacs
since 2016.
I spend my personnal programming projects as well as on my constructed
worlds and languages. I also like to go climbing, and hiking whenever
I have the opportunity to.
I speak natively French, and English at a native level. I also speak
some Japanese, [[https://elefen.org][Lingua Franca Nova]], and Norwegian Bokmål.
#+begin_export html
This website is also available on Gemini as [gmi.phundrak.com/en](gemini://gmi.phundrak.com/en)!
#+end_export
#+include: other-links

View File

@@ -1,190 +0,0 @@
#+setupfile: ../headers
#+language: en
* BSUP01 Keine Tashi
** Introduction
KEINE Tashi is a character and set of vocal libraries developed for
the shareware [[http://utau2008.web.fc2.com/][UTAU]], a singing voice synthesizer. I developed KEINE
Tashi over the course of several years, from 2012 to 2015. Three vocal
libraries have been released to the public, the most used one being
his *JPN Power Extend* one. On March 10th, 2017, I announced I would
cease any kind of activity related to UTAU.
#+begin_export html
<blockquote class="twitter-tweet" data-dnt="true" data-theme="dark"><p
lang="en" dir="ltr">Id like to also announce that from now on I am
dropping my previous UTAU projects other than covers and wont develop
any new UTAU library</p>— Pundrak (@Phundrak) <a
href="https://twitter.com/Phundrak/status/840174634377105408?ref_src=twsrc%5Etfw">March
10, 2017</a></blockquote> <component is="script" async
src="https://platform.twitter.com/widgets.js"
charset="utf-8"></component>
#+end_export
** Character and vocal libraries
Heres a copy and paste of some old pages describing KEINE Tashi:
*** Presentation
#+begin_export html
<ResponsiveImage
src="https://cdn.phundrak.com/img/UTAU/KEINE_Tashi_1024.webp"
:width="1024"
preview="https://cdn.phundrak.com/img/UTAU/KEINE_Tashi_512.webp"
:previewWidth="512">
Illustration de KEINE Tashi par Umi
</ResponsiveImage>
#+end_export
- Codename :: BSUP01 恵音བཀྲ་ཤིས་ KEINE Tashi
- First name :: Tashi (བཀྲ་ཤིས་), Tibetan name meaning “auspicious”
- Last name :: Keine (恵音), Japanese name meaning “Blessing sound”.
It reads as “keine”, although its regular reading should be
“megumine”.
- Model :: BSUP (Bödkay Shetang UTAU Project)
- Number :: 01
- Gender :: male
- Birthday (lore) :: June 28th, 1991
- Birthday (first release) :: October 14th, 2012
- Weight :: 154 lb / 70 kg
- Heigh :: 60″ / 182 cm (very tall for a Tibetan)
- Hair color :: black
- Eyes color :: brown~black
- Appearance :: Tashi wears a modernized Tibetan suit from the Amdo
Region (Chinese: 安多 Ānduō), colored in blue. He also wears some
turquoise jeweleries.
- Favorite food :: meat momo (Tibetan raviolies)
- Character item :: a Tibetan manuscript
- Voice and creator :: [[https://phundrak.com][Phundrak]] (me)
- Likes :: to meditate, calligraphy, old books, manuscripts (is that
a self-insert?)
- Dislikes :: selfishness, lies, arrogance
- Personality :: Tashi is somebody very calm, sweet. He really enjoys
old books and manuscripts, and he LOVES meditate! He's never hungry,
so, he can stay meditating for 2~3 days meditating, just like that,
until he realizes that he should eat something. And he always keeps
quiet, it's really hard to make him angry.
But when he is, his anger becomes wrath. Anyone who experienced it
can attest how complex and difficult it is to calm him down.
Strangely enough, shortly after being confronted by Tashi, the
victims of this wrath see their quality of life greatly improve.
Maybe these people needed to hear some truths they refused to face
before?
*** Vocal libraries
**** JPN VCV
- Download link ::
| Extension | Size | Link |
|-----------+----------+------|
| 7z | 25.7 MiB | [[https://cdn.phundrak.com/files/KeineTashi/BSUP01_KEINE_Tashi_JPN_VCV.7z][DL]] |
| tar.xz | 32.5 MiB | [[https://cdn.phundrak.com/files/KeineTashi/BSUP01_KEINE_Tashi_JPN_VCV.tar.xz][DL]] |
| zip | 38.0 MiB | [[https://cdn.phundrak.com/files/KeineTashi/BSUP01_KEINE_Tashi_JPN_VCV.zip][DL]] |
- File size :: 60.7 MB
- Total uncompressed size :: 94.4 MB
- Number of voice phonemes :: 1264 (253 audio files)
- Average frequency :: G#2
- Vocal range :: C2~D3
- FRQ file presence :: partial
- Release date :: October, 14th 2012
- Phoneme encoding :: Romaji with hiragana and CV romaji aliases
- Supported languages :: Japanese
- oto.ini :: Tuned myself
- Recommended engines :: TIPS, VS4U
**** JPN Extend Power
- Download link ::
| Extension | Size | Link |
|-----------+--------+------|
| 7z | 1.1Gio | [[https://cdn.phundrak.com/files/KeineTashi/BSUP01_KEINE_Tashi_JPN_Extend_Power.7z][DL]] |
| tar.xz | 1.1Gio | [[https://cdn.phundrak.com/files/KeineTashi/BSUP01_KEINE_Tashi_JPN_Extend_Power.tar.xz][DL]] |
| zip | 1.2Gio | [[https://cdn.phundrak.com/files/KeineTashi/BSUP01_KEINE_Tashi_JPN_Extend_Power.zip][DL]] |
- File size :: 114 MB
- Total uncompressed size :: 155 MB
- Number of voice phonemes :: 3020 (546 audio files)
- Average frequency :: C3
- Vocal range :: B1~D4
- FRQ file presence :: partial
- Release date :: June 28th, 2013
- Phoneme encoding :: Romaji (hiragana aliases)
- Supported languages :: Japanese
- oto.ini :: Tuned myself
- Recommended engines :: VS4U, world4utau
**** JPN Extend Youth
- Download link ::
| Extension | Size | Link |
|-----------+----------+------|
| 7z | 237.7Mio | [[https://cdn.phundrak.com/files/KeineTashi/BSUP01_KEINE_Tashi_JPN_Extend_Youth.7z][DL]] |
| tar.xz | 243.5Mio | [[https://cdn.phundrak.com/files/KeineTashi/BSUP01_KEINE_Tashi_JPN_Extend_Youth.tar.xz][DL]] |
| zip | 268.7Mio | [[https://cdn.phundrak.com/files/KeineTashi/BSUP01_KEINE_Tashi_JPN_Extend_Youth.zip][DL]] |
- File size :: 36.9 MB
- Total uncompressed size :: 42.0 MB
- Number of voice phonemes :: 1954 (182 audio files)
- Average frequency :: C4
- Vocal range :: F#3~A#4
- FRQ file presence :: partial
- Release date :: June 28th, 2013
- Phoneme encoding :: Romaji (hiragana aliases, romaji added with the
oto.ini update)
- Supported languages :: Japanese
- oto.ini :: Tuned myself
- Recommended engines :: fresamp, VS4U, world4utau
**** JPN Extend Native
- Status :: abandonned
**** TIB CVVC
- Status :: abandonned
**** ENG
#+begin_export html
<ResponsiveImage
src="https://cdn.phundrak.com/img/UTAU/KEINE_Tashi_EN_673.webp"
:width="673"
preview="https://cdn.phundrak.com/img/UTAU/KEINE_Tashi_EN_246.webp"
:previewWidth="300">
Illustration de KEINE Tashi EN
</ResponsiveImage>
#+end_export
- Status :: abandonned
** Usage clause and license
KEINE Tashi is released under the [[https://creativecommons.org/licenses/by-nc-sa/4.0/][CC BY-SA-NC 4.0 license]], meaning you
are free to:
- use :: make use of the vocal libraries in UTAU or any other singing
vocal synthesizer software.
- adapt :: remix, transform, and build upon the material
- share :: copy and redistribute the material in any medium or format
my work, on the condition of:
- Attribution :: You must give appropriate credit, provide a link to
the license, and indicate if changes were made. You may do so in any
reasonable manner, but not in any way that suggests the licensor
endorses you or your use.
- NonCommercial :: You may not use the material for commercial
purposes.
- ShareAlike :: If you remix, transform, or build upon the material,
you must distribute your contributions under the same license as the
original.
Although I cannot add anything to this legal notice, I would also like
if you followed the following rules of thumb regarding this character:
any religious use of this character and its vocal libraries is
forbidden, except for folk music, and Buddhist and Bön songs. However,
due to the current controversy, any song linked to His Holiness the
Gyalwa Karmapa is strictly forbidden until said controversy has been
officially resolved. This is also applicable to His Holiness the Dalai
Lama, the Venerable Shamar Rinpoche, and Tai Situ Rinpoche. If you
have any question or if you are unsure, please email me.
#+include: other-links

View File

@@ -1,14 +0,0 @@
# -*- mode: org -*-
#+begin_export gmi
# Other Web Pages
=> ./index.gmi Home
=> ./find-me.gmi Where to find me
=> ./resume.gmi Resume
=> ./projets.gmi Programming Projets
=> ./conlanging.gmi Conlanging
=> ./vocal-synthesis.gmi Vocal Synthesis
=> ./about.gmi About
=> ./privacy.gmi Privacy
#+end_export

View File

@@ -1,76 +0,0 @@
#+setupfile: ../headers
#+language: en
* Privacy
** Where is the website hosted?
This website is hosted on my private physical server, located in the
town of Bron in France, near Lyon. All of my websites are also hosted
on this server, except for [[https://labs.phundrak.com][=labs.phundrak.com=]] and =mail.phundrak.com=
which are hosted on servers rented to Scaleway and OVH France
respectively. These servers are also located in France.
** Cookies
*** What are cookies?
Cookies are small files a website saves on your computer or mobile
phone when you visit a website. Although not all sites make use of
them, they are nevertheless extremely common in order to allow
websites to function properly or function properly or more
efficiently.
This website uses some functional cookies in order to remember your
preferences, such as your preferred language or its colour theme.
These cookies are not and cannot be used to track you.
However, as this site is protected by Cloudflare, they may also host
some cookies to remember, for example, that your browser is safe or to
record traffic to the site.
*** How can I control cookies on my computer?
If you don't want Cloudflare to record your browsing activity on my
website, a good ad blocker should do the trick. I personally recommend
[[https://ublockorigin.com/][uBlock Origin]], one of the most effective ad blockers I know of if not
the most effective one.
You can also manually delete cookies from your browser, but given the
number of browsers out there, it might be quicker for you to look up
DuckDuckGo, Qwant or Startpage to do this for your current browser (if
you're worried about cookie usage, I guess you'll want to avoid
Google).
*** What about other methods of tracking users?
There are other more subtle methods of tracking someone on the
internet, or even via emails or any web content rendered on the
screen, such as web beacons (minuscule, invisible images). It is also
possible to store Flash cookies or local shared objects.
*** But is there any tracking at all on this website?
Well, there is, but it absolutely respects your privacy. I use my own
instance of [[https://umami.is][Umami]] which is an analytics service that is fully GDPR and
CCPA compliant. In short, when you visit a web page, some data get
sent to my service, but nothing that can identify you. If you come
back an hour later, I wont have any indication that you are the same
person.
If you still worry about your privacy, you have two options:
- Activate the Do Not Track setting of your browser (which Umami will
honour)
- Block the domain =umami.phundrak.com= in uBlock Origin (the only
ad blocker I will ever trust)
** Is there targeted advertisement on this website?
Theres no advertisement to begin with, and never will be. If you see
any, check your computer and browser for virus, that is not normal. If
it indeed comes from my website, it means it has been hacked. If you
can see in this websites repository that I myself added ads, it means
that I either lost my morals, or that I have been kidnapped and this
is a cry for help.
** How often is this page updated?
It is updated from time to time to reflect any changes in how my
website behaves, or if I notice errors on this page (such as typos).
** I have other questions
And I have the answers! Ill be more than happy to chat with you by
email, feel free to send me one at [[mailto:lucien@phundrak.com][lucien@phundrak.com]].
#+include: other-links

View File

@@ -1,43 +0,0 @@
#+setupfile: ../headers
#+language: en
* Programming Projects
** Pinned GitHub Projects
#+begin_export gemini
Unfortunately, this content is not available on Gemini. Im working on it.
#+end_export
#+begin_export html
<ClientOnly>
<ListRepositories>
<GithubRepository repoName="rejeep/f.el" />
<GithubRepository repoName="Phundrak/eshell-info-banner.el" />
<GithubRepository repoName="Phundrak/dotfiles" />
<GithubRepository repoName="Phundrak/conlang.phundrak.com" />
</ListRepositories>
</ClientOnly>
#+end_export
** Most Starred Projects on GitHub
#+begin_export gemini
Unfortunately, this content is not available on Gemini. Im working on it.
#+end_export
#+begin_export html
<ClientOnly>
<ListRepositories sortBy='stars' user='phundrak' :limit='5' />
</ClientOnly>
#+end_export
** Latest Active Repositories on GitHub
#+begin_export gemini
Unfortunately, this content is not available on Gemini. Im working on it.
#+end_export
#+begin_export html
<ClientOnly>
<ListRepositories sortBy='pushed_at' user='phundrak' :limit='5' />
</ClientOnly>
#+end_export
#+include: other-links

View File

@@ -1,84 +0,0 @@
#+setupfile: ../headers
#+language: en
* Resume
** Profesionnal Experiences
*** Aubay (2023 - )
- Consultant since September 2023
- Internship from early February to early August 2023
- Web app development
- Usage of Angular, Java Spring Boot, Spring Batch, and PostgreSQL
*** VoxWave (2014 - 2018)
Startup specialized in the creation of French virtual singers using
vocal synthesis. Its best known product is ALYS. [[./vocal-synthesis.md][More here]].
- Co-founder, CTO
- Development of singing synthesis vocal libraries
- Linguistic research
- User support
- Recruit training for vocal libraries development
** Education
*** 2nd Year Masters Degree (University of Paris 8)
Year repeated due to health issues with no long-lasting consequences.
*** 1st Year Masters Degree (University of Paris 8)
*** Computer Science Bachelor Degree (University of Paris 8)
*** English Literature (University of Lyon 2)
Studied for a year and a half until the creation of [[./resume.md#voxwave-2014-2018][VoxWave]].
** Web Programming
*** Front-end
- Professional use of Angular and TypeScript
- Personal use of Vue (including Nuxt)
*** Back-end
- Professional use of Java SpringBoot and SpringBatch
- Professional and personal use of PostgreSQL
- Personal use of Rust ([[https://github.com/poem-web/poem/][poem]], [[https://actix.rs/][actix-web]] and [[https://rocket.rs/][Rocket]])
- Some experience in back-end development with Django (Python)
- Personal use of MySQL and SQLite
** System Programming
- Frequent usage of Rust, C, EmacsLisp, and UNIX shells (bash, fish, Eshell)
- Occasional use of C++, Python, and CommonLisp
** Development Tools
*** IDEs and Text Editors
- Professional use of VS Code, Eclipse, and Git
- Advanced user of Emacs, including its LSP and Git integrations
- Basic knowledge of Vim, CLion, Pycharm, and WebStorm
*** CI/CD and Deploying to the Web
- Experienced with web servers such as Nginx and Caddyserver
- Good knowledge of virtualization and deployment with Docker and
Docker Compose for virtualization, Drone.io, and GitHub Actions for
deployment.
** Operating Systems
- Usage and administration of Linux (Arch Linux, Void Linux, Debian,
Ubuntu, Alpine Linux, NixOS)
- Administration of web servers and storage servers (Arch Linux,
Debian, Raspbian, Alpine Linux, NixOS)
- Basic knowledge with Guix System and Windows XP through 10 (except
Vista)
** Office Applications
- Good knowledge with [[https://orgmode.org/][org-mode]] (main tool), LaTeX
- I know my way around LibreOffice, Microsoft Office, OnlyOffice, and
WPS Office
** Audio
*** Singing Vocal Synthesis
- Development and creation of vocal libraries for VOCALOID3,
Alter/Ego, Chipspeech, and UTAU
- Usage of VOCALOID 2 through 4, Alter/Ego, Chipspeech, UTAU, CeVIO
Creative Studio
*** Audio Engineering
- Music writing and mix software: FL Studio
- Audio repair and cleaning: iZotope RX
- Mastering: T-RackS CS
#+include: other-links

View File

@@ -1,58 +0,0 @@
#+setupfile: ../headers
#+language: en
#+begin_export html
---
title: Vocal Synthesis
---
#+end_export
* My works in vocal synthesis
From 2011 to 2018, I worked as an amateur and professional in singing
vocal synthesis. More precisely, I was creating vocal libraries used
by various libraries, mainly UTAU and Alter/Ego.
** UTAU
I began working with UTAU first by the end of 2011 on an unnamed and
deleted Japanese vocal library. While I didnt maintain it for long,
mainly due to its bad recording quality (I recorded it with a low-end
desktop microphone) and configuration, it did teach me the basics of
creating vocal libraries and working with audio files.
In October 14th, 2012, I released my second vocal library, named
/BSUP01 KEINE Tashi JPN VCV/ which was of higher quality both due to the
recording equipment, manner of recording, and configuration, though
still relatively average for the time. My best work with this series
of vocal libraries was /BSUP01 KEINE Tashi JPN Extend Power/, a
high-energy voice made in similar circumstances but with yet again
better know-how.
This series of vocal libraries also featured /BSUP01 KEINE Tashi TIB
CVVC/ and /BSUP02 Drolma TIB/, the two first Tibetan vocal libraries for
singing vocal synthesis worldwide.
I later created in UTAU /ALYS 001 JPN/, /ALYS 001 FRA/, and /ALYS 002 FRA/
as prototypes, known as /ALYS4UTAU/, for our upcoming product while
working at VoxWave.
While all these vocal libraries have been discontinued, vocal
libraries for /BSUP01 KEINE Tashi/ and /ALYS/ are available for download.
Please refer to the following pages:
- BSUP01 KEINE Tashi :: [[file:./keine-tashi.org][BSUP01 KEINE Tashi]]
- ALYS :: [[https://labs.phundrak.com/ALYS/ALYS][ALYS for Alter/Ego download]]
** Alter/Ego
[[https://www.plogue.com/products/alter-ego.html][Alter/Ego]] is a singing vocal synthesis engine made by [[https://www.plogue.com/][Plogue Inc.]].
ALYS was its first commercial vocal library as well as the first
professional singing vocal library available in French.
Due to the architecture and behaviour of Alter/Ego, important changes
had to be done to the recording script for ALYS (later re-used for
LEORA). Including the development of the new recording scripts, the
initial development period for ALYS spanned well over a year, with
some additional eight to nine months for its first major update.
ALYS for Alter/Ego, also known as /ALYS4AE/, is available free of charge
as a module for Alter/Ego
#+include: other-links