FrancesCoronel / personal-website-v3

My virtual lair - v3.0. 🏠
https://www.fvcproductions.com
MIT License
9 stars 9 forks source link

Complete Front End Checklist #22

Closed FrancesCoronel closed 5 years ago

FrancesCoronel commented 6 years ago

Go through each of the points for checklist and verify everything works.

https://github.com/thedaviddias/Front-End-Checklist

FrancesCoronel commented 6 years ago

Actually almost done

FrancesCoronel commented 5 years ago

Head

Notes: You can find a list of everything that could be found in the <head> of an HTML document.

Meta tag

<!doctype html> <!-- HTML5 -->

The next 2 meta tags (Charset and Viewport) need to come first in the head.

<!-- Set character encoding for the document -->
<meta charset="utf-8">
<!-- Viewport for responsive web design -->
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover">
<!-- Document Title -->
<title>Page Title less than 55 characters</title>
<!-- Meta Description -->
<meta name="description" content="Description of the page less than 150 characters">
<!-- Standard favicon -->
<link rel="icon" type="image/x-icon" href="https://example.com/favicon.ico">
<!-- Recommended favicon format -->
<link rel="icon" type="image/png" href="https://example.com/favicon.png">
<!-- Apple Touch Icon (at least 200x200px) -->
<link rel="apple-touch-icon" href="/custom-icon.png">

<!-- To run web application in full-screen -->
<meta name="apple-mobile-web-app-capable" content="yes">

<!-- Status Bar Style (see Supported Meta Tags below for available values) -->
<!-- Has no effect unless you have the previous meta tag -->
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<!-- Microsoft Tiles -->
<meta name="msapplication-config" content="browserconfig.xml" />

Minimum required xml markup for the browserconfig.xml file is as follows:

<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
   <msapplication>
     <tile>
        <square70x70logo src="small.png"/>
        <square150x150logo src="medium.png"/>
        <wide310x150logo src="wide.png"/>
        <square310x310logo src="large.png"/>
     </tile>
   </msapplication>
</browserconfig>
<!-- Helps prevent duplicate content issues -->
<link rel="canonical" href="http://example.com/2017/09/a-new-article-to-read.html">

HTML tags

<html lang="en">
<html dir="rtl">
<link rel="alternate" href="https://es.example.com/" hreflang="es">

Social meta

Facebook OG and Twitter Cards are, for any website, highly recommended. The other social media tags can be considered if you target a particular presence on those and want to ensure the display.

Notes: Using og:image:width and og:image:height will specify the image dimensions to the crawler so that it can render the image immediately without having to asynchronously download and process it.

<meta property="og:type" content="website">
<meta property="og:url" content="https://example.com/page.html">
<meta property="og:title" content="Content Title">
<meta property="og:image" content="https://example.com/image.jpg">
<meta property="og:description" content="Description Here">
<meta property="og:site_name" content="Site Name">
<meta property="og:locale" content="en_US">
<!-- Next tags are optional but recommended -->
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta name="twitter:card" content="summary">
<meta name="twitter:site" content="@site_account">
<meta name="twitter:creator" content="@individual_account">
<meta name="twitter:url" content="https://example.com/page.html">
<meta name="twitter:title" content="Content Title">
<meta name="twitter:description" content="Content description less than 200 characters">
<meta name="twitter:image" content="https://example.com/image.jpg">

⬆ back to top


HTML

Best practices

HTML testing

⬆ back to top


Webfonts

Notes: Using webfonts may cause Flash Of Unstyled Text/Flash Of Invisible Text - consider having fallback fonts and/or utilizing webfont loaders to control behavior.

⬆ back to top


CSS

Notes: Take a look at CSS guidelines and Sass Guidelines followed by most Front-End developers. If you have a doubt about CSS properties, you can visit CSS Reference. There is also a short Code Guide for consistency.

<div id="js-slider" class="my-slider">
<!-- Or -->
<div id="id-used-by-cms" class="js-slider my-slider">

Performance

CSS testing

Pixel Perfect - Chrome Extension

⬆ back to top


Images

Notes: For a complete understanding of image optimization, check the free ebook Essential Image Optimization from Addy Osmani.

Best practices

  • 🛠 Imagemin
  • 🛠 Use ImageOptim to optimise your images for free.
  • 🛠 Use Kraken.io awesome alternative for both png and jpg optimization. Up to 1mb per files on free plan.
  • 🛠 TinyPNG losslessly optimise png, apng (animated png) and jpg images. Free and paid version available.
  • 🛠 ZorroSVG jpg-like compression for transparent images using svg masking.
  • 🛠 SVGO a Nodejs-based tool for optimizing SVG vector graphics files.
  • 🛠 SVGOMG a web-based GUI version of SVGO for optimising your svgs online.

⬆ back to top


JavaScript

Best practices

<noscript>
  You need to enable JavaScript to run this app.
</noscript>

JavaScript testing

⬆ back to top


Security

Scan and check your web site

Best practices

⬆ back to top


Performance

Best practices

Preparing upcoming requests

<link rel="dns-prefetch" href="https://example.com">
<link rel="preconnect" href="https://example.com">
<link rel="prefetch" href="image.png">
<link rel="preload" href="app.js">

Performance testing

⬆ back to top


Accessibility

Notes: You can watch the playlist A11ycasts with Rob Dodson 📹

Best practices

Headings

Semantics

Form

Accessibility testing

⬆ back to top


SEO

<!-- Example: Pagination link tags for page 2 of a paginated list -->
<link rel="prev" href="https://example.com/?page=1">
<link rel="next" href="https://example.com/?page=3">