Skip to content
/ bud Public
forked from roots/bud

⚡️ Lightning fast webpack framework combining the best parts of Laravel Mix and Symfony Encore

License

Notifications You must be signed in to change notification settings

ouun/bud

 
 

Repository files navigation

bud.js

MIT License npm Follow Roots

bud.js

Frontend build tools combining the best parts of Symfony Encore and Laravel Mix


What is bud.js?

bud.js is a web-focused build tool with add-on support for Babel, React, PostCSS, Sass, Typescript, esbuild, ESLint, Prettier, and more.

bud.js is written in TypeScript but fully supports projects written in vanilla JavaScript.

Goals

bud.js wants to be:

  • Reliable, yielding consistent and predictable behaviors regardless of specified options.
  • Fast, leveraging parallel processing, smart caching and an asyncronous events based API to keep build times minimal.
  • Extensible, with a fully featured plugin system to support an ecosystem of packaged modules
  • Simple, to get started and straight forward to maintain

Features

Requirements

  • Node 16+
  • yarn 1.22 or higher
  • npm 8.3 or higher
  • Windows users must run bud.js under the Windows Subsystem for Linux.

Getting started

Check out the Getting Started guide. There are many example implementations available in the /examples directory of this repo.

Modules

Presets

Name Usage Latest
@roots/bud-preset-recommend 📚 Usage npm
@roots/bud-preset-wordpress 📚 Usage npm
@roots/sage 📚 Usage npm

Extensions

Name Usage Latest
@roots/bud-babel 📚 Usage npm
@roots/bud-compress 📚 Usage npm
@roots/bud-criticalcss 📚 Usage npm
@roots/bud-emotion 📚 Usage npm
@roots/bud-entrypoints 📚 Usage npm
@roots/bud-esbuild 📚 Usage npm
@roots/bud-eslint 📚 Usage npm
@roots/bud-imagemin 📚 Usage npm
@roots/bud-mdx 📚 Usage npm
@roots/bud-postcss 📚 Usage npm
@roots/bud-prettier 📚 Usage npm
@roots/bud-purgecss 📚 Usage npm
@roots/bud-react 📚 Usage npm
@roots/bud-sass 📚 Usage npm
@roots/bud-solid 📚 Usage npm
@roots/bud-stylelint 📚 Usage npm
@roots/bud-swc 📚 Usage npm
@roots/bud-tailwindcss 📚 Usage npm
@roots/bud-bud-tailwindcss-theme-json 📚 Usage npm
@roots/bud-terser 📚 Usage npm
@roots/bud-typescript 📚 Usage npm
@roots/bud-vue 📚 Usage npm
@roots/bud-wordpress-dependencies 📚 Usage npm
@roots/bud-wordpress-externals 📚 Usage npm
@roots/bud-wordpress-manifests 📚 Usage npm
@roots/bud-wordpress-theme-json 📚 Usage npm

Have you produced a bud.js extension and want to share it here? Please, create an issue sharing information about your project.

For more information on authoring your own extension consult the documentation and the source code of the extensions in this repository.

Packages

Also included in the bud monorepo are packages which are not specific to bud.js but are used by the framework. These packages could conceivably be used in other projects.

Name Latest
@roots/blade-loader npm
@roots/browserslist-config npm
@roots/container npm
@roots/critical-css-webpack-plugin npm
@roots/dependencies npm
@roots/entrypoints-webpack-plugin npm
@roots/eslint-config npm
@roots/filesystem npm
@roots/merged-manifest-webpack-plugin npm
@roots/wordpress-dependencies-webpack-plugin npm
@roots/wordpress-externals-webpack-plugin npm
@roots/wordpress-hmr npm
@roots/wordpress-theme-json-webpack-plugin npm

Contributing

Contributions are welcome from everyone.

We have contribution guidelines to help you get started.

License

bud.js is licensed under MIT.

Community

Keep track of development and community news.

Sponsors

Help support our open-source development efforts by becoming a patron.

KM Digital Carrot WordPress.com Pantheon Worksite Safety

About

⚡️ Lightning fast webpack framework combining the best parts of Laravel Mix and Symfony Encore

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 93.5%
  • JavaScript 3.2%
  • CSS 1.3%
  • Objective-C 1.3%
  • Ruby 0.5%
  • Dockerfile 0.1%
  • Other 0.1%