DEV Community

Discussion on: Explain the Frontend Webdev Ecosystem to Me

Collapse
 
iamschulz profile image
Daniel Schulz • Edited

ELI5, pure basics:

  • there's HTML, which structures a document
  • there's CSS, which styles a document
  • there's JS, which adds functionality to a document


  • Vue, Angular and React are Javascript frameworks that help you creating web apps more easliy. You don't differentiate between HTML and JS here anymore, so it feels like some kind of magical HTML on steroids.

  • Typescript is a form of Javascript that has your grammar teacher looking over your shoulder


  • npm is a big bucket with all the code snippets that people smarter than you have made. feel free to use them, but only take whats necessary!

  • Sass/Less/PostCSS let you organize your CSS, so you can stay sane in large, complicated projects

  • Babel takes your fancy, modern JS and transforms it into old-time-standard JS, that even your uncle's browser (the one with the blue letter e and five toolbars) can understand.

  • Webpack takes all your code and wraps it up into a ready-to-deploy website.


  • Jest makes sure that your code snippets work fine one by one

  • Cypress makes sure that your code snippets play nice together

  • Lighthouse makes sure that you didn't accidentally write too much code

Collapse
 
jsardev profile image
Jakub Sarnowski

Lighthouse makes sure that you didn't accidentally write too much code

I think that more often you need to write more code to improve your app performance, thus improving the Lighthouse score.

Collapse
 
iamschulz profile image
Daniel Schulz • Edited

You do when writing on top of other code that already hurt your a11y and perf scores.
Build from scratch with semantic HTML, WAI-ARIA and progressive enhancement in mind and you'll be fine.
The tools we work with right now, like node packages and frameworks for everything just don't encourage that style of working. In all our tooling confusion, some people forget that websites are performant and accessible by default.

Thread Thread
 
jsardev profile image
Jakub Sarnowski • Edited

You do when writing on top of other code that already hurt your a11y and perf scores.

Agreed! I was actually thinking about this specific scenario. My bad, I didn't describe my argument properly :)