Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 85d0dc1

Browse files
committedNov 28, 2018
Init symfony/skeleton application with and packages
0 parents  commit 85d0dc1

33 files changed

+4353
-0
lines changed
 

‎.env

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# This file defines all environment variables that the application needs.
2+
# DO NOT DEFINE PRODUCTION SECRETS IN THIS FILE.
3+
# Use ".env.local" for local overrides during development.
4+
# Use real environment variables when deploying to production.
5+
# https://symfony.com/doc/current/best_practices/configuration.html#infrastructure-related-configuration
6+
7+
###> symfony/framework-bundle ###
8+
APP_ENV=dev
9+
APP_SECRET=d28750a79bbdda939b77d930e53a3ae2
10+
#TRUSTED_PROXIES=127.0.0.1,127.0.0.2
11+
#TRUSTED_HOSTS='^localhost|example\.com$'
12+
###< symfony/framework-bundle ###
13+
14+
###> doctrine/doctrine-bundle ###
15+
# Format described at http://docs.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/configuration.html#connecting-using-a-url
16+
# For an SQLite database, use: "sqlite:///%kernel.project_dir%/var/data.db"
17+
# Configure your db driver and server_version in config/packages/doctrine.yaml
18+
DATABASE_URL=mysql://db_user:db_password@127.0.0.1:3306/db_name
19+
###< doctrine/doctrine-bundle ###

‎.gitignore

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
2+
###> symfony/framework-bundle ###
3+
/.env.local
4+
/.env.*.local
5+
/public/bundles/
6+
/var/
7+
/vendor/
8+
###< symfony/framework-bundle ###

‎bin/console

+40
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
#!/usr/bin/env php
2+
<?php
3+
4+
use App\Kernel;
5+
use Symfony\Bundle\FrameworkBundle\Console\Application;
6+
use Symfony\Component\Console\Input\ArgvInput;
7+
use Symfony\Component\Debug\Debug;
8+
9+
set_time_limit(0);
10+
11+
require dirname(__DIR__).'/vendor/autoload.php';
12+
13+
if (!class_exists(Application::class)) {
14+
throw new RuntimeException('You need to add "symfony/framework-bundle" as a Composer dependency.');
15+
}
16+
17+
$input = new ArgvInput();
18+
if (null !== $_ENV['APP_ENV'] = $input->getParameterOption(['--env', '-e'], null, true)) {
19+
putenv('APP_ENV='.$_ENV['APP_ENV']);
20+
// force loading .env files when --env is defined
21+
$_SERVER['APP_ENV'] = null;
22+
}
23+
24+
if ($input->hasParameterOption('--no-debug', true)) {
25+
putenv('APP_DEBUG='.$_SERVER['APP_DEBUG'] = $_ENV['APP_DEBUG'] = '0');
26+
}
27+
28+
require dirname(__DIR__).'/config/bootstrap.php';
29+
30+
if ($_SERVER['APP_DEBUG']) {
31+
umask(0000);
32+
33+
if (class_exists(Debug::class)) {
34+
Debug::enable();
35+
}
36+
}
37+
38+
$kernel = new Kernel($_SERVER['APP_ENV'], (bool) $_SERVER['APP_DEBUG']);
39+
$application = new Application($kernel);
40+
$application->run($input);

‎composer.json

