Writing a portfolio in pure HTML, CSS and JavaScript would be fun, but this would also mean a lot of time spending repeating a lot of things since HTML, CSS and JavaScript do not scale well.
So it would be more interesting to use a JavaScript framework since a portfolio often means no server. But again, there is a JavaScript fatigue to setup a new project with NPM, Webpack, Vite, React, Angular, Vue, ESLint, Jest, ...
With all that in mind I would go the Elm way because:
This is a purely functional language and I prefer the guarantees it brings compared to object-oriented programming
The bundler is built-in
The linter is built-in
The testing library is built-in
The router is built-in
The dependency manager is built-in
The JavaScript framework is built-in (it's a core dependency)
The compiler errors are the greatest of all programming languages
It is easy to go back to any projects months later (thanks to the compiler)
Cons would be:
To learn functional programming
To learn a ML syntax
To accept learning new ways of doing things
Pros would be:
Having fun learning new things in a side project
Possibly getting good habits when going back to work
Having a portfolio that ships with the least amount of errors
You can go back to it 5 months later and add a new feature confidently even though you completely forgotten how you built the dang thing
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Writing a portfolio in pure HTML, CSS and JavaScript would be fun, but this would also mean a lot of time spending repeating a lot of things since HTML, CSS and JavaScript do not scale well.
So it would be more interesting to use a JavaScript framework since a portfolio often means no server. But again, there is a JavaScript fatigue to setup a new project with NPM, Webpack, Vite, React, Angular, Vue, ESLint, Jest, ...
With all that in mind I would go the Elm way because:
Cons would be:
Pros would be: