Webpack 4 based boilerplate to jumpstart your static or WordPress project.
Overview:
Ninja is a feature-packed and lightning-fast boilerplate used by Graffino for building modern responsive static and WordPress powered websites. It offers a variety of features and tools to enhance the development process.
Features:
- Modern CSS: powered by SCSS with easy media queries and PostCSS optimization.
- ES6 vanilla JS, VueJS: supports Vanilla JS modules, transpiling via Babel with browserlist support, and Babel polyfills.
- Assets: includes NodeJS assets via package.json, SVG sprites for modern dynamic SVG icons, image assets compression and optimization, lazy loading, and low-resolution placeholders.
- WordPress (PHP) powered: offers Composer integration for WordPress and plugins, support for private packages and .env based configuration, custom OOP base theme with automatic class loading and dependency injection, cache busting support, and regression testing via Cypress and Backstop.
- Toolset: provides an optional dockerized development environment, custom SSL certificate support for .dev domain, one-command WordPress setup and initialization, database migration and dump scripts for WordPress, automatic JavaScript and Composer packages update scripts, automatic deployment scripts, automatic file synchronization scripts for WordPress, automatic package version bumping, and a development server with code injection and hot reload.
Installation:
To install Ninja, follow these steps:
- Clone the Ninja repository.
- Run the command
npm install or yarn install to install the required dependencies. - Configure the environment variables in the
.env file. - Run the command
npm run build or yarn build to build the project. - Start the development server by running the command
npm run dev or yarn dev.
Summary:
Ninja is a powerful boilerplate with a wide range of features and tools for building modern websites. It provides support for modern CSS and JavaScript, as well as WordPress integration. With its comprehensive toolset, developers can streamline the development process and improve efficiency.