+63
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
{
2+
"type": "project",
3+
"license": "proprietary",
4+
"require": {
5+
"php": "^7.1.3",
6+
"ext-ctype": "*",
7+
"ext-iconv": "*",
8+
"easycorp/easyadmin-bundle": "^1.17",
9+
"symfony/console": "4.1.*",
10+
"symfony/flex": "^1.1",
11+
"symfony/framework-bundle": "4.1.*",
12+
"symfony/twig-bundle": "4.1.*",
13+
"symfony/yaml": "4.1.*"
14+
},
15+
"require-dev": {
16+
"symfony/dotenv": "4.1.*"
17+
},
18+
"config": {
19+
"preferred-install": {
20+
"*": "dist"
21+
},
22+
"sort-packages": true
23+
},
24+
"autoload": {
25+
"psr-4": {
26+
"App\\": "src/"
27+
}
28+
},
29+
"autoload-dev": {
30+
"psr-4": {
31+
"App\\Tests\\": "tests/"
32+
}
33+
},
34+
"replace": {
35+
"paragonie/random_compat": "2.*",
36+
"symfony/polyfill-ctype": "*",
37+
"symfony/polyfill-iconv": "*",
38+
"symfony/polyfill-php71": "*",
39+
"symfony/polyfill-php70": "*",
40+
"symfony/polyfill-php56": "*"
41+
},
42+
"scripts": {
43+
"auto-scripts": {
44+
"cache:clear": "symfony-cmd",
45+
"assets:install %PUBLIC_DIR%": "symfony-cmd"
46+
},
47+
"post-install-cmd": [
48+
"@auto-scripts"
49+
],
50+
"post-update-cmd": [
51+
"@auto-scripts"
52+
]
53+
},
54+
"conflict": {
55+
"symfony/symfony": "*"
56+
},
57+
"extra": {
58+
"symfony": {
59+
"allow-contrib": false,
60+
"require": "4.1.*"
61+
}
62+
}
63+
}

‎composer.lock

+3,627
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎config/bootstrap.php

+51
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
<?php
2+
3+
use Symfony\Component\Dotenv\Dotenv;
4+
5+
require dirname(__DIR__).'/vendor/autoload.php';
6+
7+
if (!array_key_exists('APP_ENV', $_SERVER)) {
8+
$_SERVER['APP_ENV'] = $_ENV['APP_ENV'] ?? null;
9+
}
10+
11+
if ('prod' !== $_SERVER['APP_ENV']) {
12+
if (!class_exists(Dotenv::class)) {
13+
throw new RuntimeException('The "APP_ENV" environment variable is not set to "prod". Please run "composer require symfony/dotenv" to load the ".env" files configuring the application.');
14+
}
15+
16+
$path = dirname(__DIR__).'/.env';
17+
$dotenv = new Dotenv();
18+
19+
if (method_exists($dotenv, 'loadEnv')) {
20+
$dotenv->loadEnv($path);
21+
} else {
22+
// fallback code in case your Dotenv component is not 4.2 or higher (when loadEnv() was added)
23+
24+
if (file_exists($path) || !file_exists($p = "$path.dist")) {
25+
$dotenv->load($path);
26+
} else {
27+
$dotenv->load($p);
28+
}
29+
30+
if (null === $env = $_SERVER['APP_ENV'] ?? $_ENV['APP_ENV'] ?? null) {
31+
$dotenv->populate(array('APP_ENV' => $env = 'dev'));
32+
}
33+
34+
if ('test' !== $env && file_exists($p = "$path.local")) {
35+
$dotenv->load($p);
36+
$env = $_SERVER['APP_ENV'] ?? $_ENV['APP_ENV'] ?? $env;
37+
}
38+
39+
if (file_exists($p = "$path.$env")) {
40+
$dotenv->load($p);
41+
}
42+
43+
if (file_exists($p = "$path.$env.local")) {
44+
$dotenv->load($p);
45+
}
46+
}
47+
}
48+
49+
$_SERVER['APP_ENV'] = $_ENV['APP_ENV'] = $_SERVER['APP_ENV'] ?: $_ENV['APP_ENV'] ?: 'dev';
50+
$_SERVER['APP_DEBUG'] = $_SERVER['APP_DEBUG'] ?? $_ENV['APP_DEBUG'] ?? 'prod' !== $_SERVER['APP_ENV'];
51+
$_SERVER['APP_DEBUG'] = $_ENV['APP_DEBUG'] = (int) $_SERVER['APP_DEBUG'] || filter_var($_SERVER['APP_DEBUG'], FILTER_VALIDATE_BOOLEAN) ? '1' : '0';

