31
How I've built my frameworkless portfolio website: introduction (part 1/3)
Hello, folks!
Before we dive into the main topic, let me quickly introduce myself as it is my very first post! π
I'm a 22 years old undergraduate computer scientist from Brazil and I'm looking for a job opportunity as a front-end developer. Very quick, huh?
I'm a 22 years old undergraduate computer scientist from Brazil and I'm looking for a job opportunity as a front-end developer. Very quick, huh?
Still about me, but regarding my programming studies, I had started learning web development at the start of the chaotic year of 2020. After 6-7 months of studying HTML/CSS and coding mainly JavaScript I've realized how important is to learn deeply these fundamentals technologies. I recently had this feeling again given that I've just concluded an intensive two-week Bootcamp around HTML and CSS. And due to this bootcamp, I was able to launch my portfolio website and I'm really amazed by the result!
That being said, my main goal with this post series is to prove that anyone can also build a portfolio page using just HTML/CS/JS, or, in other words, the front-end frameworkless stack.
In this introductory post, we're going to cover these topics:
So, that is a natural and necessary question. How we can define the term frameworkless? In my opinion, frameworkless in front-end development is developing web interfaces using just vanilla HTML, CSS, and JavaScript. No frameworks and libraries. Simple as that. Well, not exactly!
For example, if I build a web app using HTML, JavaScript, and a CSS framework like Bootstrap, Tailwind CSS or Bulma would still be frameworkless? That case is unclear for me, and actually, I don't have enough expertise to answer that. But my shot is that it should be frameworkless which is kind of contradictory. The reason is that CSS frameworks don't deliver a whole new way of front-end development, unlike front-end JavaScript frameworks.
Speaking of which, one thing that is very clear to me is that using React, Vue or Angular would be the opposite of frameworkless. These front-end frameworks/libraries change drastically the way you think and develop, for good or for bad. You're meant to write JavaScript code all the time and that is completely different than developing with pure HTML, CSS, and JS.
In this topic, I want to show you why we're picking HTML/CSS/JS over front-end frameworks to build the portfolio page.
First of all, we need to think about the scope of our project. A portfolio page isn't a web application. It's normally supposed to be a static informational webpage. The main plan of the portfolio page is to spread information about the owner's skills and work. And that's it. We don't need backend stuff like a web API and authentication and authorization rules unless you want to. Just a simple website containing the most important person's info will do the work.
At this point, hopefully, you realize why we're taking the frameworkless side and agree with me on that. But I have one more reason: the importance to go deep in learning HTML/CSS/JS. Understanding that is the first step to become a qualified front-end developer. Just check out the following tweet from @Shpigford:
Hiring a frontend engineer who's really great at HTML + CSS is surprisingly difficult.
20:39 PM - 17 Jun 2021
As you can see, HTML/CSS (and I'll extend to JavaScript too) are required skills for web developers, and knowing them makes a total difference to your career especially in front-end development. If you miss studying and practicing with these technologies, you're taking the wrong way IMO.
Advantages:
package.json
, tsconfig.json
(if you choose TypeScript) and eslintrc
is a boring task and it might be a lot of information especially if you're a beginner. On the other side, HTML/CSS/JS requires almost no project configuration at all. Maybe you just want to add a code formatter like Prettier and/or an editorconfig and you're ready to focus on the code!Disadvantages:
That's it! Hopefully, I've didn't forgot to say something neither said something wrong. If so, tell me in the discussion below, I'd appreciate to hear you.
To sum up,
In the next part, we'll make a revision of the contents of HTML, CSS, and JS in order to finally build the so-awaited portfolio page!
Cover image found here.
31