generator-sf

Yeoman generator to scaffold Symfony PHP apps with full featured frontend tooling

Usage no npm install needed!

<script type="module">
  import generatorSf from 'https://cdn.skypack.dev/generator-sf';
</script>

README

generator-sf

NPM version Build Status Dependency Status Download Coverage Status

This Yeoman generator scaffolds a symfony app with full featured frontend grunt/gulp tooling. Just scaffold your app and you are ready to go.

Installation

First, install Yeoman and generator-sf using npm (we assume you have pre-installed node.js).

Install dependencies

npm install -g yo grunt gulp

To install generator-sf from npm, run:

npm install -g generator-sf

Then generate your new project:

yo sf

Features

  • Symfony framework
  • Twig templating engine
  • Assetic removed
  • Browsersync dev/prod server with livereload
  • Choose the build tool which fits your needs
  • Choose the CSS preprocessor which fits your needs
  • Choose CSS Framework
  • Choose Javascript module loader
  • File revving
  • Image optimization
  • Critical (Extract & Inline Critical-path CSS)
  • uncss (Automatically strip off unused css)
  • Service Worker
  • Organized Gruntfile with load-grunt-config
  • Preconfigured testing Stack: Karma, Mocha & Chai
  • Phpunit

Things to come

  • Feel free to add feature requests ;)

Environments

The browsersync server uses it's own symfony environment to prevent asset loading conflicts with the environment loaded via apache2.

Directory structure

The directory structure is based on the Symfony Best Practices

Dev

  • Assets are located in app/Resources/public
  • Templates can be found in app/Resources/views

Production

  • All production assets are located in the web folder.
  • Run grunt build or gulp build to compile, optimize and rev your assets for production.

Changelog

See CHANGELOG.md

License

MIT

Getting To Know Yeoman

  • Yeoman has a heart of gold.
  • Yeoman is a person with feelings and opinions, but is very easy to work with.
  • Yeoman can be too opinionated at times but is easily convinced not to be.
  • Feel free to learn more about Yeoman.

License

MIT © Ben Zörb