‎config/bundles.php

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
<?php
2+
3+
return [
4+
Symfony\Bundle\FrameworkBundle\FrameworkBundle::class => ['all' => true],
5+
Symfony\Bundle\TwigBundle\TwigBundle::class => ['all' => true],
6+
Symfony\Bundle\SecurityBundle\SecurityBundle::class => ['all' => true],
7+
Doctrine\Bundle\DoctrineCacheBundle\DoctrineCacheBundle::class => ['all' => true],
8+
Doctrine\Bundle\DoctrineBundle\DoctrineBundle::class => ['all' => true],
9+
EasyCorp\Bundle\EasyAdminBundle\EasyAdminBundle::class => ['all' => true],
10+
];

‎config/packages/dev/routing.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
framework:
2+
router:
3+
strict_requirements: true

‎config/packages/doctrine.yaml

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
parameters:
2+
# Adds a fallback DATABASE_URL if the env var is not set.
3+
# This allows you to run cache:warmup even if your
4+
# environment variables are not available yet.
5+
# You should not need to change this value.
6+
env(DATABASE_URL): ''
7+
8+
doctrine:
9+
dbal:
10+
# configure these for your database server
11+
driver: 'pdo_mysql'
12+
server_version: '5.7'
13+
charset: utf8mb4
14+
default_table_options:
15+
charset: utf8mb4
16+
collate: utf8mb4_unicode_ci
17+
18+
url: '%env(resolve:DATABASE_URL)%'
19+
orm:
20+
auto_generate_proxy_classes: true
21+
naming_strategy: doctrine.orm.naming_strategy.underscore
22+
auto_mapping: true
23+
mappings:
24+
App:
25+
is_bundle: false
26+
type: annotation
27+
dir: '%kernel.project_dir%/src/Entity'
28+
prefix: 'App\Entity'
29+
alias: App

‎config/packages/easy_admin.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#easy_admin:
2+
# entities:
3+
# # List the entity class name you want to manage
4+
# - App\Entity\Product
5+
# - App\Entity\Category
6+
# - App\Entity\User

‎config/packages/framework.yaml

+30
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
framework:
2+
secret: '%env(APP_SECRET)%'
3+
#default_locale: en
4+
#csrf_protection: true
5+
#http_method_override: true
6+
7+
# Enables session support. Note that the session will ONLY be started if you read or write from it.
8+
# Remove or comment this section to explicitly disable session support.
9+
session:
10+
handler_id: ~
11+
12+
#esi: true
13+
#fragments: true
14+
php_errors:
15+
log: true
16+
17+
cache:
18+
# Put the unique name of your app here: the prefix seed
19+
# is used to compute stable namespaces for cache keys.
20+
#prefix_seed: your_vendor_name/app_name
21+
22+
# The app cache caches to the filesystem by default.
23+
# Other options include:
24+
25+
# Redis
26+
#app: cache.adapter.redis
27+
#default_redis_provider: redis://localhost
28+
29+
# APCu (not recommended with heavy random-write workloads as memory fragmentation can cause perf issues)
30+
#app: cache.adapter.apcu

‎config/packages/prod/doctrine.yaml

+32
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
doctrine:
2+
orm:
3+
auto_generate_proxy_classes: false
4+
metadata_cache_driver:
5+
type: service
6+
id: doctrine.system_cache_provider
7+
query_cache_driver:
8+
type: service
9+
id: doctrine.system_cache_provider
10+
result_cache_driver:
11+
type: service
12+
id: doctrine.result_cache_provider
13+
14+
services:
15+
doctrine.result_cache_provider:
16+
class: Symfony\Component\Cache\DoctrineProvider
17+
public: false
18+
arguments:
19+
- '@doctrine.result_cache_pool'
20+
doctrine.system_cache_provider:
21+
class: Symfony\Component\Cache\DoctrineProvider
22+
public: false
23+
arguments:
24+
- '@doctrine.system_cache_pool'
25+
26+
framework:
27+
cache:
28+
pools:
29+
doctrine.result_cache_pool:
30+
adapter: cache.app
31+
doctrine.system_cache_pool:
32+
adapter: cache.system

‎config/packages/routing.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
framework:
2+
router:
3+
strict_requirements: ~

