navigation

Welcome

Welcome to Dev Handbook!

In this hanbook, you will find handy references on certain fields:

This handbook is maintained by Ha Truong.

You can support my work and donate to the project here. Follow me on Github.


Web Development Guide

Basic tools

  • Computer: MacOS, Linux, Windows
  • Text Editor: VSCode
  • Web Browser: Chrome, Firefox
  • Terminal: Bash
  • Design: Canva, Photoshop, Sketch
  • Git & Github
  • Chrome Dev Tools
  • Package manager: NPM or Yarn

Frontend Web development

1. HTML, CSS

  • HTML5
  • CSS Fundamentals
  • CSS Grid & Flexbox
  • CSS Transition
  • Sass (variables, nesting, conditionals)
  • CSS Frameworks (Bootstrap, Tailwind)

2. Responsive Design

  • Viewpoint
  • Media queries
  • Responsive mobile first

3. Vanilla JavaScript

  • Fundamentals
  • Modern JS (ES6)
  • DOM (Document Object Model)
  • JSON
  • Fetch API

4. Web deployment

You should learn how to deploy a website to a web server

  • Domain registration (Namecheap)
  • Static hosting (Netlify, Github Pages)
  • Managed hosting
  • SSL Certificate
  • FTP (File Transfer Protocol)
  • SSH

5. Front-end Framework

You should choose to learn one of these front-end frameworks.

6. Static site generators

Static site generators offer better SEO, file system rooting, data fetching, plugins, graphQl.

Some popular static site generators are:

  • Gatsby (React)
  • Hugo (Go)
  • Gridsome (Vue)

Backend Web Development

1. Server-side language

You need to learn a server-side language to become a fullstack or backend web development. Pick one of the following:

  • PHP
  • Python
  • Node.js
  • Golang

2. Server-side framework

  • PHP: Laravel
  • Python: Django, Flask
  • Node.js: Express

3. Database

I recommend learning SQL and one of the following databases

  • Regional database: MySQL, PostgreSQL
  • NoSQL: MongoDB
  • Cloud database: AWS, Firebase
  • Lightweight: SQLlite

4. Content Management System (CMS)

CMS is great to add content to the web application.

  • Traditional CMS: WordPress, Drupal
  • Headless CMS: Contentful

5. Deployment

  • SSH
  • Web server environment: NGINX, Apache
  • App hosting: Heroku, Linode, AWS
  • Testing
  • Security

Learning resources

These sites are great for learning web development.