Preconfigured Webpack 5 build process with separate development and production environment configurations
frontend-webpack-boilerplate — HTML Starter Template
By WeAreAthlon
A Webpack 5-based front-end project starter template with built-in SASS/PostCSS, Babel, browser syncing, code linting, and multi-environment build configurations, plus demo HTML, JS, image, font, and video assets.
Explore the design
Compare the page layouts and mobile experience. Open any screenshot for a closer look.
Actual screenshot captured by the server browser.
All pages & views 2
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
Supports SASS/PostCSS compilation and automatically adds browser prefixes via autoprefixer based on browserslist
Integrates Babel transpilation, allowing use of newer JavaScript syntax and transformation according to target environments
Built-in webpack-dev-server that automatically refreshes the page on file changes
Provides stylelint and ESLint (airbnb style) code linting scripts
Production builds support code minification, inlining images and fonts by threshold, and imagemin image optimization
Template Details
This template targets static front-end projects that use HTML as the entry point. It preconfigures Webpack 5, SASS/PostCSS compilation, Babel transpilation, a browser-sync development server, and code linting tools. After installing dependencies, you can write pages and assets in the src/ directory.
During development, three build modes are available: one-time build, watch mode that rebuilds on source file changes, and a development server with automatic refresh. Production builds minify JavaScript and CSS, inline small images and fonts according to configured thresholds, and optimize jpeg, jpg, png, gif, and svg files via imagemin.
The template uses browserslist to control the target browser range; autoprefixer and babel-preset-env handle CSS prefixes and JavaScript syntax transformations accordingly. SASS is checked with stylelint, and JavaScript uses an ESLint configuration following the airbnb style. Rule files can be modified as needed.
The repository includes demo project files covering build examples for JavaScript, SASS/PostCSS, HTML templates, images, videos, and fonts. It also integrates GitHub Actions to run checks and deploy the production build to GitHub Pages when pushing to the master branch.
Before use, note: the template requires Node version 22.15.0 or higher; file watching does not work under NFS (Windows) and VirtualBox virtual machines, so polling configuration is required; the README mentions deployment to cloud services such as Firebase, but related configuration and costs must be handled by the user.
Is it right for your project?
Use Cases
- Building a static site from scratch with HTML as the entry point, using SASS and JavaScript
- Wanting to use Webpack to uniformly handle static assets such as CSS, JavaScript, images, and fonts
- Needing a development server with automatic refresh and source file watching to improve local development efficiency
- Needing automatic CSS prefix generation and JavaScript transpilation results based on browser compatibility range
- Wanting to automatically check and deploy to GitHub Pages via GitHub Actions after pushing
Suitable For
- Front-end developers familiar with npm and the command line who need a ready-made Webpack configuration
- Projects primarily consisting of static HTML pages that do not depend on a specific front-end framework
- Small sites or demo projects that need code linting and multi-environment build processes
- Teams that want to reference asset build examples to organize the src directory structure
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
Environment requires Node version >= 22.15.0 and npm installed
- 2
Download the template from Releases, extract it, and run npm ci in the project directory to install dependencies
- 3
Modify metadata such as name, version, author, license, and browserslist in package.json as needed
- 4
The development server, asset inlining thresholds, and src/dist paths can be adjusted in configuration/environment.js
- 5
File watching under NFS (Windows) and VirtualBox virtual machines requires configuring watchOptions.poll for polling
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis entry covers the free version under the MIT license from the public repository; the free scope applies to that version's code and does not imply that external services or third-party assets are free.
Must comply with when using
- Free use, modification, commercial use, and distribution of that version's code are permitted.
- When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
- The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.
Additional costs & items to verify
- Under NFS (Windows) and VirtualBox virtual machine environments, source file watching does not work; you must add the watchOptions.poll polling option in the configuration to properly watch for file changes.
- If you build and deploy sourcemap files in a production environment, you must configure the server to prevent ordinary users from accessing these Source Map files; otherwise, source code will be exposed.
- The GitHub Actions automated deployment process in the README applies only to Project Pages; User and Organization Pages only support the master branch process and require an alternative deployment method.
- Deploying to cloud services such as Heroku, AWS, or Firebase involves external services; related accounts, configuration, and costs must be handled by the user, and the template itself does not provide these services.
- The README mentions Firebase integration; before enabling related dynamic features, you must configure it yourself and check Firebase quotas and charges.
- Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses; they cannot be judged solely by the code's MIT license.
- External services such as domains, hosting, databases, payments, or AI may incur additional charges.
View Original Text Basis
Permission is hereby granted, free of charge
Original License Text
File watching does not work with _NFS_ (_Windows_) and virtual machines under _VirtualBox_.
Original README
You should configure your server to disallow access to the _Source Map_ files for normal users!
Original README
this deployment flow only works for _Project Pages_, as User and Organization pages [only support the master branch flow]
Original README
https://github.com/WeAreAthlon/frontend-webpack-boilerplate/blob/master/LICENSEhttps://github.com/WeAreAthlon/frontend-webpack-boilerplate/blob/master/README.mdThe service can deploy to dozens of cloud providers, including Heroku, AWS, and Firebase.
Original README
Compiled by DeepSeek based on repository license and README ·2026-10-02. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.
Project checks & description sources
Template Information
- Source platforms
- GitHub
- Documentation and maintenance reference score
- More documented · 91 / 100
- Technologies
- HTML
- Website type
- Starter
How this score is calculated
Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.
What to verify for this project
- Repository update recorded
- 2026-09-29
- Screenshot last checked
- 2026-10-02
A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.
The catalog identifies HTML as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.
Use a selection guide →How this description was prepared
AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.
Automatically checked against source and license rules; no manual editorial review.
Inspect the recorded source material
SHA-256: a9146d9a6ee332173e6fd219cffbcd38661b1310fe9e695eb1a0b165787e4f28
2026-10-02T07:16:01.970Z
Source file / repository# Webpack 5 Boilerplate Template




