Where to start application development

HTML5 Boilerplate (official site, repository) is well known to anyone looking for a place to start developing a web application. According to the developers, it is “The web’s most popular front-end template.” You can’t argue with most popular, but you can argue with modernity (in accordance with the modern realities of web development). And this is not surprising: the project was created about 6 years ago. A lot has changed in the last 6 years. At the same time, as far as I can tell, no fundamental changes have been made to the project (var is used to declare variables, jQuery plugins can be added, etc.), except for site.webmanifest, which is useless without a service worker (and it is better to use .json).

I offer a kind of alternative – a modern starting HTML template (official site, repository).

The project includes the following:

index.html with all necessary meta and link tags (common, microsoft, facebook, twitter, apple (ios), android, structured data: schema.org and json-ld)
examples of using HTML5 tags and CSS3 properties
examples of using CSS and JavaScript modules
offline-first service worker
full-fledged manifest.json
express.js-server with all possible security headers (useful when deploying an application on heroku or a similar service that supports node.js)
file netlify.toml with similar headers and preliminary connection of the resources used by page (it will be useful at deployment of application on netlify)
simple robots.txt
simple sitemap.xml
minimum browserconfig.xml
maximum .gitignore
creative 404 error page
an example of building a project using a webpack
as an experiment - an example of an AMP project (new technology from Google for mobile-first sites)

The main value, of course, are index.html and server.js (netlify.toml). These files have links to official documentation (source of truth). The service worker and manifest make the application progressive. This means that the application can be installed on the phone and computer and behaves like a native. By caching the resources used by the application, its operation is achieved offline (in the absence of a network connection).

The following tools are additionally developed to improve the development experience:

HTML snippet for VSCode
extension for VSCode
command line tool (CLI)