Front-End Web Developer Roadmap

Arwa Shahid
6 min readMar 14, 2022

Front-end development involves using HTML, CSS, and JavaScript to build a client-side application. The client-side of an online application is the visual part of a web application and also what a user interacts with when an application is opened: colors, fonts, buttons, navigations, animations, etc.

A Front-End Developer is responsible for building and implementing the interface of a website or web application. They build client-side applications using web technologies such as HTML, CSS, and JavaScript.

In 2022 however, Front-End development has gone beyond HTML, CSS, and JavaScript. There are a lot of web technologies you need to learn to be able to excel as a front-end developer this year.

Web Fundamentals

Learn HTML

HTML stands for Hypertext Markup Language. It is the markup language for building web pages, it is also the building block of the web. HTML is easy to learn and comprehend. With just HTML, you can build a basic website.

  • HTML Headings- these are what you use to display titles or subtitles on your web pages. It consists of <h1> which is the most important heading and which is the least important.
  • HTML Forms — HTML forms are used to collect data inputs such as username, email, contact details.
  • HTML Elements — HTML elements define how web browsers will format and display content. Content in the <i> tag will be displayed in italics, content in the <strong> tag will be displayed in bold.
  • HTML Attributes — HTML attributes provide additional information about the HTML elements. For example, the tag is used to embed an image in a web page, the src attribute will be used to define the path where the image is located.

Learn CSS

CSS stands for Cascading Style Sheets. It is the technology to learn after HTML. It is used for styling our HTML. For example, we can use CSS to space our content, colors, fonts, etc.

The basics of CSS you need to learn are:

  • CSS box model — The CSS box model consists of the margin, border, padding, and content. The image below shows us the CSS box model.
  • CSS positioning — CSS positioning helps you manipulate an element to different locations such as fixed, relative, absolute, static, sticky, etc. The image below shows us CSS positions.
  • CSS grid- CSS grid is a two-dimensional system with rows and columns. CSS grid makes it easier to structure a web page without having to use floats.
  • CSS Flexbox — Flexbox is a one-dimensional system that allows us to choose between a row or a column as the main layout or structure of a web page. CSS flexbox also makes it more flexible to structure a web page without having to use floats.
  • Responsive design and media queries — Responsive design is the approach that an application should be built or designed with the user in mind irrespective of their environment such as screen size/devices. Responsive design is very important and should be in the mind of every developer when building a web application. Media queries are useful when you want to modify your application to fit a device such as Desktops, tablets, and phones. The image below illustrates how an application is viewed on different devices when built with responsive design.

CSS Preprocessor

  • Sass — Sass stands for Syntactically Awesome Stylesheet. According to the documentation, Sass is a stylesheet language that’s compiled to CSS. It allows you to use variables, nested rules, mixins, functions, and more, all with a fully CSS-compatible syntax. Sass helps keep large stylesheets well-organized and makes it easy to share design within and across projects.
  • Less — Less stands for Leaner Style Sheets is a backward-compatible language extension for CSS.

CSS Frameworks

  • Tailwind CSS — According to the official documentation, Tailwind CSS is a utility-first CSS framework for rapidly building custom user interfaces. Tailwind allows us to use inline styling and achieve incredible results without using a single line of CSS.
  • Bootstrap — Bootstrap helps us build fast and responsive websites.
  • Materialize: The Colorful CSS Framework— Materialize is a responsive UI framework for websites and Android apps. It provides many ready-to-use components, classes, and starter templates.
  • Foundation — Foundation is a responsive front-end framework that makes it easier to design responsive websites, apps on any device.

Learn JavaScript

JavaScript is one of the most popular programming languages in the world. It is the language of the web. As a front-end developer, it is required you learn JavaScript. JavaScript enables us to create dynamic content. When you create your HTML structure and your style with your CSS, JavaScript makes the website dynamic and alive.

Some of the basics of JavaScript you need to learn are:

  • JavaScript Syntax — Every programming language has its own rules on how a program is written. The syntax of JavaScript is the set of rules that determine how a program is written by a programmer and interpreted by a browser.
  • DOM Manipulation — DOM stands for document objects model. According to W3C (World Wide Web Consortium) standard, the DOM is a platform and language-neutral interface that allows programs and scripts to dynamically access and update the content, structure, and style of a document. The DOM is a representation of how the content of a web page is structured. JavaScript manipulates the DOM by updating the content, the style, removing elements, adding new elements.
  • Learn Fetch API — API stands for Application Programming Interface. An API is an intermediary that allows two applications to communicate with each other. As a front-end developer, when building a web application, chances are that you will have to work with external data such as Third-party APIs, fetch API allows browsers to make HTTP requests to a web server.

JavaScript Frameworks/Libraries

After learning the basics of JavaScript, you can pick any JavaScript framework of your choice. But I highly recommend you pick Vuejs as it is more beginner-friendly.

  • React — According to the documentation, a JavaScript library for building user interfaces React lets you create reusable components.
  • Vue — Vuejs is an approachable, versatile, performant javascript framework that helps you create a maintainable and testable codebase. Vuejs is also beginner-friendly.
  • Angular — According to the documentation, Angular is an application design framework and development platform for creating efficient and sophisticated single-page apps.

Package managers

A package manager is a tool that allows users to install, update, configure, and manage software packages and product dependencies. Examples of package managers are NPM and Yarn. It is recommended you learn the basics of one of them.

Accessibility

Web accessibility is the process of making your website usable by all people. Web accessibility is an essential part of front-end development. It is important that as a front-end developer, you need to build web pages with accessibility in mind. When you build with accessibility in mind, there is no restriction to anyone. People with disabilities, slow networks, visual impairments, hearing impairments can have access to all the information on the website without obstructions or difficulties. application. It includes everything you need to build a rich user interface that works on any device.

Testing Your Apps

Testing involves scanning a piece of software for a potential bug during development. During testing, the tester performs an action on a piece of software while expecting a specific result. Possible things to test in an application includes security, functionality, and ease of use amongst others. Testing does not guarantee that a piece of software will function properly under any circumstance but it, however, provides us with information on how it could behave under certain conditions. An example of a test tool to try out in your application is a Jest. Jest is a framework used to create and run JavaScript tests for applications built with React, Nodejs, Angular, TypeScript, Vue, and more. It has grown in popularity over the years and has become one of the most used test tools.

Website Deployment

With the knowledge gotten from HTML, CSS, and JavaScript you can build simple web pages using those technologies. Most time after building, it remains in our computer or Github repo and there is no way people can see what you built. But with web deployments, you can host your simple application on the internet. It is super easy to do. You can use tools like GitHub pages, or Netlify.

Thank you for taking the time to read those inspiring opinions!

Let’s Get in Touch! Follow me on

--

--