Fantastic Front-End Toolbox
This is the list of resources I wish I had when I first started learning web development.
Have a tool or resource that you love and think would be helpful to others? Just send a Pull Request with the details! Please follow the simple Contribution Guidelines. Can't wait to see your suggestions!
Table of Contents
- Learning Roadmap <- Start here!
- Comprehensive Curriculum
- Code Editors
- Deployment + Hosting
- Free Images
- Design Tools
Many of the web developmnent roadmaps available online are arguably overwhelming to the beginner. Honestly, it's frightening to jump into a new thing and see a list of 150 niches to learn that each have their own dozen or so technologies to master.
So this one is intentionally simple.
- Learn HTML - makes the website structured
- Learn CSS - makes a website pretty
- Learn a framework - arguably makes development time shorter and less painful; good options include Vue, Svelte, and React.
Throughout your entire journey, make sure you build things if want to retain your knowledge.
Make your motto ABB - Always Be Building!
If you've decided to commit to self-learning, the following two curriculums are absolutely free, widely-respected, and cover the entire web development stack - from frontend to backend. My personal opinion is that you should choose one of these to avoid tutorial hell/lack of direction, and supplement with other videos/courses/articles.
- freeCodeCamp - a free, open-source platform for learning full-stack development. There are several 300-hour courses on subjects such as front-end development, data structures, and passing code interviews. Each course completion comes with a certificate.
- HTML Crash Course For Absolute Beginners - a hi-level, one-hour overview of HTML by Brad Traversy
- HTML Tutorial: How to Make a Super Simple Website - If you're an absolute beginner in web development, you can learn the basics of HTML here. This video covers setting up an HTML file, and the basic HTML tags and what they mean.
- CSS Crash Course For Absolute Beginners - a hi-level, one-hour overview of CSS by Brad Traversy
- CSS Tutorial For Beginners - YouTube playlist by The Net Ninja
- CSS Grid Playground - a playground/tutorial by Mozilla for learning CSS Grid
- CSS Grid Tutorial - YouTube playlist by The Net Ninja
- Flexbox Froggy - a game where you help Froggy and friends by writing CSS code
- A Complete Guide to Flexbox - This complete guide explains everything about flexbox, focusing on all the different possible properties for the parent element (the flex container) and the child elements (the flex items). It also includes history, demos, patterns, and a browser support chart.
CSS Frameworks + Libraries
- Ant Design
- Bootstrap 4
- Bulma - Bulma is a free, open source CSS framework based on Flexbox.
- Material UI - React components for faster and easier web development.
- Tailwind CSS - Tailwind CSS is a highly customizable, low-level CSS framework that gives you all of the building blocks you need to build bespoke designs without any annoying opinionated styles you have to fight to override.
Most popular/used framework. Gigantic ecosystem of resources.
Full Stack Open 2020 - a free course run by the University of Helsinki with the main focus of building single page applications with ReactJS that use REST APIs built with Node.js.
React JS Crash Course - a 30,000 foot view of React from Brad Traversy; an hour-long YouTube tutorial.
Mastering React by Mosh - a 12-hour-long series of videos where you learn React fundamentals by building a video rental app.
Official React Tutorial - you will learn React by building an interactive tic-tac-toe game.
Has arguably the easiest learning curve for beginners. Large ecosystem of resources and documentation.
Vue JS 2 - The Complete Guide - a Udemy course considered to be one of the most comprehensive Vue.js tutorials available; each concept is broken down into a bite-sized 2-3 minute video and hands-on learning.
Vue JS Crash Course - an hour-long YouTube tutorial by Brad Traversy; you will learn all about Vue.js including what it is, Vue-CLI, components, data, events, directives, etc.
Build an App with Vue.js - a free tutorial by Scotch.io where you'll learn by creating a lightweight event bulletin board.
The new kid on the block in the framework world. Incredibly quick to set up, and fun to write code in.
- Svelte Tutorial for Beginners - a very thorough Svelte YouTube playlist by The Net Ninja
- Create-React-App - if you've ever dabbled with React, you already know what this is
- React Slingshot
- Simple React App
Libraries for testing your code. You want to test your code for bugs so your users will have smooth web experiences.
- Next.js - an extremely popular framework for React
- Nuxt.js - the Vue counterpart to Next
- Gatsby - a React framework that offers a rich ecosystem of plugins and recipes for quick project set-up
- Sapper.js - the Svelte counterpart to Next
- Eleventy - a minimalistic static site generator
- Hugo - a HTML-focused framework with fast build times and a large library of themes
- Devhints - handy syntax & command reference for hundreds of languages and technologies
The program you write your code with.
- Atom - a lightweight, open-source editor featuring Teletype, a tool for real-time collaboration.
- CodeRunner - a editor for MacOS that can run code in 25+ languages out of the box and has impressive code autocompletion capabilities.
- VS Code - a lightweight editor that boasts comprehensive editing and debugging features, along with an extensive library of extensions/integrations.
- CodePen - online
- Repl.it - online
- CodeSandbox - online
Deployment + Hosting
How you publish your website or web app to the world.
- Devicons - a collection of development-related icons, such as icons for programming languages
- Font Awesome - the web's largest collection of icons
- Material UI Icons - a large assortment of icons based on material design
- Octicons - a GitHub-themed icon collection
- Feather Icons - minimalist icon collection
"Wow! That stock photo really drew me into the story of your website/app/business," said no one ever. If you want to capture your audience's attention(and apparently, you have ten seconds to do so), you'll need striking, authentic imagery and illustrations.
- IRA Design - build your own illustrations with free pre-existing gradient images.
- Undraw - a constantly updated collection of beautiful, free SVG images that don't require attribution.
- Hero Patterns - a collection of repeatable SVG background patterns for you to use on your web projects.
- Blush - a large collection of free illustrations from various designers; illustrations range from people all the way to food
Tools for creating wireframes
- Figma - free web tool for creating website and app designs
- Canva - free online tool for creating graphics and other Photoshop-like features
- Dev.to - there are plenty of tech articles, and all for free! Just like Medium, it has tutorials, articles, opinions and more about all kinds of tech stuff.
- Medium - some of the most helpful programming articles/tutorials I've come across have been on the Medium platform! Just search for your specific tool/language and you'll find a treasure trove of programming gold nuggets.
- Scotch.io - fun and practical web development tutorials