Not sure if you can say that it was over engineered or not but I used the following:
* Frontend framework : Next.js / React (Functional components with React Hooks)
* Rendering : Static Site Generation
* Programming language : Typescript
* CI/CD : Github actions
* Unit test : jest
* Design : SASS / Responsive design
* Data validation : AJV / JSON Schema / Joi
* Infrastructure : Cloudflare pages / Terraform
* Package management: Yarn
* Linting & Formatting : ESLint / StyleLint / Prettier
* Pattern matching : ts-pattern
* CSS framework : react-bootstrap
* Monorepo : nx
* PDF generation : jspdf
* Contact form : web3forms
* Captcha : hCaptcha
I am quite happy with the final output : https://www.remikeat.com
It would pull the data from
https://data.remikeat.com/resume.en.json
https://data.remikeat.com/resume.jp.json
https://data.remikeat.com/resume.fr.json
So I can just update the JSON and the webpage will update itself.
Also as the PDF is generated locally, the PDF also get updated automatically.
And I didn't know there was a JSON standard for resume. Maybe, I should migrate the format I designed to this open standard.
Ultimately, I wanted to add a portfolio section, where I would show some of my projects like
https://stackl.remikeat.com which is a stack language interpreter written in Ocaml and compiled to js with js_of_ocaml.
Not sure if you can say that it was over engineered or not but I used the following:
* Frontend framework : Next.js / React (Functional components with React Hooks)
* Rendering : Static Site Generation
* Programming language : Typescript
* CI/CD : Github actions
* Unit test : jest
* Design : SASS / Responsive design
* Data validation : AJV / JSON Schema / Joi
* Infrastructure : Cloudflare pages / Terraform
* Package management: Yarn
* Linting & Formatting : ESLint / StyleLint / Prettier
* Pattern matching : ts-pattern
* CSS framework : react-bootstrap
* Monorepo : nx
* PDF generation : jspdf
* Contact form : web3forms
* Captcha : hCaptcha
I am quite happy with the final output : https://www.remikeat.com
It would pull the data from
https://data.remikeat.com/resume.en.json
https://data.remikeat.com/resume.jp.json
https://data.remikeat.com/resume.fr.json
So I can just update the JSON and the webpage will update itself.
Also as the PDF is generated locally, the PDF also get updated automatically.
And I didn't know there was a JSON standard for resume. Maybe, I should migrate the format I designed to this open standard.
Ultimately, I wanted to add a portfolio section, where I would show some of my projects like
https://stackl.remikeat.com which is a stack language interpreter written in Ocaml and compiled to js with js_of_ocaml.