DEV Community

arking115
arking115

Posted on

Frontend development roadmap (visual support + resources)

Hi all. I've tried below to compile a list of all the videos/resource I used when learning frontend development ( I learned mostly through videos ), and give them a structure. I really struggled to find high-quality resources and making sense of all this mess so I hope this post will come to your aid if you fell like I did.

I've also used this list to create a roadmap with a tool I've been working on with a few friends to help structure everything in a visually appealing way. This is the Frontend roadmap fully completed. It has additional explanations and it looks more nice than plain text. The chapters are down in the post.

​

Let me know If I can improve it in any way !

Enjoy !!

Essential Prequisites

Recommended prequisites

0. How to learn web development and not lose your mind Web development is notoriously complicated to get started with, having a very complicated ecosystem. You should master the core that being JavaScript, HTML, CSS, and a web framework, and if you continue to be curious, the rest will come along, for now, you should only know about most of the stuff that "they exist". I highly recommend going through all of the videos/resources and code along or at least be focused and understand everything and WHY it is done the way it is.

​

1. Internet and Web

A. How does the internet work?

B. What if the internet never existed - What if the Internet Never Existed

C. Networking - Computer Networking Course

​

2. HTML

A. HTML Basics

B. A Taste of SEO

C. HTML Semantic Elements

​

3. CSS

A. Basics

B. Master Your Layouts

C. Responsive Design

D. CSS Animations

​

4. Javascript

A. Basics- Javascript for Haters- Javascript - Bro Code- Javascript - SuperSimpleDev

B. DOM manipulation with Javascript- DOM Manipulation- Event Listeners

C. What the hell is Node.js?- What the Hell is Node.js?

D. Javascript Is Weird- Javascript Is Weird

E. 100 Javascript Concepts- 100 Javascript Concepts

F. What is ECMAScript?- Javascript and ECMAScript- ES6 Modules

​

5. How to do graphics in JavaScript

A. Canvas- Learn Canvas API- Canvas Particle Animations

B. SVG- SVG in 100 Seconds- Awesome SVG Animation- Beautiful SVG Curves

C. JavaScript + CSS- Animating Text with JavaScript- Professional Scrolling Effect

​

6. JavaScript Runtimes

​

7. Package Managers

​

8. Bundling and Transpilation Tools

​

Project Ideas:

1. The Div Race

  • Create a website with two racing divs: one controlled by an evil wizard (accelerates by 10 pixels per sec) and the other by you (move by 50 pixels per sec).
  • Use buttons to control your div and reset the wizard's div.
  • Goal: Win the race.
  • Tip: Use recursive setTimeout for the wizard's functionality.

2. Playlist Saving App

  • Build a web app for managing playlists with titles and links.
  • Add, remove, edit entries and view them.
  • Entries are clickable links.

3. Sorting Algorithm Visualizer

  • Implement a sorting algorithm visualizer.
  • Choose one from a list of algorithms or implement your own.
  • More Details

​

10. Advanced CSS

A. Tailwind CSS

B. UI Libraries

C. Sass

​

11. Advanced JavaScript

A. Asynchronous JavaScript

B. Event Loop and Concurrency

C. Closures

D. Fetch API

​

12. Testing

Test-Driven Development

​

13. JavaScript Frameworks of Never-Ending Pain

A. Established Frameworks

1. React

2. Angular

3. Vue

B. Hot and New

1. Svelte

2. Solid.js

3. Alpine.js

​

14. Choosing the "Right" Framework

15. Typecheckers

A. TypeScript

B. JSDoc

​

16. State Management

A. What is State

B. What are Side Effects

C. State in React

D. State in Svelte

​

17. Advanced Testing

A. Unit and Integration Testing

B. End-to-End Testing

​

Project Ideas

Easy: Personal Blog

  • Create a personal blog website with navigable multiple blogs.
  • Features: Add new blogs, edit existing ones, add/remove blocks of text and images.

Hard: Path Visualizer Algorithm

  • Visualize pathing algorithms based on Clement's video.
  • Features: Put walls, implement one algorithm, and create animations.
    1. Clement's Video

​

19. Basics of APIs

​

20. Performance

A. Measuring Performance

  1. Lighthouse

  2. Profiling

B. Improving Performance

  1. Optimize Assets

  2. Lazy Loading

  3. Web Workers

  4. Caching

  5. Use a CDN

  6. Research Frameworks and Tools - Make sure to do your research on your current javascript framework and find out if it has a superset (eg React ->Nextjs, Svelte -> Sveltekit, Vue->Nuxtjs). They often come with many improvments and optimizations out of the box. There are also tools like Partytown which can vastly improve performance in some specific cases

  7. Ultimate Tip: Understand and adapt generic optimizations for specific issues in your app. There will be no silver bullet, you will most likely have to apply a combination of all optimizations listed above, so don't take them as the end of possibilities, just use them as building blocks

​

21. Ways to Render a Webpage

A. Static Websites

B. Single Page Applications (SPA)

C. Server Side Rendering (SSR)

D. Server Side Generation (SSG) - explained in videos above

E. Hydration - explained in videos above

​

22. SEO

​

23. Picking a Meta Framework

  • Meta frameworks can offer extra power and features over base frameworks like Svelte, React, etc.

​

24. Deployment and Hosting

  • Most platforms offer easy deployment via GitHub repositories.

A. Vercel

B. Netlify

C. GitHub Pages

​

28. Interesting Libraries

A. D3js

B. Threejs

C. Animejs

D. Chart.js

​

29. What's Next?

  • Build a project, prepare for job interviews, or learn new complementary skills.

​

Topics to Be Added

A. Application Storage

B. Security

C. Progressive Web Apps

D. ESLint and Prettier

E. CI/CD

F. Ruby on Rails

G. Meteorjs

Top comments (0)