Hello all. A friend has asked me for a CV/personal portfolio site. I’d like to code it from scratch to apply my new knowledge. But I have some basic questions first.
First of all, should I just keep it minimal and stay on HTML + CSS + JavaScript? The only functionality he wants (at least for now) is a form where people can send him emails, which I’m sure can be done with client-side JavaScript. Or should I do it in Node, which would allow me to use templating and add more functions later if needed? Is there any significant difference, in practical terms, between deploying a front-end site vs. a front-end + back-end one?
In general, do you always work with a backend system, or only when necessary?
I’m realizing I know all these tools but I’m still not sure how to stitch them together, operationally. If you have any resources in that sense I’d be happy to study them.
hey @vlad.proex,
i dont think you would need to do any backend just for a portfolio, unless you just wanted to do it to get some backend practice but you will probably be better off just building a separate site that uses a backend for that,.
As for your email form most hosting sites will handle this for you where you can have the message sent to email, text or other places, i use netlify for my sites.
Here’s link https://docs.netlify.com/forms/setup/#html-forms
1 Like
Thank you! So I guess you just don’t use templating for purely front-end sites? I did a search but couldn’t find any popular solutions. Mind you, the site would only be a few pages, so a few copypasta would not be too bothersome. It just seems like a very comfortable thing to have.
EDIT: Or perhaps I could develop in Node with a templating engine and then just upload the compiled static files on the web? 
i use frameworks like react and vue for my front end sites, that way i can just re use components so iv never used templating, but if thats what you are used to doing and building with node and using template engine is going to be the fasted and easiest way for you, id defo do it that way.
1 Like