Download the PHP package survos/maker-bundle without Composer
On this page you can find all versions of the php package survos/maker-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package maker-bundle
Survos Maker Bundle
Some alternatives to the Symfony maker commands.
survos:make:controller
The Symfony make:controller command is very limited. It creates a file and template, but doesn't give the option to set the route or method name, just app_app and index.html.twig.
The survos:make:controller command allows creating a Controller class and individual controller methods.
Sigh. Most of this is outdated and needs to be cleaned up. Sorry.
Special note about survos:make:bundle
Creating a bundle only works within survos. In fact, it probably shouldn't even be in the maker-bundle because of this restriction, although in theory it should work anyway.
from the survos/survos repository, run
nette generator bug
This bundle has a dependency of Symfony's Maker Bundle, so install that first.
bin/console make:entity -a Entity
bin/console survos:make:crud Entity
will create
@TODO:
- Extend from Umbrella
- Add DataTableBundle (ux component)
- Add #[RouteParameter] to Entity Properties.
- Make ParamConverter listen via Attributes
- Add LandingBundle (make:landing)
- Symfony 5.4 or 6
Survos Admin Bundle
A moderately-opinionated bundle that provides a quick way to get up and running with Symfony.
In particular, it sets up and uses the following:
- AdminLTE4 (Bootstrap 5)
- Knp Menu for sidebar and top nagivation
- webpack encore
- optional jQuery (for js-tree and datatables)
Assumptions
While the following can be disabled, by default the bundle assumes you want the following
- Authentication
- A user and an admin role
- Users
- An API (for Vue, DataTables)
- Bootstrap 5, icons
- Deployable on Heroku
Process
Go to ... and fill out the form with what you want. Run the script to create the Symfony shell.
javascript require('adminkit/static/js/app'); require('../css/app.scss'); scss @import "~adminkit/static/css/app.css"; javascript require('@popperjs/core'); require('bootstrap'); require('Hinclude/hinclude'); require('./css/app.scss');
scss @import "~bootstrap/dist/css/bootstrap.min.css"; @import "../../public/bundles/survosbase/volt-dist/css/volt.css"; bash rm -f LICENSE && rm -f README.md && mv .git .. && symfony new --full . --no-git --version=5.4 && mv ../.git . && git checkout . composer config extra.symfony.allow-contrib true composer req webapp && yarn install && yarn encore dev bash heroku create $REPO heroku addons:create heroku-postgresql:hobby-dev echo "DATABASE_URL=$(heroku config:get DATABASE_URL)" > .env.heroku.local
Without heroku, use sqlite (or setup MySQL)
echo "DATABASE_URL=sqlite:///%kernel.project_dir%/var/data.db" > .env.local bash bin/console make:user User --is-entity --identity-property-name=email --with-password -n
sed -i "s|public function getEmail| public function getUsername() { return \$this->getEmail(); }\n\n public function getEmail|" src/Entity/User.php
sed -i "s|# MAILER_DSN|MAILER_DSN|" .env
echo "1,AppAuthenticator,SecurityController,/logout," | sed "s/,/\n/g" | bin/console make:security sed -i "s|// For example.*;|return new RedirectResponse(\$this->urlGenerator->generate('app_homepage'));|" src/Security/AppAuthenticator.php sed -i "s|throw new \Exception('TODO\: provide a valid redirect inside '.FILE);||" src/Security/AppAuthenticator.php
bash composer config minimum-stability dev composer config prefer-stable true
composer config repositories.knp_markdown '{"type": "vcs", "url": "[email protected]:tacman/KnpMarkdownBundle.git"}' composer req knplabs/knp-markdown-bundle:dev-symfony6
composer config repositories.survos_base_bundle '{"type": "vcs", "url": "[email protected]:survos/BaseBundle.git"}' composer config repositories.ux-datatable '{"type": "vcs", "url": "[email protected]:tacman/ux-datatable.git"}' composer req tacman/ux-datatable
composer require umbrella2/adminbundle php bin/console make:admin:home
composer config repositories.cs_fixer '{"type": "vcs", "url": "[email protected]:tacman/PHP-CS-Fixer.git"}' composer config repositories.survos_workflow '{"type": "vcs", "url": "[email protected]:survos/workflow-bundle.git"}' composer config repositories.tabler '{"type": "vcs", "url": "[email protected]:survos/TablerBundle.git"}' composer req survos/base-bundle:"^2.0.3" composer req survos/tabler-bundle:dev-tac
composer require symfony/webpack-encore-bundle yarn install yarn add sass-loader@^11.0.0 sass --dev yarn add https://github.com/survos/adminkit.git
echo '@import "~bootstrap/dist/css/bootstrap.min.css";' > assets/styles/app.scss
echo '@import "../../public/bundles/survosbase/volt-dist/css/volt.css";' >>assets/styles/app.scss
FIRST, initialize SurvosBase, which creates app.scss. Then fix webpack.
sed -i "s|//.enableSassLoader()|.enableSassLoader()|" webpack.config.js sed -i "s|import './styles/app.css';|import './styles/app.scss';|" assets/js/app.js
yarn install
yarn add "@symfony/webpack-encore@^1.0.0" yarn add "@symfony/stimulus-bridge@^2.0.0" yarn add bootstrap@next
yarn add datatables.net-bs5 datatables.net-buttons-bs5 datatables.net-scroller datatables.net-scroller-bs5 datatables.net-select-bs5 datatables.net-searchpanes datatables.net-searchpanes-bs5 datatables.net-colreorder datatables.net-colreorder-bs5
yaml
config/packages/admin_lte.yaml
routes:
adminlte_welcome: app_homepage
adminlte_login: app_login
adminlte_profile: app_profile
yaml
config/routes/survos_base.yaml
survos_base: {path: /, controller: 'Survos\BootstrapBundle\Controller\BaseController::base'}
app_homepage: {path: /, controller: 'Survos\BootstrapBundle\Controller\LandingController::base'}
app_logo: {path: /logo, controller: 'Survos\BootstrapBundle\Controller\BaseController::logo'} app_profile: {path: /profile, controller: 'Survos\BootstrapBundle\Controller\BaseController::profile'}
profile: {path: /profile, controller: 'Survos\BootstrapBundle\Controller\LandingController::profile'}
logout: {path: /logout, controller: 'Survos\BootstrapBundle\Controller\LandingController::logout'}
required if app_profile is used, since you can change the password from the profile
app_change_password: {path: /change-password, controller: 'Survos\BootstrapBundle\Controller\BaseController::changePassword'} yaml
config/routes/api_platform.yaml
api_platform: resource: . type: api_platform prefix: /api options: expose: true yaml
api/config/api_platform/resources.yaml
App\Entity\User: ~ App\Entity\Location: shortName: 'Location' # optional description: 'A place within a building where inventory item is physically located.' # optional attributes: # optional pagination_items_per_page: 30 # optional normalization_context: groups: ['jstree'] denormalization_context: groups: ['jstree'] yaml
config/packages/api_platform.yaml
api_platform: mapping: paths:
- '%kernel.project_dir%/src/Entity'
- '%kernel.project_dir%/config/api_platform' # yaml or xml directory configuration]
patch_formats:
json: ['application/merge-patch+json']
swagger:
versions: [3]
yaml
config/serializer/serialization.yaml
App\Entity\User: attributes: id: groups: ['Default'] email: groups: ['Default']
App\Entity\Song: attributes: title: groups: ['Default']
### Customizing the bundle
### Deploy to heroku
heroku create $projectName
heroku buildpacks:add heroku/php
heroku buildpacks:add heroku/nodejs
echo "web: vendor/bin/heroku-php-nginx -C heroku-nginx.conf -F fpm_custom.conf public/" > Procfile
heroku buildpacks:add heroku/nodejs
heroku buildpacks:add --index 2 heroku/nodejs
composer config --unset repositories.survosbase && composer update
git commit -m "unset survosbase" . && git push heroku master
https://devcenter.heroku.com/articles/deploying-symfony4
bin/console survos:setup-heroku
## alternatives
https://github.com/xriley/portal-theme-bs5
All versions of maker-bundle with dependencies
nette/php-generator Version ^3.5||^4.1
roave/better-reflection Version ^6.0
sebastian/diff Version ^4.0||^5.0||^6.0.1
symfony/config Version ^6.4 || ^7.1
symfony/console Version ^6.4 || ^7.1
symfony/options-resolver Version ^6.4 || ^7.1
symfony/security-http Version ^6.4 || ^7.1
symfony/string Version ^6.4 || ^7.1
twig/twig Version ^3.4
zenstruck/console-extra Version ^1.4