src/assets/cv-data.json: Contains some sensitive personal information that should not be checked into VCS (at least not without encryption). Seesrc/assets/cv-data.sample.jsonfor structure.src/assets/cover-letter-(de|en).md: Contains cover German and English cover letter, respectively. Avoid extensive formatting. The following signature front matter is required: name, date, location. Not checked into VCS.src/assets/education.jsonandsrc/assets/work.json: Dual-language files detailing education and work experience. Not checked into VCS. The files use the following structure:where{ "en": [item...], "de": [item...] }enanddedenote translations for English and German, respectively, anditemsatisfiesinterface ExperienceItemPropsfound insrc/components/main/Experience.tsx.src/assets/technologies.json: A (non-exhaustive) list of technologies with details on familiarity, level of interest, a ranking for visual highlighting, and some concise further information. Both the latter and the name can optionally be provided bilingually. Refer tointerface TechnologyDatainsrc/components/side/Technologies.tsxon how to structure the objects in this file.
Lingui is used for i18n of UI components.
To extract text that needs to be translated from source files, use npm run lingui-extract. This will update the messages.po files in src/locales/(de|en)/. Review and translate the messages in either of those files, then compile TypeScript from them using npm run lingui-compile.