‎config/packages/security.yaml

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
security:
2+
# https://symfony.com/doc/current/security.html#where-do-users-come-from-user-providers
3+
providers:
4+
in_memory: { memory: ~ }
5+
firewalls:
6+
dev:
7+
pattern: ^/(_(profiler|wdt)|css|images|js)/
8+
security: false
9+
main:
10+
anonymous: true
11+
12+
# activate different ways to authenticate
13+
14+
# http_basic: true
15+
# https://symfony.com/doc/current/security.html#a-configuring-how-your-users-will-authenticate
16+
17+
# form_login: true
18+
# https://symfony.com/doc/current/security/form_login_setup.html
19+
20+
# Easy way to control access for large sections of your site
21+
# Note: Only the *first* access control that matches will be used
22+
access_control:
23+
# - { path: ^/admin, roles: ROLE_ADMIN }
24+
# - { path: ^/profile, roles: ROLE_USER }

‎config/packages/test/framework.yaml

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
framework:
2+
test: true
3+
session:
4+
storage_id: session.storage.mock_file

‎config/packages/test/routing.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
framework:
2+
router:
3+
strict_requirements: true

‎config/packages/translation.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
framework:
2+
default_locale: '%locale%'
3+
translator:
4+
default_path: '%kernel.project_dir%/translations'
5+
fallbacks:
6+
- '%locale%'

‎config/packages/twig.yaml

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
twig:
2+
default_path: '%kernel.project_dir%/templates'
3+
debug: '%kernel.debug%'
4+
strict_variables: '%kernel.debug%'

‎config/packages/twig_extensions.yaml

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
services:
2+
_defaults:
3+
public: false
4+
autowire: true
5+
autoconfigure: true
6+
7+
# Uncomment any lines below to activate that Twig extension
8+
#Twig\Extensions\ArrayExtension: ~
9+
#Twig\Extensions\DateExtension: ~
10+
#Twig\Extensions\IntlExtension: ~
11+
#Twig\Extensions\TextExtension: ~

‎config/packages/validator.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
framework:
2+
validation:
3+
email_validation_mode: html5

‎config/routes.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
#index:
2+
# path: /
3+
# controller: App\Controller\DefaultController::index

‎config/routes/annotations.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
controllers:
2+
resource: ../../src/Controller/
3+
type: annotation

‎config/routes/dev/twig.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
_errors:
2+
resource: '@TwigBundle/Resources/config/routing/errors.xml'
3+
prefix: /_error

‎config/routes/easy_admin.yaml

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
easy_admin_bundle:
2+
resource: '@EasyAdminBundle/Controller/AdminController.php'
3+
prefix: /admin
4+
type: annotation

‎config/services.yaml

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# This file is the entry point to configure your own services.
2+
# Files in the packages/ subdirectory configure your dependencies.
3+
4+
# Put parameters here that don't need to change on each machine where the app is deployed
5+
# https://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration
6+
parameters:
7+
locale: 'en'
8+
9+
services:
10+
# default configuration for services in *this* file
11+
_defaults:
12+
autowire: true # Automatically injects dependencies in your services.
13+
autoconfigure: true # Automatically registers your services as commands, event subscribers, etc.
14+
public: false # Allows optimizing the container by removing unused services; this also means
15+
# fetching services directly from the container via $container->get() won't work.
16+
# The best practice is to be explicit about your dependencies anyway.
17+
18+
# makes classes in src/ available to be used as services
19+
# this creates a service per class whose id is the fully-qualified class name
20+
App\:
21+
resource: '../src/*'
22+
exclude: '../src/{DependencyInjection,Entity,Migrations,Tests,Kernel.php}'
23+
24+
# controllers are imported separately to make sure services can be injected
25+
# as action arguments even if you don't extend any base controller class
26+
App\Controller\:
27+
resource: '../src/Controller'
28+
tags: ['controller.service_arguments']
29+
30+
# add more service definitions when explicit configuration is needed
31+
# please note that last definitions always *replace* previous ones

