9 Feb 2023
11 min read
Front-end development includes the user interface of an application. Everything a user interacts with when a user visits a website such as a login or sign-up page, homepage, contact page falls under the front-end development term.
This article will cover all you need to get started with front-end development in 2023.
The terminal is an interface used to execute text commands, and it gives you access to the underlying operating system. Basic terminal usage is a skill all developers need regardless of their specialization. Command line is very important so I strongly recommend you study more on how to use it. The better you are with the command line, the more efficient you will be as a front-end developer.
Git is a version control system that enables developers to track changes in their project. Git also helps developers collaborate as a team. Git is needed among developers, to ensure that there are no code conflicts between developers.
GitHub is a code hosting platform for software development. GitHub lets teams work together on projects and it is also used for version control. It can be used among teams to collaborate on a project. For example, a team of developers wants to build a web application and everyone is given a task that has to be updated daily while working on the project, in this case, Github helps them build a centralized repository where each team member can make updates or manage the code file or repository.
To get started, sign up for GitHub.
The text editor is where you will write your code. Having the right text editor can improve your productivity.
There are a lot of IDE to pick from, but let’s look at a few:
It is important to understand how the web works before you start learning any technologies. You should learn about things like:
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.
You need to learn the basics of HTML, such as:
<h1>which is the most important heading and
<i>tag will be displayed as italics, content in the
<strong>tag will be displayed as bold.
<header><nav><section><article><footer>, because it clearly describes the element to the browser and developer.
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, colours, fonts, etc.
The basics of CSS you need to learn are:
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.
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 backwards-compatible language extension for CSS.
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.
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.
According to MDN, web performance is all about making websites fast, including making slow processes seem fast. One of the metrics that a good website/web application should meet is fast page rendering.
Web performance refers to how long it takes for an application to be rendered in the browser as well as how responsive it is to user interaction. For a better user experience, it is recommended that developers adopt different web optimization techniques. This includes using a Content Delivery Network (CDN) which is a strategically distributed web server that delivers contents to users based on location. Another option is to use image compressing tools like imageOptim to reduce image sizes without compromising its quality.
Other methods to adopt include:
To get the exact performance data of your web application, you can make use of any of the below-listed tools:
All of the above-listed tools though with different unique features will serve you just right.
Other testing tools and frameworks to try out include:
Congrats, you have come to the end of the front-end development roadmap for 2023! With the knowledge shared here, you can easily build real-time website applications. Good luck!
For more resources like this don't hesitate to sign up to join our community of developers!
👩🏽💻Front-End Engineer ✍🏽Technical Writer 🚀 Co-organiser @vuejsng
See other articles by AMAECHI
Ground Floor, Verse Building, 18 Brunswick Place, London, N1 6DZ
108 E 16th Street, New York, NY 10003
Join over 111,000 others and get access to exclusive content, job opportunities and more!