UOC Boilerplate is a starter template for the HTML and CSS Tools courses from the Master's Program in Multimedia Applications and the Master's Program in Web App and Website Development at the Universitat Oberta de Catalunya. It aims to provide a basic, modern frontend web development starter pack based on Parcel and including a Sass compiler, an ES6 transpiler, minifiers, an image transformer, and development tools.
This is the 3.x version of UOC Boilerplate, available since the UOC 2020-2 semester.
Node.js >= 18.x
Clone this repository with git clone
, or download a .zip file using the top right green button.
Using the Terminal, navigate to the project folder and run npm install
.
- Uses Parcel v2 module bundler.
- NPM scripts for fast development and production build (see Commands below).
- Sass/SCSS to CSS compilation (
@parcel/transformer-sass
). - Transpilation of modern CSS synthax to support older bvrowsers, based on
browserslist
, including vendor prefixing and synthax lowering, with PostCSS (@parcel/transformer-postcss
). - Minification and optimization of CSS files on production builds with
lightningcss
(@parcel/optimizer-css
).
- Minification and optimization of CSS files on production builds
htmlnano
(@parcel/optimizer-htmlnano
). - PostHTML (
@parcel/transformer-posthtml
) features:- Include partial HTML files with
posthtml-include
.
- Include partial HTML files with
- Transpilation of modern JavaScript synthax to support older browsers, based on
browserslist
, with with Babel (@parcel/transformer-babel
). - Minification and optimization of JS code with SWC (
@parcel/optimizer-swc
).
- Image transformation with
sharp
(@parcel/transformer-image
).
- Development server launch and live reloading on file changes.
- Friendly error reporting.
Content lives inside the src/
folder. If you do not want to change the configuration or are unsure about what you are doing, do not edit files outside the src/
folder.
Always run the following commands during the development stage and for production builds. Please note that it is expected that all projects built with this boilerplate are compiled using npm run build
before they are published.
Command | Description |
---|---|
npm run dev |
Runs a local web server for development and opens the browser to display it. Automatically compiles styles and scripts whenever a file in src/ is changed, and live reloads the browser. This is what must be run on the development stage. |
npm run build |
Compiles and minifies and optimizes the files in the assets folder. The generated compiled and optimized files are located in the dist/ folder. This is what must be run before publishing the project. This is also the build command to be run by external deployment services such as Netlify. The publishable files are then located in the dist/ folder. |
npm run clean |
Deletes the current /dist folder and cache folders. |
npm run stylelint |
Runs CSS linter stylelint. |
npm run test |
Displays a success message if everything is working as expected. |