Skip to content

Commit 46a5f01

Browse files
committed
Initial commit
0 parents  commit 46a5f01

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+10768
-0
lines changed

.env

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
# In all environments, the following files are loaded if they exist,
2+
# the latter taking precedence over the former:
3+
#
4+
# * .env contains default values for the environment variables needed by the app
5+
# * .env.local uncommitted file with local overrides
6+
# * .env.$APP_ENV committed environment-specific defaults
7+
# * .env.$APP_ENV.local uncommitted environment-specific overrides
8+
#
9+
# Real environment variables win over .env files.
10+
#
11+
# DO NOT DEFINE PRODUCTION SECRETS IN THIS FILE NOR IN ANY OTHER COMMITTED FILES.
12+
# https://symfony.com/doc/current/configuration/secrets.html
13+
#
14+
# Run "composer dump-env prod" to compile .env files for production use (requires symfony/flex >=1.2).
15+
# https://symfony.com/doc/current/best_practices.html#use-environment-variables-for-infrastructure-configuration
16+
17+
###> symfony/framework-bundle ###
18+
APP_ENV=dev
19+
APP_SECRET=d46067fdb7e975554c6f30a705324551
20+
###< symfony/framework-bundle ###
21+
22+
###> doctrine/doctrine-bundle ###
23+
# Format described at https://www.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/configuration.html#connecting-using-a-url
24+
# IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml
25+
#
26+
# DATABASE_URL="sqlite:///%kernel.project_dir%/var/data.db"
27+
# DATABASE_URL="mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=8.0.32&charset=utf8mb4"
28+
# DATABASE_URL="mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=10.11.2-MariaDB&charset=utf8mb4"
29+
DATABASE_URL="postgresql://app:!ChangeMe!@127.0.0.1:5432/app?serverVersion=16&charset=utf8"
30+
###< doctrine/doctrine-bundle ###
31+
32+
###> symfony/messenger ###
33+
# Choose one of the transports below
34+
# MESSENGER_TRANSPORT_DSN=amqp://guest:guest@localhost:5672/%2f/messages
35+
# MESSENGER_TRANSPORT_DSN=redis://localhost:6379/messages
36+
MESSENGER_TRANSPORT_DSN=doctrine://default?auto_setup=0
37+
###< symfony/messenger ###
38+
39+
###> symfony/mailer ###
40+
# MAILER_DSN=null://null
41+
###< symfony/mailer ###

.env.test

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# define your env variables for the test env here
2+
KERNEL_CLASS='App\Kernel'
3+
APP_SECRET='$ecretf0rt3st'
4+
SYMFONY_DEPRECATIONS_HELPER=999999
5+
PANTHER_APP_ENV=panther
6+
PANTHER_ERROR_SCREENSHOT_DIR=./var/error-screenshots

.gitignore

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
2+
###> symfony/framework-bundle ###
3+
/.env.local
4+
/.env.local.php
5+
/.env.*.local
6+
/config/secrets/prod/prod.decrypt.private.php
7+
/public/bundles/
8+
/var/
9+
/vendor/
10+
###< symfony/framework-bundle ###
11+
12+
###> phpunit/phpunit ###
13+
/phpunit.xml
14+
.phpunit.result.cache
15+
###< phpunit/phpunit ###
16+
17+
###> symfony/phpunit-bridge ###
18+
.phpunit.result.cache
19+
/phpunit.xml
20+
###< symfony/phpunit-bridge ###
21+
22+
###> symfony/asset-mapper ###
23+
/public/assets/
24+
/assets/vendor/
25+
###< symfony/asset-mapper ###

assets/app.js

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import './bootstrap.js';
2+
/*
3+
* Welcome to your app's main JavaScript file!
4+
*
5+
* This file will be included onto the page via the importmap() Twig function,
6+
* which should already be in your base.html.twig.
7+
*/
8+
import './styles/app.css';
9+
10+
console.log('This log comes from assets/app.js - welcome to AssetMapper! 🎉');

assets/bootstrap.js

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import { startStimulusApp } from '@symfony/stimulus-bundle';
2+
3+
const app = startStimulusApp();
4+
// register any custom, 3rd party controllers here
5+
// app.register('some_controller_name', SomeImportedController);