‎public/index.php

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
<?php
2+
3+
use App\Kernel;
4+
use Symfony\Component\Debug\Debug;
5+
use Symfony\Component\HttpFoundation\Request;
6+
7+
require dirname(__DIR__).'/config/bootstrap.php';
8+
9+
if ($_SERVER['APP_DEBUG']) {
10+
umask(0000);
11+
12+
Debug::enable();
13+
}
14+
15+
if ($trustedProxies = $_SERVER['TRUSTED_PROXIES'] ?? $_ENV['TRUSTED_PROXIES'] ?? false) {
16+
Request::setTrustedProxies(explode(',', $trustedProxies), Request::HEADER_X_FORWARDED_ALL ^ Request::HEADER_X_FORWARDED_HOST);
17+
}
18+
19+
if ($trustedHosts = $_SERVER['TRUSTED_HOSTS'] ?? $_ENV['TRUSTED_HOSTS'] ?? false) {
20+
Request::setTrustedHosts([$trustedHosts]);
21+
}
22+
23+
$kernel = new Kernel($_SERVER['APP_ENV'], (bool) $_SERVER['APP_DEBUG']);
24+
$request = Request::createFromGlobals();
25+
$response = $kernel->handle($request);
26+
$response->send();
27+
$kernel->terminate($request, $response);

‎src/Controller/.gitignore

Whitespace-only changes.

‎src/Entity/.gitignore

Whitespace-only changes.

‎src/Kernel.php

+61
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
<?php
2+
3+
namespace App;
4+
5+
use Symfony\Bundle\FrameworkBundle\Kernel\MicroKernelTrait;
6+
use Symfony\Component\Config\Loader\LoaderInterface;
7+
use Symfony\Component\Config\Resource\FileResource;
8+
use Symfony\Component\DependencyInjection\ContainerBuilder;
9+
use Symfony\Component\HttpKernel\Kernel as BaseKernel;
10+
use Symfony\Component\Routing\RouteCollectionBuilder;
11+
12+
class Kernel extends BaseKernel
13+
{
14+
use MicroKernelTrait;
15+
16+
const CONFIG_EXTS = '.{php,xml,yaml,yml}';
17+
18+
public function getCacheDir()
19+
{
20+
return $this->getProjectDir().'/var/cache/'.$this->environment;
21+
}
22+
23+
public function getLogDir()
24+
{
25+
return $this->getProjectDir().'/var/log';
26+
}
27+
28+
public function registerBundles()
29+
{
30+
$contents = require $this->getProjectDir().'/config/bundles.php';
31+
foreach ($contents as $class => $envs) {
32+
if ($envs[$this->environment] ?? $envs['all'] ?? false) {
33+
yield new $class();
34+
}
35+
}
36+
}
37+
38+
protected function configureContainer(ContainerBuilder $container, LoaderInterface $loader)
39+
{
40+
$container->addResource(new FileResource($this->getProjectDir().'/config/bundles.php'));
41+
// Feel free to remove the "container.autowiring.strict_mode" parameter
42+
// if you are using symfony/dependency-injection 4.0+ as it's the default behavior
43+
$container->setParameter('container.autowiring.strict_mode', true);
44+
$container->setParameter('container.dumper.inline_class_loader', true);
45+
$confDir = $this->getProjectDir().'/config';
46+
47+
$loader->load($confDir.'/{packages}/*'.self::CONFIG_EXTS, 'glob');
48+
$loader->load($confDir.'/{packages}/'.$this->environment.'/**/*'.self::CONFIG_EXTS, 'glob');
49+
$loader->load($confDir.'/{services}'.self::CONFIG_EXTS, 'glob');
50+
$loader->load($confDir.'/{services}_'.$this->environment.self::CONFIG_EXTS, 'glob');
51+
}
52+
53+
protected function configureRoutes(RouteCollectionBuilder $routes)
54+
{
55+
$confDir = $this->getProjectDir().'/config';
56+
57+
$routes->import($confDir.'/{routes}/*'.self::CONFIG_EXTS, '/', 'glob');
58+
$routes->import($confDir.'/{routes}/'.$this->environment.'/**/*'.self::CONFIG_EXTS, '/', 'glob');
59+
$routes->import($confDir.'/{routes}'.self::CONFIG_EXTS, '/', 'glob');
60+
}
61+
}