[](https://github.com/WeAreAthlon/frontend-webpack-boilerplate/issues)
[](https://www.npmjs.com/package/@weareathlon/frontend-webpack-boilerplate)
[](https://github.com/WeAreAthlon/frontend-webpack-boilerplate/blob/master/LICENSE)

## Demo
- [Demo page demonstrating building - SASS, JavaScript, Images, Fonts, HTML](https://weareathlon.github.io/frontend-webpack-boilerplate/)
# Table of Contents
- [Webpack 5 Boilerplate Template](#webpack-5-boilerplate-template)
- [Demo](#demo)
- [Features](#features)
- [Requirements](#requirements)
- [Setup](#setup)
- [Installation](#installation)
- [Define Package Metadata](#define-package-metadata)
- [Configuration](#configuration)
- [Environment Configuration](#environment-configuration)
- [Additional webpack configuration](#additional-webpack-configuration)
- [Development](#development)
- [Assets Source](#assets-source)
- [Build Assets](#build-assets)
- [One time build assets for development](#one-time-build-assets-for-development)
- [Build assets and enable source files watcher](#build-assets-and-enable-source-files-watcher)
- [Start a development server - reloading automatically after each file change.](#start-a-development-server---reloading-automatically-after-each-file-change)
- [Production](#production)
- [Build Assets](#build-assets-1)
- [Get Built Assets](#get-built-assets)
- [Run Code Style Linters](#run-code-style-linters)
- [SASS](#sass)
- [JavaScript](#javascript)
- [Additional Tools](#additional-tools)
- [Run Assets Bundle Analyzer](#run-assets-bundle-analyzer)
- [Continuous Integration](#continuous-integration)
## Features
- **0** dependencies
- **Simple setup** instructions
- Start development of a project right away with **simple**, **configured**, **linter enabled**, **browser synced** asset files.
- Configuration per **environment**
- `development` - [`sourcemaps`](https://webpack.js.org/configuration/devtool/), [`browser synced developmentment server`](https://webpack.js.org/configuration/dev-server/)
- `production` - [`minification`](https://webpack.js.org/plugins/terser-webpack-plugin/), [`sourcemaps`](https://webpack.js.org/configuration/devtool/)
- Configurable **browsers versions support**. It uses [`browserslist`](https://github.com/browserslist/browserslist#full-list) - just specify the browsers you want to support in the `package.json` file for `browserslist`:
```js
"browserslist": [
"last 2 versions",
"> 5%"
]
```
- The built CSS / JavaScript files will respect the **configured supported browser versions** using the following tools:
- [`autoprefixer`](https://github.com/postcss/autoprefixer) - automatically adds vendor prefixes to CSS rules
- [`babel-preset-env`](https://babeljs.io/docs/en/babel-preset-env) - smart preset that allows you to use the latest JavaScript without needing to micromanage which syntax transforms (_and optionally, browser polyfills_) are needed by your target environment(s).
- Demo project files to be used as a reference and **example demo** building of:
- _JavaScript_
- _SASS / PostCSS_
- _HTML_ templates
- _Images_ (_CSS backgrounds and image tags_)
- _Videos_
- _Fonts_
- Support for **assets optimization** for production environment with ability to configure:
- **Code Minification** of _JavaScript_ and _CSS_ processed files.
- **Optimize Assets Loading** - inline and embed **images** / **fonts** files having file size below a _configurable_ threshold value.
- **Images Optimisation** - optimize `jpeg`, `jpg`, `png`, `gif`, `svg` filesize and loading type via [`imagemin`](https://github.com/imagemin/imagemin). Plugin and Loader for webpack to optimize (_compress_) all images using `imagemin`. Do not worry about size of images, now they are always optimized/compressed.
- Support for **source code syntax style and formatting linters** that analyze source code to flag any programming errors, bugs, stylistic errors or suspicious constructs:
- **SASS/PostCSS syntax cheker** - you can change or add additional rules in `.sasslintrc` file. Configuration options can be found on [`stylelint`](https://stylelint.io) documentation.
- **JavaScript syntax checker** - following the `airbnb` style, you can review and configure the rules in `.eslint.config.mjs` file. Configuration options can be found on [`eslint`](https://eslint.org/docs/user-guide/configuring) documentation.
- Latest [Webpack 5](https://github.com/webpack/webpack) - _JavaScript_ module bundler.
- Latest [SASS/PostCSS](https://github.com/sass/sass) compiler based on Dart `sass`.
- Latest [Babel 7](https://github.com/babel/babel) (`@babel/core`) - JavaScript compiler - _Use next generation JavaScript, today._
- Integration with [Github Actions](https://github.com/features/actions)
- [Demo deployment available to GitHub pages](https://weareathlon.github.io/frontend-webpack-boilerplate/)
- Configured and ready to use **Webpack Dev Server** plugin for faster local development - [`webpack-dev-server`](https://webpack.js.org/configuration/dev-server/)
- Integration with [Webpack Bundle Analyzer](https://www.npmjs.com/package/webpack-bundle-analyzer) - _Visualize size of webpack output files with an interactive zoomable treemap._
## Requirements
- `node` : `>=22.15.0`
- `npm`
# Setup
## Installation
1. Choose and download the latest template release from [List of Releases](https://github.com/WeAreAthlon/frontend-webpack-boilerplate/releases).
2. Extract the release archive to a new directory, rename it to your project name and browse the directory.
3. Install all dependencies using `npm` _clean install_ command.
```sh
$ npm ci
```
> More on the clean install npm command can be read here [`npm ci`](https://docs.npmjs.com/cli/ci.html)
> You can still use `npm install` in cases the `npm ci` raises system error due to specific platform incompatibilities.
## Define Package Metadata
- Amend `package.json` file and optionally specify:
- `name` - Name of your project. A name can be optionally prefixed by a scope, e.g. `@myorg/mypackage`.
- `version` - Specify and maintain a version number indicator for your project code.
- `author` - Your organisation or just yourself. You can also specify [`contributors`](https://docs.npmjs.com/files/package.json#people-fields-author-contributors).
- `description` - Short description of your project.
- `keywords` - Put keywords in it. It’s an array of strings.
- `repository` - Specify the place where your code lives.
- `license` - Announce your code license, figure out the license from [Choose an Open Source License](https://choosealicense.com) .
- `browserslist` - Specify the supported browsers versions - you can refer to [full list](https://github.com/browserslist/browserslist#full-list) of availalbe options.
# Configuration
## Environment Configuration
- Edit the [`configuration/environment.js`](configuration/environment.js) if you want to specify:
- **`server`**: configure development server, specify `host`, `port`. Refer to the full development server configuration options for [`webpack-dev-server`](https://webpack.js.org/configuration/dev-server/).
- **`limits`**: configure file size thresholds for assets optimizations.
- Image/Font files size in bytes. Below this value the image file will be served as Data URL (_inline base64_).
- **`paths`**: `src` or `dist` directories names and file system location.
## Additional `webpack` configuration
You can additionally configure `webpack` for specific environment:
- `development` - [`configuration/webpack.dev.config.js`](configuration/webpack.dev.config.js)
- `production` - [`configuration/webpack.prod.config.js`](configuration/webpack.prod.config.js)
- Note that if you prefer to build and deploy [`sourcemap`](https://webpack.js.org/configuration/devtool/#production) files:
> You should configure your server to disallow access to the _Source Map_ files for normal users!
# Development
## Assets Source
- **SASS/PostCSS** files are located under `src/scss/`
- **JavaScript** files with support of latest ECMAScript _ES6 / ECMAScript 2016(ES7)/ etc_ files are located under `src/js/`
- **Image** files are located under `src/images/`
- **Font** files are located under `src/fonts/`
- **HTML** files are located under `src/`
- It will **automatically** build **all HTML files** placed under `src/` directory, no need to manually configure each template anymore!
## Build Assets
### One time build assets for development
```sh
$ npm run build
```
### Build assets and enable source files watcher
```sh
$ npm run watch
```
This command is suitable if you develop with external web server.
> **Note:** File watching does not work with _NFS_ (_Windows_) and virtual machines under _VirtualBox_. Extend the configuration in such cases by:
```js
module.exports = {
//...
watchOptions: {
poll: 1000, // Check for changes every second
},
};
```
### Start a development server - reloading automatically after each file change.
```sh
$ npm run dev
```
# Production
## Build Assets
Optimize assets for production by:
```sh
$ npm run production
```
## Get Built Assets
- _CSS_ files are located under `/dist/css/`
- _JavaScript_ files with support of _ES6 / ECMAScript 2016(ES7)_ files are located under `/dist/js/`
- _Images_ are located under `/dist/images/`
- Images part of the _design_ (_usually referenced in the CSS_) are located under `/dist/images/design/`
- Images part of the _content_ (_usually referenced via `<img>` tags_) are located under `/dist/images/content/`
- _Fonts_ are located under `/dist/fonts/`
- _HTML_ files are located under `/dist/`
# Run Code Style Linters
## SASS
```sh
$ npm run lint:sass
```
## JavaScript
```sh
$ npm run lint:js
```
# Additional Tools
## Run Assets Bundle Analyzer
```sh
$ npm run stats
```
> This will open the visualisaion on the default configuraiton URL `localhost:8888`, you can change this URL or port following the [webpack-bundle-analyzer](https://github.com/webpack-contrib/webpack-bundle-analyzer#options-for-cli) documentation.
## Continuous Integration
This boilerplate template contains integration with [Github Actions](https://github.com/features/actions/). The build system runs all linting scripts and deploys production optimized pages to _GitHub_ pages upon push to the `master` branch. However, note that this deployment flow only works for _Project Pages_, as User and Organization pages [only support the master branch flow](https://help.github.com/articles/user-organization-and-project-pages/).
For more information on how to set up alternative deployment processes, check out the [Github Actions documentation on deployment](https://docs.github.com/en/actions/deployment/about-deployments/deploying-with-github-actions). The service can deploy to dozens of cloud providers, including Heroku, AWS, and Firebase.
Explore similar templates
Compare previews and descriptions within the same stack and category.

startbootstrap-simple-sidebar
A Bootstrap off-canvas sidebar navigation HTML starter template from Start Bootstrap. It provides directly editable HTML and CSS in the dist directory, while the source uses Pug, SCSS, and JavaScript with npm build scripts for live preview and compilation.
HTML · Starter

adminkit
AdminKit is a free, MIT-licensed HTML admin and dashboard template built on Bootstrap 5. The free version includes 15 demo pages, 1 plugin, and 1 color scheme, with hundreds of UI components, forms, tables, charts, and icons.
HTML · Admin dashboard

Landing-Page
A general-purpose landing page HTML template maintained by Tailwind Toolbox, written in pure HTML and loading the complete Tailwind CSS via CDN.
HTML · Corporate Website

light-bootstrap-dashboard
Light Bootstrap Dashboard is a free, MIT-licensed admin dashboard template from Creative Tim, built on Bootstrap with a responsive static HTML structure.
HTML · Admin dashboard

sing-app
Sing App Lite is a free, open-source admin dashboard template from Flatlogic, built with Bootstrap 4.5 and SCSS. It provides a responsive layout, dashboard examples, typography, tables, notifications, basic charts, icons, maps, and a hover sidebar, along with styled Bootstrap components.
HTML · Admin dashboard

startbootstrap-modern-business
Modern Business is a multipurpose Bootstrap full-site HTML template from Start Bootstrap with 17 standalone pages covering home, about, services, portfolio, pricing, blog, FAQ, and contact.
HTML · Starter
