Frontend systems build the user interface and interacts with user. A message box, a button that darken when mouse moves over it, two or three column layout… all are powered by frontend systems.
Other than that, there are many sub-categories of frontend development:
Interactive-ness take a great part in user experience. The browser should react to user’s control, input, gestures in a logical way.
This sounds easy but it is not. Hundreds of small factors contributed to the user experience, from font size combination, color, button’s size to page length,. And each of these need to be done carefully.
A user interface is just like a joke. If you need to explain it, it is not that good.
Special effects development
For some special projects, sometimes it is the special effects that carry the storyline.
A matched, carefully crafted special effects can greatly help reader to understand, and kept in their memory for a much longer time.
Frontend systems works very closly with designers. Web designers often found themselves difficult to describe the interactive state in web designs.
For example, a mobile hambuger menu, when click on it, slides the menu from screen right edge. In this example, designers cannot explain the timing needed for the “slide” action. It can be 1 sec or 0.3 Sec. Even more, animation have “easing” state which the animation is not linear, but accelerate/decelerate throughout that 0.3 sec. These can be difficult to tell from designer, and they need to be adjusted afterwards.
Frontend developers often fill the gaps themselves when designers do not specify.
Cross browser checking
Browsers are the canvas for a website. We present out artwork in browsers, but not all browsers are the same.
Making the website looks the same across all browsers is one major role for development.