‎src/Repository/.gitignore

Whitespace-only changes.

‎symfony.lock

+233
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,233 @@
1+
{
2+
"doctrine/annotations": {
3+
"version": "1.0",
4+
"recipe": {
5+
"repo": "github.com/symfony/recipes",
6+
"branch": "master",
7+
"version": "1.0",
8+
"ref": "cb4152ebcadbe620ea2261da1a1c5a9b8cea7672"
9+
}
10+
},
11+
"doctrine/cache": {
12+
"version": "v1.8.0"
13+
},
14+
"doctrine/collections": {
15+
"version": "v1.5.0"
16+
},
17+
"doctrine/common": {
18+
"version": "v2.10.0"
19+
},
20+
"doctrine/dbal": {
21+
"version": "v2.8.0"
22+
},
23+
"doctrine/doctrine-bundle": {
24+
"version": "1.6",
25+
"recipe": {
26+
"repo": "github.com/symfony/recipes",
27+
"branch": "master",
28+
"version": "1.6",
29+
"ref": "453e89b78ded666f351617baca5ae40d20622351"
30+
}
31+
},
32+
"doctrine/doctrine-cache-bundle": {
33+
"version": "1.3.5"
34+
},
35+
"doctrine/event-manager": {
36+
"version": "v1.0.0"
37+
},
38+
"doctrine/inflector": {
39+
"version": "v1.3.0"
40+
},
41+
"doctrine/instantiator": {
42+
"version": "1.1.0"
43+
},
44+
"doctrine/lexer": {
45+
"version": "v1.0.1"
46+
},
47+
"doctrine/orm": {
48+
"version": "v2.6.3"
49+
},
50+
"doctrine/persistence": {
51+
"version": "v1.1.0"
52+
},
53+
"doctrine/reflection": {
54+
"version": "v1.0.0"
55+
},
56+
"easycorp/easyadmin-bundle": {
57+
"version": "1.17",
58+
"recipe": {
59+
"repo": "github.com/symfony/recipes",
60+
"branch": "master",
61+
"version": "1.17",
62+
"ref": "66070ea553247b0cd5275e21d0fe5399a25f40be"
63+
}
64+
},
65+
"jdorn/sql-formatter": {
66+
"version": "v1.2.17"
67+
},
68+
"pagerfanta/pagerfanta": {
69+
"version": "v2.0.1"
70+
},
71+
"psr/cache": {
72+
"version": "1.0.1"
73+
},
74+
"psr/container": {
75+
"version": "1.0.0"
76+
},
77+
"psr/log": {
78+
"version": "1.1.0"
79+
},
80+
"psr/simple-cache": {
81+
"version": "1.0.1"
82+
},
83+
"symfony/asset": {
84+
"version": "v4.1.8"
85+
},
86+
"symfony/cache": {
87+
"version": "v4.1.8"
88+
},
89+
"symfony/config": {
90+
"version": "v4.1.8"
91+
},
92+
"symfony/console": {
93+
"version": "3.3",
94+
"recipe": {
95+
"repo": "github.com/symfony/recipes",
96+
"branch": "master",
97+
"version": "3.3",
98+
"ref": "f3a28efb32f20b8740fd763651cabd780bce43da"
99+
}
100+
},
101+
"symfony/debug": {
102+
"version": "v4.1.8"
103+
},
104+
"symfony/dependency-injection": {
105+
"version": "v4.1.8"
106+
},
107+
"symfony/doctrine-bridge": {
108+
"version": "v4.1.8"
109+
},
110+
"symfony/dotenv": {
111+
"version": "v4.1.8"
112+
},
113+
"symfony/event-dispatcher": {
114+
"version": "v4.1.8"
115+
},
116+
"symfony/filesystem": {
117+
"version": "v4.1.8"
118+
},
119+
"symfony/finder": {
120+
"version": "v4.1.8"
121+
},
122+
"symfony/flex": {
123+
"version": "1.0",
124+
"recipe": {
125+
"repo": "github.com/symfony/recipes",
126+
"branch": "master",
127+
"version": "1.0",
128+
"ref": "5f8a51c0fad684396f6b6c0fd770e043439cb632"
129+
}
130+
},
131+
"symfony/form": {
132+
"version": "v4.1.8"
133+
},
134+
"symfony/framework-bundle": {
135+
"version": "3.3",
136+
"recipe": {
137+
"repo": "github.com/symfony/recipes",
138+
"branch": "master",
139+
"version": "3.3",
140+
"ref": "fa24f6388ea987b615a2704dc2c9f3a358c8da11"
141+
}
142+
},
143+
"symfony/http-foundation": {
144+
"version": "v4.1.8"
145+
},
146+
"symfony/http-kernel": {
147+
"version": "v4.1.8"
148+
},
149+
"symfony/inflector": {
150+
"version": "v4.1.8"
151+
},
152+
"symfony/intl": {
153+
"version": "v4.1.8"
154+
},
155+
"symfony/options-resolver": {
156+
"version": "v4.1.8"
157+
},
158+
"symfony/polyfill-intl-icu": {
159+
"version": "v1.10.0"
160+
},
161+
"symfony/polyfill-mbstring": {
162+
"version": "v1.10.0"
163+
},
164+
"symfony/property-access": {
165+
"version": "v4.1.8"
166+
},
167+
"symfony/routing": {
168+
"version": "4.0",
169+
"recipe": {
170+
"repo": "github.com/symfony/recipes",
171+
"branch": "master",
172+
"version": "4.0",
173+
"ref": "5f514d9d3b8a8aac3d62ae6a86b18b90ed0c7826"
174+
}
175+
},
176+
"symfony/security": {
177+
"version": "v4.1.8"
178+
},
179+
"symfony/security-bundle": {
180+
"version": "3.3",
181+
"recipe": {
182+
"repo": "github.com/symfony/recipes",
183+
"branch": "master",
184+
"version": "3.3",
185+
"ref": "f8a63faa0d9521526499c0a8f403c9964ecb0527"
186+
}
187+
},
188+
"symfony/translation": {
189+
"version": "3.3",
190+
"recipe": {
191+
"repo": "github.com/symfony/recipes",
192+
"branch": "master",
193+
"version": "3.3",
194+
"ref": "1fb02a6e1c8f3d4232cce485c9afa868d63b115a"
195+
}
196+
},
197+
"symfony/twig-bridge": {
198+
"version": "v4.1.8"
199+
},
200+
"symfony/twig-bundle": {
201+
"version": "3.3",
202+
"recipe": {
203+
"repo": "github.com/symfony/recipes",
204+
"branch": "master",
205+
"version": "3.3",
206+
"ref": "369b5b29dc52b2c190002825ae7ec24ab6f962dd"
207+
}
208+
},
209+
"symfony/validator": {
210+
"version": "4.1",
211+
"recipe": {
212+
"repo": "github.com/symfony/recipes",
213+
"branch": "master",
214+
"version": "4.1",
215+
"ref": "0cdc982334f45d554957a6167e030482795bf9d7"
216+
}
217+
},
218+
"symfony/yaml": {
219+
"version": "v4.1.8"
220+
},
221+
"twig/extensions": {
222+
"version": "1.0",
223+
"recipe": {
224+
"repo": "github.com/symfony/recipes",
225+
"branch": "master",
226+
"version": "1.0",
227+
"ref": "ddb2e0a77773b7fd75d8d649545f174e664500ab"
228+
}
229+
},
230+
"twig/twig": {
231+
"version": "v2.5.0"
232+
}
233+
}

‎templates/base.html.twig

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<meta charset="UTF-8">
5+
<title>{% block title %}Welcome!{% endblock %}</title>
6+
{% block stylesheets %}{% endblock %}
7+
</head>
8+
<body>
9+
{% block body %}{% endblock %}
10+
{% block javascripts %}{% endblock %}
11+
</body>
12+
</html>

‎translations/.gitignore

Whitespace-only changes.

0 commit comments

Comments
 (0)
Please sign in to comment.