Starbase

screenshot of Starbase
scss

Production-ready static website boilerplate featuring Webpack 5, TypeScript, PostCSS & Tailwind CSS.

Overview

starbase is a production-ready website boilerplate built with webpack 5, Babel 7, and Sass. It allows developers to quickly get started with some of the most powerful front-end tools available in 2022, including Node.js, webpack 5, webpack-dev-server, Babel 7 with ESLint and Prettier, and Sass with stylelint. The main goal of starbase is to be small in scope, making it easy to extend and customize, or to be used as a learning tool for developers who want to become familiar with webpack 5, Sass, and modern JavaScript.

Features

  • Node.js, webpack 5 & webpack-dev-server: Allows for streamlined and convenient development by serving the project at http://localhost:8080.
  • Babel 7 w/ ESLint & Prettier: Provides JavaScript (ES6) linting and code formatting to ensure consistent code throughout the project.
  • Sass w/ stylelint: Enables Sass linting for maintaining code quality in stylesheets.
  • JS & Sass Linting: Uses ESLint for JavaScript linting and stylelint for Sass linting with industry-standardized plugins.
  • Prettier Formatting: Enforces code formatting rules to simplify code consistency.
  • Linting & Formatting Pre-Commit Hook: Runs ESLint, stylelint, and Prettier as pre-commit hooks to ensure only clean code is in version control.
  • HTML Webpack Plugin: Handles assets linked from within HTML templates, such as images and embedded videos, and includes generated .js and .css files.
  • Asset Hashing (Cache Busting): Generates asset hashes as a cache-busting mechanism to ensure proper caching of assets.
scss
SCSS

SCSS is a preprocessor scripting language that extends the capabilities of CSS by adding features such as variables, nesting, and mixins. It allows developers to write more efficient and maintainable CSS code, and helps to streamline the development process by reducing repetition and increasing reusability.

eslint
Eslint

ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.

Stylelint

Stylelint is a modern linter for CSS that helps you avoid errors and enforce consistent styling conventions. It provides rules for detecting errors and warnings, and can be configured to match your specific project's requirements.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.

webpack
Webpack

Webpack is a popular open-source module bundler for JavaScript applications that bundles and optimizes the code and its dependencies for production-ready deployment. It can also be used to transform other types of assets such as CSS, images, and fonts.