> For the complete documentation index, see [llms.txt](https://mariohernandez.gitbook.io/components/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mariohernandez.gitbook.io/components/getting-started/frontend-tooling.md).

# Front-end tooling

In a fast moving industry like ours, it is imperative that we have tools that allow us to build environments (front and back-end), quickly while providing consistency. The same way we have DevOps processes for quickly spinning off a complete Drupal website built with composer, Drush, Drupal Console and more, we need a system that automates the Drupal theme creation process in an effort to provide all the essential tools needed for a modern, best practices, and standards compliant front-end environment.

Here are some of the tooling we'll be using during this training:

* [Mediacurrent's Theme Generator](https://github.com/mediacurrent/theme_generator_8): For building modern, component-ready Drupal 8 themes.
* [Pattern Lab](https://patternlab.io): Design system for a pattern library and living style-guide.
* [NodeJS](https://nodejs.org/en/): A Javascript runtime system used by most modern apps today.
* [NVM](https://github.com/creationix/nvm): Node Version Manager.
* [NPM](https://www.npmjs.com): Node Package Manager to manage node dependencies.
* [Gulp](https://gulpjs.com): Task runner to automate repetitive tasks such as code compile and more.