assets/controllers.json

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{
2+
"controllers": {
3+
"@symfony/ux-turbo": {
4+
"turbo-core": {
5+
"enabled": true,
6+
"fetch": "eager"
7+
},
8+
"mercure-turbo-stream": {
9+
"enabled": false,
10+
"fetch": "eager"
11+
}
12+
}
13+
},
14+
"entrypoints": []
15+
}
+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import { Controller } from '@hotwired/stimulus';
2+
3+
/*
4+
* This is an example Stimulus controller!
5+
*
6+
* Any element with a data-controller="hello" attribute will cause
7+
* this controller to be executed. The name "hello" comes from the filename:
8+
* hello_controller.js -> "hello"
9+
*
10+
* Delete this file or adapt it for your use!
11+
*/
12+
export default class extends Controller {
13+
connect() {
14+
this.element.textContent = 'Hello Stimulus! Edit me in assets/controllers/hello_controller.js';
15+
}
16+
}

assets/styles/app.css

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
body {
2+
background-color: skyblue;
3+
}

bin/console

+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
#!/usr/bin/env php
2+
<?php
3+
4+
use App\Kernel;
5+
use Symfony\Bundle\FrameworkBundle\Console\Application;
6+
7+
if (!is_file(dirname(__DIR__).'/vendor/autoload_runtime.php')) {
8+
throw new LogicException('Symfony Runtime is missing. Try running "composer require symfony/runtime".');
9+
}
10+
11+
require_once dirname(__DIR__).'/vendor/autoload_runtime.php';
12+
13+
return function (array $context) {
14+
$kernel = new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);
15+
16+
return new Application($kernel);
17+
};

bin/phpunit

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
#!/usr/bin/env php
2+
<?php
3+
4+
if (!ini_get('date.timezone')) {
5+
ini_set('date.timezone', 'UTC');
6+
}
7+
8+
if (is_file(dirname(__DIR__).'/vendor/phpunit/phpunit/phpunit')) {
9+
if (PHP_VERSION_ID >= 80000) {
10+
require dirname(__DIR__).'/vendor/phpunit/phpunit/phpunit';
11+
} else {
12+
define('PHPUNIT_COMPOSER_INSTALL', dirname(__DIR__).'/vendor/autoload.php');
13+
require PHPUNIT_COMPOSER_INSTALL;
14+
PHPUnit\TextUI\Command::main();
15+
}
16+
} else {
17+
if (!is_file(dirname(__DIR__).'/vendor/symfony/phpunit-bridge/bin/simple-phpunit.php')) {
18+
echo "Unable to find the `simple-phpunit.php` script in `vendor/symfony/phpunit-bridge/bin/`.\n";
19+
exit(1);
20+
}
21+
22+
require dirname(__DIR__).'/vendor/symfony/phpunit-bridge/bin/simple-phpunit.php';
23+
}

compose.override.yaml

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
version: '3'
2+
3+
services:
4+
###> doctrine/doctrine-bundle ###
5+
database:
6+
ports:
7+
- "5432"
8+
###< doctrine/doctrine-bundle ###
9+
10+
###> symfony/mailer ###
11+
mailer:
12+
image: axllent/mailpit
13+
ports:
14+
- "1025"
15+
- "8025"
16+
environment:
17+
MP_SMTP_AUTH_ACCEPT_ANY: 1
18+
MP_SMTP_AUTH_ALLOW_INSECURE: 1
19+
###< symfony/mailer ###

compose.yaml

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
version: '3'
2+
3+
services:
4+
###> doctrine/doctrine-bundle ###
5+
database:
6+
image: postgres:${POSTGRES_VERSION:-16}-alpine
7+
environment:
8+
POSTGRES_DB: ${POSTGRES_DB:-app}
9+
# You should definitely change the password in production
10+
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-!ChangeMe!}
11+
POSTGRES_USER: ${POSTGRES_USER:-app}
12+
volumes:
13+
- database_data:/var/lib/postgresql/data:rw
14+
# You may use a bind-mounted host directory instead, so that it is harder to accidentally remove the volume and lose all your data!
15+
# - ./docker/db/data:/var/lib/postgresql/data:rw
16+
###< doctrine/doctrine-bundle ###
17+
18+
volumes:
19+
###> doctrine/doctrine-bundle ###
20+
database_data:
21+
###< doctrine/doctrine-bundle ###

composer.json

+110
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
{
2+
"name": "symfony/skeleton",
3+
"type": "project",
4+
"license": "proprietary",
5+
"description": "A minimal Symfony project recommended to create bare bones applications",
6+
"minimum-stability": "stable",
7+
"prefer-stable": true,
8+
"require": {
9+
"php": ">=8.2",
10+
"ext-ctype": "*",
11+
"ext-iconv": "*",
12+
"doctrine/dbal": "^3",
13+
"doctrine/doctrine-bundle": "^2.11",
14+
"doctrine/doctrine-migrations-bundle": "^3.3",
15+
"doctrine/orm": "^3.0",
16+
"phpdocumentor/reflection-docblock": "^5.3",
17+
"phpstan/phpdoc-parser": "^1.25",
18+
"symfony/asset": "7.0.*",
19+
"symfony/asset-mapper": "7.0.*",
20+
"symfony/console": "7.0.*",
21+
"symfony/doctrine-messenger": "7.0.*",
22+
"symfony/dotenv": "7.0.*",
23+
"symfony/expression-language": "7.0.*",
24+
"symfony/flex": "^2",
25+
"symfony/form": "7.0.*",
26+
"symfony/framework-bundle": "7.0.*",
27+
"symfony/http-client": "7.0.*",
28+
"symfony/intl": "7.0.*",
29+
"symfony/mailer": "7.0.*",
30+
"symfony/mime": "7.0.*",
31+
"symfony/monolog-bundle": "^3.0",
32+
"symfony/notifier": "7.0.*",
33+
"symfony/process": "7.0.*",
34+
"symfony/property-access": "7.0.*",
35+
"symfony/property-info": "7.0.*",
36+
"symfony/runtime": "7.0.*",
37+
"symfony/security-bundle": "7.0.*",
38+
"symfony/serializer": "7.0.*",
39+
"symfony/stimulus-bundle": "^2.14",
40+
"symfony/string": "7.0.*",
41+
"symfony/translation": "7.0.*",
42+
"symfony/twig-bundle": "7.0.*",
43+
"symfony/ux-turbo": "^2.14",
44+
"symfony/validator": "7.0.*",
45+
"symfony/web-link": "7.0.*",
46+
"symfony/yaml": "7.0.*",
47+
"twig/extra-bundle": "^2.12|^3.0",
48+
"twig/twig": "^2.12|^3.0"
49+
},
50+
"config": {
51+
"allow-plugins": {
52+
"php-http/discovery": true,
53+
"symfony/flex": true,
54+
"symfony/runtime": true
55+
},
56+
"sort-packages": true
57+
},
58+
"autoload": {
59+
"psr-4": {
60+
"App\\": "src/"
61+
}
62+
},
63+
"autoload-dev": {
64+
"psr-4": {
65+
"App\\Tests\\": "tests/"
66+
}
67+
},
68+
"replace": {
69+
"symfony/polyfill-ctype": "*",
70+
"symfony/polyfill-iconv": "*",
71+
"symfony/polyfill-php72": "*",
72+
"symfony/polyfill-php73": "*",
73+
"symfony/polyfill-php74": "*",
74+
"symfony/polyfill-php80": "*",
75+
"symfony/polyfill-php81": "*",
76+
"symfony/polyfill-php82": "*"
77+
},
78+
"scripts": {
79+
"auto-scripts": {
80+
"cache:clear": "symfony-cmd",
81+
"assets:install %PUBLIC_DIR%": "symfony-cmd",
82+
"importmap:install": "symfony-cmd"
83+
},
84+
"post-install-cmd": [
85+
"@auto-scripts"
86+
],
87+
"post-update-cmd": [
88+
"@auto-scripts"
89+
]
90+
},
91+
"conflict": {
92+
"symfony/symfony": "*"
93+
},
94+
"extra": {
95+
"symfony": {
96+
"allow-contrib": false,
97+
"require": "7.0.*"
98+
}
99+
},
100+
"require-dev": {
101+
"phpunit/phpunit": "^9.5",
102+
"symfony/browser-kit": "7.0.*",
103+
"symfony/css-selector": "7.0.*",
104+
"symfony/debug-bundle": "7.0.*",
105+
"symfony/maker-bundle": "^1.0",
106+
"symfony/phpunit-bridge": "^7.0",
107+
"symfony/stopwatch": "7.0.*",
108+
"symfony/web-profiler-bundle": "7.0.*"
109+
}
110+
}

0 commit comments

Comments
 (0)