├── .gitignore ├── README.md ├── composer.json ├── composer.lock └── src ├── Preset.php ├── PresetServiceProvider.php └── stubs ├── _custom-utilities.scss ├── app.scss ├── bootstrap.js ├── components └── _button.scss ├── gitignore-stub ├── views ├── layouts │ └── base.blade.php └── welcome.blade.php └── webpack.mix.js /.gitignore: -------------------------------------------------------------------------------- 1 | /vendor/ 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # My Laravel Frontend Preset 2 | 3 | ### What you're getting: 4 | - Get rid of Bootstrap / jQuery 5 | - Install Tailwind 6 | - Enhance .gitignore 7 | - Replace stock welcome.blade.php with Tailwind friendly version 8 | 9 | ### Installation: 10 | `composer require calebporzio/laravel-frontend-preset` 11 | 12 | ### Usage: 13 | `php artisan preset calebporzio` 14 | 15 | Once finished, run the following command to properly run the build: 16 | 17 | `npm install && node_modules/.bin/tailwind init && npm run dev` 18 | -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "calebporzio/laravel-frontend-preset", 3 | "description": "My personal frontend preset for new laravel applications.", 4 | "license": "MIT", 5 | "authors": [ 6 | { 7 | "name": "Caleb Porzio", 8 | "email": "calebporzio@gmail.com" 9 | } 10 | ], 11 | "require": { 12 | "laravel/framework": "^5.5|^6.0|^7.0" 13 | }, 14 | "autoload": { 15 | "psr-4": { 16 | "CalebPorzio\\LaravelPreset\\": "src/" 17 | } 18 | }, 19 | "extra": { 20 | "laravel": { 21 | "providers": [ 22 | "CalebPorzio\\LaravelPreset\\PresetServiceProvider" 23 | ] 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /composer.lock: -------------------------------------------------------------------------------- 1 | { 2 | "_readme": [ 3 | "This file locks the dependencies of your project to a known state", 4 | "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", 5 | "This file is @generated automatically" 6 | ], 7 | "content-hash": "990b33d1a47bb6c408a22a8c71a8089e", 8 | "packages": [ 9 | { 10 | "name": "doctrine/inflector", 11 | "version": "v1.3.0", 12 | "source": { 13 | "type": "git", 14 | "url": "https://github.com/doctrine/inflector.git", 15 | "reference": "5527a48b7313d15261292c149e55e26eae771b0a" 16 | }, 17 | "dist": { 18 | "type": "zip", 19 | "url": "https://api.github.com/repos/doctrine/inflector/zipball/5527a48b7313d15261292c149e55e26eae771b0a", 20 | "reference": "5527a48b7313d15261292c149e55e26eae771b0a", 21 | "shasum": "" 22 | }, 23 | "require": { 24 | "php": "^7.1" 25 | }, 26 | "require-dev": { 27 | "phpunit/phpunit": "^6.2" 28 | }, 29 | "type": "library", 30 | "extra": { 31 | "branch-alias": { 32 | "dev-master": "1.3.x-dev" 33 | } 34 | }, 35 | "autoload": { 36 | "psr-4": { 37 | "Doctrine\\Common\\Inflector\\": "lib/Doctrine/Common/Inflector" 38 | } 39 | }, 40 | "notification-url": "https://packagist.org/downloads/", 41 | "license": [ 42 | "MIT" 43 | ], 44 | "authors": [ 45 | { 46 | "name": "Roman Borschel", 47 | "email": "roman@code-factory.org" 48 | }, 49 | { 50 | "name": "Benjamin Eberlei", 51 | "email": "kontakt@beberlei.de" 52 | }, 53 | { 54 | "name": "Guilherme Blanco", 55 | "email": "guilhermeblanco@gmail.com" 56 | }, 57 | { 58 | "name": "Jonathan Wage", 59 | "email": "jonwage@gmail.com" 60 | }, 61 | { 62 | "name": "Johannes Schmitt", 63 | "email": "schmittjoh@gmail.com" 64 | } 65 | ], 66 | "description": "Common String Manipulations with regard to casing and singular/plural rules.", 67 | "homepage": "http://www.doctrine-project.org", 68 | "keywords": [ 69 | "inflection", 70 | "pluralize", 71 | "singularize", 72 | "string" 73 | ], 74 | "time": "2018-01-09T20:05:19+00:00" 75 | }, 76 | { 77 | "name": "doctrine/lexer", 78 | "version": "v1.0.1", 79 | "source": { 80 | "type": "git", 81 | "url": "https://github.com/doctrine/lexer.git", 82 | "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c" 83 | }, 84 | "dist": { 85 | "type": "zip", 86 | "url": "https://api.github.com/repos/doctrine/lexer/zipball/83893c552fd2045dd78aef794c31e694c37c0b8c", 87 | "reference": "83893c552fd2045dd78aef794c31e694c37c0b8c", 88 | "shasum": "" 89 | }, 90 | "require": { 91 | "php": ">=5.3.2" 92 | }, 93 | "type": "library", 94 | "extra": { 95 | "branch-alias": { 96 | "dev-master": "1.0.x-dev" 97 | } 98 | }, 99 | "autoload": { 100 | "psr-0": { 101 | "Doctrine\\Common\\Lexer\\": "lib/" 102 | } 103 | }, 104 | "notification-url": "https://packagist.org/downloads/", 105 | "license": [ 106 | "MIT" 107 | ], 108 | "authors": [ 109 | { 110 | "name": "Roman Borschel", 111 | "email": "roman@code-factory.org" 112 | }, 113 | { 114 | "name": "Guilherme Blanco", 115 | "email": "guilhermeblanco@gmail.com" 116 | }, 117 | { 118 | "name": "Johannes Schmitt", 119 | "email": "schmittjoh@gmail.com" 120 | } 121 | ], 122 | "description": "Base library for a lexer that can be used in Top-Down, Recursive Descent Parsers.", 123 | "homepage": "http://www.doctrine-project.org", 124 | "keywords": [ 125 | "lexer", 126 | "parser" 127 | ], 128 | "time": "2014-09-09T13:34:57+00:00" 129 | }, 130 | { 131 | "name": "dragonmantank/cron-expression", 132 | "version": "v2.1.0", 133 | "source": { 134 | "type": "git", 135 | "url": "https://github.com/dragonmantank/cron-expression.git", 136 | "reference": "3f00985deec8df53d4cc1e5c33619bda1ee309a5" 137 | }, 138 | "dist": { 139 | "type": "zip", 140 | "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/3f00985deec8df53d4cc1e5c33619bda1ee309a5", 141 | "reference": "3f00985deec8df53d4cc1e5c33619bda1ee309a5", 142 | "shasum": "" 143 | }, 144 | "require": { 145 | "php": ">=7.0.0" 146 | }, 147 | "require-dev": { 148 | "phpunit/phpunit": "~6.4" 149 | }, 150 | "type": "library", 151 | "autoload": { 152 | "psr-4": { 153 | "Cron\\": "src/Cron/" 154 | } 155 | }, 156 | "notification-url": "https://packagist.org/downloads/", 157 | "license": [ 158 | "MIT" 159 | ], 160 | "authors": [ 161 | { 162 | "name": "Michael Dowling", 163 | "email": "mtdowling@gmail.com", 164 | "homepage": "https://github.com/mtdowling" 165 | }, 166 | { 167 | "name": "Chris Tankersley", 168 | "email": "chris@ctankersley.com", 169 | "homepage": "https://github.com/dragonmantank" 170 | } 171 | ], 172 | "description": "CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due", 173 | "keywords": [ 174 | "cron", 175 | "schedule" 176 | ], 177 | "time": "2018-04-06T15:51:55+00:00" 178 | }, 179 | { 180 | "name": "egulias/email-validator", 181 | "version": "2.1.4", 182 | "source": { 183 | "type": "git", 184 | "url": "https://github.com/egulias/EmailValidator.git", 185 | "reference": "8790f594151ca6a2010c6218e09d96df67173ad3" 186 | }, 187 | "dist": { 188 | "type": "zip", 189 | "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/8790f594151ca6a2010c6218e09d96df67173ad3", 190 | "reference": "8790f594151ca6a2010c6218e09d96df67173ad3", 191 | "shasum": "" 192 | }, 193 | "require": { 194 | "doctrine/lexer": "^1.0.1", 195 | "php": ">= 5.5" 196 | }, 197 | "require-dev": { 198 | "dominicsayers/isemail": "dev-master", 199 | "phpunit/phpunit": "^4.8.35||^5.7||^6.0", 200 | "satooshi/php-coveralls": "^1.0.1" 201 | }, 202 | "suggest": { 203 | "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" 204 | }, 205 | "type": "library", 206 | "extra": { 207 | "branch-alias": { 208 | "dev-master": "2.0.x-dev" 209 | } 210 | }, 211 | "autoload": { 212 | "psr-4": { 213 | "Egulias\\EmailValidator\\": "EmailValidator" 214 | } 215 | }, 216 | "notification-url": "https://packagist.org/downloads/", 217 | "license": [ 218 | "MIT" 219 | ], 220 | "authors": [ 221 | { 222 | "name": "Eduardo Gulias Davis" 223 | } 224 | ], 225 | "description": "A library for validating emails against several RFCs", 226 | "homepage": "https://github.com/egulias/EmailValidator", 227 | "keywords": [ 228 | "email", 229 | "emailvalidation", 230 | "emailvalidator", 231 | "validation", 232 | "validator" 233 | ], 234 | "time": "2018-04-10T10:11:19+00:00" 235 | }, 236 | { 237 | "name": "erusev/parsedown", 238 | "version": "1.7.1", 239 | "source": { 240 | "type": "git", 241 | "url": "https://github.com/erusev/parsedown.git", 242 | "reference": "92e9c27ba0e74b8b028b111d1b6f956a15c01fc1" 243 | }, 244 | "dist": { 245 | "type": "zip", 246 | "url": "https://api.github.com/repos/erusev/parsedown/zipball/92e9c27ba0e74b8b028b111d1b6f956a15c01fc1", 247 | "reference": "92e9c27ba0e74b8b028b111d1b6f956a15c01fc1", 248 | "shasum": "" 249 | }, 250 | "require": { 251 | "ext-mbstring": "*", 252 | "php": ">=5.3.0" 253 | }, 254 | "require-dev": { 255 | "phpunit/phpunit": "^4.8.35" 256 | }, 257 | "type": "library", 258 | "autoload": { 259 | "psr-0": { 260 | "Parsedown": "" 261 | } 262 | }, 263 | "notification-url": "https://packagist.org/downloads/", 264 | "license": [ 265 | "MIT" 266 | ], 267 | "authors": [ 268 | { 269 | "name": "Emanuil Rusev", 270 | "email": "hello@erusev.com", 271 | "homepage": "http://erusev.com" 272 | } 273 | ], 274 | "description": "Parser for Markdown.", 275 | "homepage": "http://parsedown.org", 276 | "keywords": [ 277 | "markdown", 278 | "parser" 279 | ], 280 | "time": "2018-03-08T01:11:30+00:00" 281 | }, 282 | { 283 | "name": "laravel/framework", 284 | "version": "v5.6.16", 285 | "source": { 286 | "type": "git", 287 | "url": "https://github.com/laravel/framework.git", 288 | "reference": "fcdbc791bc3e113ada38ab0a1147141fb9ec2b16" 289 | }, 290 | "dist": { 291 | "type": "zip", 292 | "url": "https://api.github.com/repos/laravel/framework/zipball/fcdbc791bc3e113ada38ab0a1147141fb9ec2b16", 293 | "reference": "fcdbc791bc3e113ada38ab0a1147141fb9ec2b16", 294 | "shasum": "" 295 | }, 296 | "require": { 297 | "doctrine/inflector": "~1.1", 298 | "dragonmantank/cron-expression": "~2.0", 299 | "erusev/parsedown": "~1.7", 300 | "ext-mbstring": "*", 301 | "ext-openssl": "*", 302 | "league/flysystem": "^1.0.8", 303 | "monolog/monolog": "~1.12", 304 | "nesbot/carbon": "^1.24.1", 305 | "php": "^7.1.3", 306 | "psr/container": "~1.0", 307 | "psr/simple-cache": "^1.0", 308 | "ramsey/uuid": "^3.7", 309 | "swiftmailer/swiftmailer": "~6.0", 310 | "symfony/console": "~4.0", 311 | "symfony/debug": "~4.0", 312 | "symfony/finder": "~4.0", 313 | "symfony/http-foundation": "~4.0", 314 | "symfony/http-kernel": "~4.0", 315 | "symfony/process": "~4.0", 316 | "symfony/routing": "~4.0", 317 | "symfony/var-dumper": "~4.0", 318 | "tijsverkoyen/css-to-inline-styles": "^2.2.1", 319 | "vlucas/phpdotenv": "~2.2" 320 | }, 321 | "conflict": { 322 | "tightenco/collect": "<5.5.33" 323 | }, 324 | "replace": { 325 | "illuminate/auth": "self.version", 326 | "illuminate/broadcasting": "self.version", 327 | "illuminate/bus": "self.version", 328 | "illuminate/cache": "self.version", 329 | "illuminate/config": "self.version", 330 | "illuminate/console": "self.version", 331 | "illuminate/container": "self.version", 332 | "illuminate/contracts": "self.version", 333 | "illuminate/cookie": "self.version", 334 | "illuminate/database": "self.version", 335 | "illuminate/encryption": "self.version", 336 | "illuminate/events": "self.version", 337 | "illuminate/filesystem": "self.version", 338 | "illuminate/hashing": "self.version", 339 | "illuminate/http": "self.version", 340 | "illuminate/log": "self.version", 341 | "illuminate/mail": "self.version", 342 | "illuminate/notifications": "self.version", 343 | "illuminate/pagination": "self.version", 344 | "illuminate/pipeline": "self.version", 345 | "illuminate/queue": "self.version", 346 | "illuminate/redis": "self.version", 347 | "illuminate/routing": "self.version", 348 | "illuminate/session": "self.version", 349 | "illuminate/support": "self.version", 350 | "illuminate/translation": "self.version", 351 | "illuminate/validation": "self.version", 352 | "illuminate/view": "self.version" 353 | }, 354 | "require-dev": { 355 | "aws/aws-sdk-php": "~3.0", 356 | "doctrine/dbal": "~2.6", 357 | "filp/whoops": "^2.1.4", 358 | "league/flysystem-cached-adapter": "~1.0", 359 | "mockery/mockery": "~1.0", 360 | "moontoast/math": "^1.1", 361 | "orchestra/testbench-core": "3.6.*", 362 | "pda/pheanstalk": "~3.0", 363 | "phpunit/phpunit": "~7.0", 364 | "predis/predis": "^1.1.1", 365 | "symfony/css-selector": "~4.0", 366 | "symfony/dom-crawler": "~4.0" 367 | }, 368 | "suggest": { 369 | "aws/aws-sdk-php": "Required to use the SQS queue driver and SES mail driver (~3.0).", 370 | "doctrine/dbal": "Required to rename columns and drop SQLite columns (~2.6).", 371 | "ext-pcntl": "Required to use all features of the queue worker.", 372 | "ext-posix": "Required to use all features of the queue worker.", 373 | "fzaninotto/faker": "Required to use the eloquent factory builder (~1.4).", 374 | "guzzlehttp/guzzle": "Required to use the Mailgun and Mandrill mail drivers and the ping methods on schedules (~6.0).", 375 | "laravel/tinker": "Required to use the tinker console command (~1.0).", 376 | "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (~1.0).", 377 | "league/flysystem-cached-adapter": "Required to use the Flysystem cache (~1.0).", 378 | "league/flysystem-rackspace": "Required to use the Flysystem Rackspace driver (~1.0).", 379 | "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (~1.0).", 380 | "nexmo/client": "Required to use the Nexmo transport (~1.0).", 381 | "pda/pheanstalk": "Required to use the beanstalk queue driver (~3.0).", 382 | "predis/predis": "Required to use the redis cache and queue drivers (~1.0).", 383 | "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (~3.0).", 384 | "symfony/css-selector": "Required to use some of the crawler integration testing tools (~4.0).", 385 | "symfony/dom-crawler": "Required to use most of the crawler integration testing tools (~4.0).", 386 | "symfony/psr-http-message-bridge": "Required to psr7 bridging features (~1.0)." 387 | }, 388 | "type": "library", 389 | "extra": { 390 | "branch-alias": { 391 | "dev-master": "5.6-dev" 392 | } 393 | }, 394 | "autoload": { 395 | "files": [ 396 | "src/Illuminate/Foundation/helpers.php", 397 | "src/Illuminate/Support/helpers.php" 398 | ], 399 | "psr-4": { 400 | "Illuminate\\": "src/Illuminate/" 401 | } 402 | }, 403 | "notification-url": "https://packagist.org/downloads/", 404 | "license": [ 405 | "MIT" 406 | ], 407 | "authors": [ 408 | { 409 | "name": "Taylor Otwell", 410 | "email": "taylor@laravel.com" 411 | } 412 | ], 413 | "description": "The Laravel Framework.", 414 | "homepage": "https://laravel.com", 415 | "keywords": [ 416 | "framework", 417 | "laravel" 418 | ], 419 | "time": "2018-04-09T16:07:04+00:00" 420 | }, 421 | { 422 | "name": "league/flysystem", 423 | "version": "1.0.44", 424 | "source": { 425 | "type": "git", 426 | "url": "https://github.com/thephpleague/flysystem.git", 427 | "reference": "168dbe519737221dc87d17385cde33073881fd02" 428 | }, 429 | "dist": { 430 | "type": "zip", 431 | "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/168dbe519737221dc87d17385cde33073881fd02", 432 | "reference": "168dbe519737221dc87d17385cde33073881fd02", 433 | "shasum": "" 434 | }, 435 | "require": { 436 | "php": ">=5.5.9" 437 | }, 438 | "conflict": { 439 | "league/flysystem-sftp": "<1.0.6" 440 | }, 441 | "require-dev": { 442 | "ext-fileinfo": "*", 443 | "phpspec/phpspec": "^3.4", 444 | "phpunit/phpunit": "^5.7" 445 | }, 446 | "suggest": { 447 | "ext-fileinfo": "Required for MimeType", 448 | "ext-ftp": "Allows you to use FTP server storage", 449 | "ext-openssl": "Allows you to use FTPS server storage", 450 | "league/flysystem-aws-s3-v2": "Allows you to use S3 storage with AWS SDK v2", 451 | "league/flysystem-aws-s3-v3": "Allows you to use S3 storage with AWS SDK v3", 452 | "league/flysystem-azure": "Allows you to use Windows Azure Blob storage", 453 | "league/flysystem-cached-adapter": "Flysystem adapter decorator for metadata caching", 454 | "league/flysystem-eventable-filesystem": "Allows you to use EventableFilesystem", 455 | "league/flysystem-rackspace": "Allows you to use Rackspace Cloud Files", 456 | "league/flysystem-sftp": "Allows you to use SFTP server storage via phpseclib", 457 | "league/flysystem-webdav": "Allows you to use WebDAV storage", 458 | "league/flysystem-ziparchive": "Allows you to use ZipArchive adapter", 459 | "spatie/flysystem-dropbox": "Allows you to use Dropbox storage", 460 | "srmklive/flysystem-dropbox-v2": "Allows you to use Dropbox storage for PHP 5 applications" 461 | }, 462 | "type": "library", 463 | "extra": { 464 | "branch-alias": { 465 | "dev-master": "1.1-dev" 466 | } 467 | }, 468 | "autoload": { 469 | "psr-4": { 470 | "League\\Flysystem\\": "src/" 471 | } 472 | }, 473 | "notification-url": "https://packagist.org/downloads/", 474 | "license": [ 475 | "MIT" 476 | ], 477 | "authors": [ 478 | { 479 | "name": "Frank de Jonge", 480 | "email": "info@frenky.net" 481 | } 482 | ], 483 | "description": "Filesystem abstraction: Many filesystems, one API.", 484 | "keywords": [ 485 | "Cloud Files", 486 | "WebDAV", 487 | "abstraction", 488 | "aws", 489 | "cloud", 490 | "copy.com", 491 | "dropbox", 492 | "file systems", 493 | "files", 494 | "filesystem", 495 | "filesystems", 496 | "ftp", 497 | "rackspace", 498 | "remote", 499 | "s3", 500 | "sftp", 501 | "storage" 502 | ], 503 | "time": "2018-04-06T09:58:14+00:00" 504 | }, 505 | { 506 | "name": "monolog/monolog", 507 | "version": "1.23.0", 508 | "source": { 509 | "type": "git", 510 | "url": "https://github.com/Seldaek/monolog.git", 511 | "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4" 512 | }, 513 | "dist": { 514 | "type": "zip", 515 | "url": "https://api.github.com/repos/Seldaek/monolog/zipball/fd8c787753b3a2ad11bc60c063cff1358a32a3b4", 516 | "reference": "fd8c787753b3a2ad11bc60c063cff1358a32a3b4", 517 | "shasum": "" 518 | }, 519 | "require": { 520 | "php": ">=5.3.0", 521 | "psr/log": "~1.0" 522 | }, 523 | "provide": { 524 | "psr/log-implementation": "1.0.0" 525 | }, 526 | "require-dev": { 527 | "aws/aws-sdk-php": "^2.4.9 || ^3.0", 528 | "doctrine/couchdb": "~1.0@dev", 529 | "graylog2/gelf-php": "~1.0", 530 | "jakub-onderka/php-parallel-lint": "0.9", 531 | "php-amqplib/php-amqplib": "~2.4", 532 | "php-console/php-console": "^3.1.3", 533 | "phpunit/phpunit": "~4.5", 534 | "phpunit/phpunit-mock-objects": "2.3.0", 535 | "ruflin/elastica": ">=0.90 <3.0", 536 | "sentry/sentry": "^0.13", 537 | "swiftmailer/swiftmailer": "^5.3|^6.0" 538 | }, 539 | "suggest": { 540 | "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB", 541 | "doctrine/couchdb": "Allow sending log messages to a CouchDB server", 542 | "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)", 543 | "ext-mongo": "Allow sending log messages to a MongoDB server", 544 | "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", 545 | "mongodb/mongodb": "Allow sending log messages to a MongoDB server via PHP Driver", 546 | "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", 547 | "php-console/php-console": "Allow sending log messages to Google Chrome", 548 | "rollbar/rollbar": "Allow sending log messages to Rollbar", 549 | "ruflin/elastica": "Allow sending log messages to an Elastic Search server", 550 | "sentry/sentry": "Allow sending log messages to a Sentry server" 551 | }, 552 | "type": "library", 553 | "extra": { 554 | "branch-alias": { 555 | "dev-master": "2.0.x-dev" 556 | } 557 | }, 558 | "autoload": { 559 | "psr-4": { 560 | "Monolog\\": "src/Monolog" 561 | } 562 | }, 563 | "notification-url": "https://packagist.org/downloads/", 564 | "license": [ 565 | "MIT" 566 | ], 567 | "authors": [ 568 | { 569 | "name": "Jordi Boggiano", 570 | "email": "j.boggiano@seld.be", 571 | "homepage": "http://seld.be" 572 | } 573 | ], 574 | "description": "Sends your logs to files, sockets, inboxes, databases and various web services", 575 | "homepage": "http://github.com/Seldaek/monolog", 576 | "keywords": [ 577 | "log", 578 | "logging", 579 | "psr-3" 580 | ], 581 | "time": "2017-06-19T01:22:40+00:00" 582 | }, 583 | { 584 | "name": "nesbot/carbon", 585 | "version": "1.25.0", 586 | "source": { 587 | "type": "git", 588 | "url": "https://github.com/briannesbitt/Carbon.git", 589 | "reference": "cbcf13da0b531767e39eb86e9687f5deba9857b4" 590 | }, 591 | "dist": { 592 | "type": "zip", 593 | "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/cbcf13da0b531767e39eb86e9687f5deba9857b4", 594 | "reference": "cbcf13da0b531767e39eb86e9687f5deba9857b4", 595 | "shasum": "" 596 | }, 597 | "require": { 598 | "php": ">=5.3.9", 599 | "symfony/translation": "~2.6 || ~3.0 || ~4.0" 600 | }, 601 | "require-dev": { 602 | "friendsofphp/php-cs-fixer": "~2", 603 | "phpunit/phpunit": "^4.8.35 || ^5.7" 604 | }, 605 | "type": "library", 606 | "extra": { 607 | "branch-alias": { 608 | "dev-master": "1.23-dev" 609 | } 610 | }, 611 | "autoload": { 612 | "psr-4": { 613 | "Carbon\\": "src/Carbon/" 614 | } 615 | }, 616 | "notification-url": "https://packagist.org/downloads/", 617 | "license": [ 618 | "MIT" 619 | ], 620 | "authors": [ 621 | { 622 | "name": "Brian Nesbitt", 623 | "email": "brian@nesbot.com", 624 | "homepage": "http://nesbot.com" 625 | } 626 | ], 627 | "description": "A simple API extension for DateTime.", 628 | "homepage": "http://carbon.nesbot.com", 629 | "keywords": [ 630 | "date", 631 | "datetime", 632 | "time" 633 | ], 634 | "time": "2018-03-19T15:50:49+00:00" 635 | }, 636 | { 637 | "name": "paragonie/random_compat", 638 | "version": "v2.0.12", 639 | "source": { 640 | "type": "git", 641 | "url": "https://github.com/paragonie/random_compat.git", 642 | "reference": "258c89a6b97de7dfaf5b8c7607d0478e236b04fb" 643 | }, 644 | "dist": { 645 | "type": "zip", 646 | "url": "https://api.github.com/repos/paragonie/random_compat/zipball/258c89a6b97de7dfaf5b8c7607d0478e236b04fb", 647 | "reference": "258c89a6b97de7dfaf5b8c7607d0478e236b04fb", 648 | "shasum": "" 649 | }, 650 | "require": { 651 | "php": ">=5.2.0" 652 | }, 653 | "require-dev": { 654 | "phpunit/phpunit": "4.*|5.*" 655 | }, 656 | "suggest": { 657 | "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." 658 | }, 659 | "type": "library", 660 | "autoload": { 661 | "files": [ 662 | "lib/random.php" 663 | ] 664 | }, 665 | "notification-url": "https://packagist.org/downloads/", 666 | "license": [ 667 | "MIT" 668 | ], 669 | "authors": [ 670 | { 671 | "name": "Paragon Initiative Enterprises", 672 | "email": "security@paragonie.com", 673 | "homepage": "https://paragonie.com" 674 | } 675 | ], 676 | "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7", 677 | "keywords": [ 678 | "csprng", 679 | "pseudorandom", 680 | "random" 681 | ], 682 | "time": "2018-04-04T21:24:14+00:00" 683 | }, 684 | { 685 | "name": "psr/container", 686 | "version": "1.0.0", 687 | "source": { 688 | "type": "git", 689 | "url": "https://github.com/php-fig/container.git", 690 | "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f" 691 | }, 692 | "dist": { 693 | "type": "zip", 694 | "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f", 695 | "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f", 696 | "shasum": "" 697 | }, 698 | "require": { 699 | "php": ">=5.3.0" 700 | }, 701 | "type": "library", 702 | "extra": { 703 | "branch-alias": { 704 | "dev-master": "1.0.x-dev" 705 | } 706 | }, 707 | "autoload": { 708 | "psr-4": { 709 | "Psr\\Container\\": "src/" 710 | } 711 | }, 712 | "notification-url": "https://packagist.org/downloads/", 713 | "license": [ 714 | "MIT" 715 | ], 716 | "authors": [ 717 | { 718 | "name": "PHP-FIG", 719 | "homepage": "http://www.php-fig.org/" 720 | } 721 | ], 722 | "description": "Common Container Interface (PHP FIG PSR-11)", 723 | "homepage": "https://github.com/php-fig/container", 724 | "keywords": [ 725 | "PSR-11", 726 | "container", 727 | "container-interface", 728 | "container-interop", 729 | "psr" 730 | ], 731 | "time": "2017-02-14T16:28:37+00:00" 732 | }, 733 | { 734 | "name": "psr/log", 735 | "version": "1.0.2", 736 | "source": { 737 | "type": "git", 738 | "url": "https://github.com/php-fig/log.git", 739 | "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d" 740 | }, 741 | "dist": { 742 | "type": "zip", 743 | "url": "https://api.github.com/repos/php-fig/log/zipball/4ebe3a8bf773a19edfe0a84b6585ba3d401b724d", 744 | "reference": "4ebe3a8bf773a19edfe0a84b6585ba3d401b724d", 745 | "shasum": "" 746 | }, 747 | "require": { 748 | "php": ">=5.3.0" 749 | }, 750 | "type": "library", 751 | "extra": { 752 | "branch-alias": { 753 | "dev-master": "1.0.x-dev" 754 | } 755 | }, 756 | "autoload": { 757 | "psr-4": { 758 | "Psr\\Log\\": "Psr/Log/" 759 | } 760 | }, 761 | "notification-url": "https://packagist.org/downloads/", 762 | "license": [ 763 | "MIT" 764 | ], 765 | "authors": [ 766 | { 767 | "name": "PHP-FIG", 768 | "homepage": "http://www.php-fig.org/" 769 | } 770 | ], 771 | "description": "Common interface for logging libraries", 772 | "homepage": "https://github.com/php-fig/log", 773 | "keywords": [ 774 | "log", 775 | "psr", 776 | "psr-3" 777 | ], 778 | "time": "2016-10-10T12:19:37+00:00" 779 | }, 780 | { 781 | "name": "psr/simple-cache", 782 | "version": "1.0.1", 783 | "source": { 784 | "type": "git", 785 | "url": "https://github.com/php-fig/simple-cache.git", 786 | "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b" 787 | }, 788 | "dist": { 789 | "type": "zip", 790 | "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", 791 | "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", 792 | "shasum": "" 793 | }, 794 | "require": { 795 | "php": ">=5.3.0" 796 | }, 797 | "type": "library", 798 | "extra": { 799 | "branch-alias": { 800 | "dev-master": "1.0.x-dev" 801 | } 802 | }, 803 | "autoload": { 804 | "psr-4": { 805 | "Psr\\SimpleCache\\": "src/" 806 | } 807 | }, 808 | "notification-url": "https://packagist.org/downloads/", 809 | "license": [ 810 | "MIT" 811 | ], 812 | "authors": [ 813 | { 814 | "name": "PHP-FIG", 815 | "homepage": "http://www.php-fig.org/" 816 | } 817 | ], 818 | "description": "Common interfaces for simple caching", 819 | "keywords": [ 820 | "cache", 821 | "caching", 822 | "psr", 823 | "psr-16", 824 | "simple-cache" 825 | ], 826 | "time": "2017-10-23T01:57:42+00:00" 827 | }, 828 | { 829 | "name": "ramsey/uuid", 830 | "version": "3.7.3", 831 | "source": { 832 | "type": "git", 833 | "url": "https://github.com/ramsey/uuid.git", 834 | "reference": "44abcdad877d9a46685a3a4d221e3b2c4b87cb76" 835 | }, 836 | "dist": { 837 | "type": "zip", 838 | "url": "https://api.github.com/repos/ramsey/uuid/zipball/44abcdad877d9a46685a3a4d221e3b2c4b87cb76", 839 | "reference": "44abcdad877d9a46685a3a4d221e3b2c4b87cb76", 840 | "shasum": "" 841 | }, 842 | "require": { 843 | "paragonie/random_compat": "^1.0|^2.0", 844 | "php": "^5.4 || ^7.0" 845 | }, 846 | "replace": { 847 | "rhumsaa/uuid": "self.version" 848 | }, 849 | "require-dev": { 850 | "codeception/aspect-mock": "^1.0 | ~2.0.0", 851 | "doctrine/annotations": "~1.2.0", 852 | "goaop/framework": "1.0.0-alpha.2 | ^1.0 | ^2.1", 853 | "ircmaxell/random-lib": "^1.1", 854 | "jakub-onderka/php-parallel-lint": "^0.9.0", 855 | "mockery/mockery": "^0.9.9", 856 | "moontoast/math": "^1.1", 857 | "php-mock/php-mock-phpunit": "^0.3|^1.1", 858 | "phpunit/phpunit": "^4.7|^5.0", 859 | "squizlabs/php_codesniffer": "^2.3" 860 | }, 861 | "suggest": { 862 | "ext-libsodium": "Provides the PECL libsodium extension for use with the SodiumRandomGenerator", 863 | "ext-uuid": "Provides the PECL UUID extension for use with the PeclUuidTimeGenerator and PeclUuidRandomGenerator", 864 | "ircmaxell/random-lib": "Provides RandomLib for use with the RandomLibAdapter", 865 | "moontoast/math": "Provides support for converting UUID to 128-bit integer (in string form).", 866 | "ramsey/uuid-console": "A console application for generating UUIDs with ramsey/uuid", 867 | "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." 868 | }, 869 | "type": "library", 870 | "extra": { 871 | "branch-alias": { 872 | "dev-master": "3.x-dev" 873 | } 874 | }, 875 | "autoload": { 876 | "psr-4": { 877 | "Ramsey\\Uuid\\": "src/" 878 | } 879 | }, 880 | "notification-url": "https://packagist.org/downloads/", 881 | "license": [ 882 | "MIT" 883 | ], 884 | "authors": [ 885 | { 886 | "name": "Marijn Huizendveld", 887 | "email": "marijn.huizendveld@gmail.com" 888 | }, 889 | { 890 | "name": "Thibaud Fabre", 891 | "email": "thibaud@aztech.io" 892 | }, 893 | { 894 | "name": "Ben Ramsey", 895 | "email": "ben@benramsey.com", 896 | "homepage": "https://benramsey.com" 897 | } 898 | ], 899 | "description": "Formerly rhumsaa/uuid. A PHP 5.4+ library for generating RFC 4122 version 1, 3, 4, and 5 universally unique identifiers (UUID).", 900 | "homepage": "https://github.com/ramsey/uuid", 901 | "keywords": [ 902 | "guid", 903 | "identifier", 904 | "uuid" 905 | ], 906 | "time": "2018-01-20T00:28:24+00:00" 907 | }, 908 | { 909 | "name": "swiftmailer/swiftmailer", 910 | "version": "v6.0.2", 911 | "source": { 912 | "type": "git", 913 | "url": "https://github.com/swiftmailer/swiftmailer.git", 914 | "reference": "412333372fb6c8ffb65496a2bbd7321af75733fc" 915 | }, 916 | "dist": { 917 | "type": "zip", 918 | "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/412333372fb6c8ffb65496a2bbd7321af75733fc", 919 | "reference": "412333372fb6c8ffb65496a2bbd7321af75733fc", 920 | "shasum": "" 921 | }, 922 | "require": { 923 | "egulias/email-validator": "~2.0", 924 | "php": ">=7.0.0" 925 | }, 926 | "require-dev": { 927 | "mockery/mockery": "~0.9.1", 928 | "symfony/phpunit-bridge": "~3.3@dev" 929 | }, 930 | "type": "library", 931 | "extra": { 932 | "branch-alias": { 933 | "dev-master": "6.0-dev" 934 | } 935 | }, 936 | "autoload": { 937 | "files": [ 938 | "lib/swift_required.php" 939 | ] 940 | }, 941 | "notification-url": "https://packagist.org/downloads/", 942 | "license": [ 943 | "MIT" 944 | ], 945 | "authors": [ 946 | { 947 | "name": "Chris Corbyn" 948 | }, 949 | { 950 | "name": "Fabien Potencier", 951 | "email": "fabien@symfony.com" 952 | } 953 | ], 954 | "description": "Swiftmailer, free feature-rich PHP mailer", 955 | "homepage": "http://swiftmailer.symfony.com", 956 | "keywords": [ 957 | "email", 958 | "mail", 959 | "mailer" 960 | ], 961 | "time": "2017-09-30T22:39:41+00:00" 962 | }, 963 | { 964 | "name": "symfony/console", 965 | "version": "v4.0.8", 966 | "source": { 967 | "type": "git", 968 | "url": "https://github.com/symfony/console.git", 969 | "reference": "aad9a6fe47319f22748fd764f52d3a7ca6fa6b64" 970 | }, 971 | "dist": { 972 | "type": "zip", 973 | "url": "https://api.github.com/repos/symfony/console/zipball/aad9a6fe47319f22748fd764f52d3a7ca6fa6b64", 974 | "reference": "aad9a6fe47319f22748fd764f52d3a7ca6fa6b64", 975 | "shasum": "" 976 | }, 977 | "require": { 978 | "php": "^7.1.3", 979 | "symfony/polyfill-mbstring": "~1.0" 980 | }, 981 | "conflict": { 982 | "symfony/dependency-injection": "<3.4", 983 | "symfony/process": "<3.3" 984 | }, 985 | "require-dev": { 986 | "psr/log": "~1.0", 987 | "symfony/config": "~3.4|~4.0", 988 | "symfony/dependency-injection": "~3.4|~4.0", 989 | "symfony/event-dispatcher": "~3.4|~4.0", 990 | "symfony/lock": "~3.4|~4.0", 991 | "symfony/process": "~3.4|~4.0" 992 | }, 993 | "suggest": { 994 | "psr/log": "For using the console logger", 995 | "symfony/event-dispatcher": "", 996 | "symfony/lock": "", 997 | "symfony/process": "" 998 | }, 999 | "type": "library", 1000 | "extra": { 1001 | "branch-alias": { 1002 | "dev-master": "4.0-dev" 1003 | } 1004 | }, 1005 | "autoload": { 1006 | "psr-4": { 1007 | "Symfony\\Component\\Console\\": "" 1008 | }, 1009 | "exclude-from-classmap": [ 1010 | "/Tests/" 1011 | ] 1012 | }, 1013 | "notification-url": "https://packagist.org/downloads/", 1014 | "license": [ 1015 | "MIT" 1016 | ], 1017 | "authors": [ 1018 | { 1019 | "name": "Fabien Potencier", 1020 | "email": "fabien@symfony.com" 1021 | }, 1022 | { 1023 | "name": "Symfony Community", 1024 | "homepage": "https://symfony.com/contributors" 1025 | } 1026 | ], 1027 | "description": "Symfony Console Component", 1028 | "homepage": "https://symfony.com", 1029 | "time": "2018-04-03T05:24:00+00:00" 1030 | }, 1031 | { 1032 | "name": "symfony/css-selector", 1033 | "version": "v4.0.8", 1034 | "source": { 1035 | "type": "git", 1036 | "url": "https://github.com/symfony/css-selector.git", 1037 | "reference": "03f965583147957f1ecbad7ea1c9d6fd5e525ec2" 1038 | }, 1039 | "dist": { 1040 | "type": "zip", 1041 | "url": "https://api.github.com/repos/symfony/css-selector/zipball/03f965583147957f1ecbad7ea1c9d6fd5e525ec2", 1042 | "reference": "03f965583147957f1ecbad7ea1c9d6fd5e525ec2", 1043 | "shasum": "" 1044 | }, 1045 | "require": { 1046 | "php": "^7.1.3" 1047 | }, 1048 | "type": "library", 1049 | "extra": { 1050 | "branch-alias": { 1051 | "dev-master": "4.0-dev" 1052 | } 1053 | }, 1054 | "autoload": { 1055 | "psr-4": { 1056 | "Symfony\\Component\\CssSelector\\": "" 1057 | }, 1058 | "exclude-from-classmap": [ 1059 | "/Tests/" 1060 | ] 1061 | }, 1062 | "notification-url": "https://packagist.org/downloads/", 1063 | "license": [ 1064 | "MIT" 1065 | ], 1066 | "authors": [ 1067 | { 1068 | "name": "Jean-François Simon", 1069 | "email": "jeanfrancois.simon@sensiolabs.com" 1070 | }, 1071 | { 1072 | "name": "Fabien Potencier", 1073 | "email": "fabien@symfony.com" 1074 | }, 1075 | { 1076 | "name": "Symfony Community", 1077 | "homepage": "https://symfony.com/contributors" 1078 | } 1079 | ], 1080 | "description": "Symfony CssSelector Component", 1081 | "homepage": "https://symfony.com", 1082 | "time": "2018-03-19T22:35:49+00:00" 1083 | }, 1084 | { 1085 | "name": "symfony/debug", 1086 | "version": "v4.0.8", 1087 | "source": { 1088 | "type": "git", 1089 | "url": "https://github.com/symfony/debug.git", 1090 | "reference": "5961d02d48828671f5d8a7805e06579d692f6ede" 1091 | }, 1092 | "dist": { 1093 | "type": "zip", 1094 | "url": "https://api.github.com/repos/symfony/debug/zipball/5961d02d48828671f5d8a7805e06579d692f6ede", 1095 | "reference": "5961d02d48828671f5d8a7805e06579d692f6ede", 1096 | "shasum": "" 1097 | }, 1098 | "require": { 1099 | "php": "^7.1.3", 1100 | "psr/log": "~1.0" 1101 | }, 1102 | "conflict": { 1103 | "symfony/http-kernel": "<3.4" 1104 | }, 1105 | "require-dev": { 1106 | "symfony/http-kernel": "~3.4|~4.0" 1107 | }, 1108 | "type": "library", 1109 | "extra": { 1110 | "branch-alias": { 1111 | "dev-master": "4.0-dev" 1112 | } 1113 | }, 1114 | "autoload": { 1115 | "psr-4": { 1116 | "Symfony\\Component\\Debug\\": "" 1117 | }, 1118 | "exclude-from-classmap": [ 1119 | "/Tests/" 1120 | ] 1121 | }, 1122 | "notification-url": "https://packagist.org/downloads/", 1123 | "license": [ 1124 | "MIT" 1125 | ], 1126 | "authors": [ 1127 | { 1128 | "name": "Fabien Potencier", 1129 | "email": "fabien@symfony.com" 1130 | }, 1131 | { 1132 | "name": "Symfony Community", 1133 | "homepage": "https://symfony.com/contributors" 1134 | } 1135 | ], 1136 | "description": "Symfony Debug Component", 1137 | "homepage": "https://symfony.com", 1138 | "time": "2018-04-03T05:24:00+00:00" 1139 | }, 1140 | { 1141 | "name": "symfony/event-dispatcher", 1142 | "version": "v4.0.8", 1143 | "source": { 1144 | "type": "git", 1145 | "url": "https://github.com/symfony/event-dispatcher.git", 1146 | "reference": "63353a71073faf08f62caab4e6889b06a787f07b" 1147 | }, 1148 | "dist": { 1149 | "type": "zip", 1150 | "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/63353a71073faf08f62caab4e6889b06a787f07b", 1151 | "reference": "63353a71073faf08f62caab4e6889b06a787f07b", 1152 | "shasum": "" 1153 | }, 1154 | "require": { 1155 | "php": "^7.1.3" 1156 | }, 1157 | "conflict": { 1158 | "symfony/dependency-injection": "<3.4" 1159 | }, 1160 | "require-dev": { 1161 | "psr/log": "~1.0", 1162 | "symfony/config": "~3.4|~4.0", 1163 | "symfony/dependency-injection": "~3.4|~4.0", 1164 | "symfony/expression-language": "~3.4|~4.0", 1165 | "symfony/stopwatch": "~3.4|~4.0" 1166 | }, 1167 | "suggest": { 1168 | "symfony/dependency-injection": "", 1169 | "symfony/http-kernel": "" 1170 | }, 1171 | "type": "library", 1172 | "extra": { 1173 | "branch-alias": { 1174 | "dev-master": "4.0-dev" 1175 | } 1176 | }, 1177 | "autoload": { 1178 | "psr-4": { 1179 | "Symfony\\Component\\EventDispatcher\\": "" 1180 | }, 1181 | "exclude-from-classmap": [ 1182 | "/Tests/" 1183 | ] 1184 | }, 1185 | "notification-url": "https://packagist.org/downloads/", 1186 | "license": [ 1187 | "MIT" 1188 | ], 1189 | "authors": [ 1190 | { 1191 | "name": "Fabien Potencier", 1192 | "email": "fabien@symfony.com" 1193 | }, 1194 | { 1195 | "name": "Symfony Community", 1196 | "homepage": "https://symfony.com/contributors" 1197 | } 1198 | ], 1199 | "description": "Symfony EventDispatcher Component", 1200 | "homepage": "https://symfony.com", 1201 | "time": "2018-04-06T07:35:43+00:00" 1202 | }, 1203 | { 1204 | "name": "symfony/finder", 1205 | "version": "v4.0.8", 1206 | "source": { 1207 | "type": "git", 1208 | "url": "https://github.com/symfony/finder.git", 1209 | "reference": "ca27c02b7a3fef4828c998c2ff9ba7aae1641c49" 1210 | }, 1211 | "dist": { 1212 | "type": "zip", 1213 | "url": "https://api.github.com/repos/symfony/finder/zipball/ca27c02b7a3fef4828c998c2ff9ba7aae1641c49", 1214 | "reference": "ca27c02b7a3fef4828c998c2ff9ba7aae1641c49", 1215 | "shasum": "" 1216 | }, 1217 | "require": { 1218 | "php": "^7.1.3" 1219 | }, 1220 | "type": "library", 1221 | "extra": { 1222 | "branch-alias": { 1223 | "dev-master": "4.0-dev" 1224 | } 1225 | }, 1226 | "autoload": { 1227 | "psr-4": { 1228 | "Symfony\\Component\\Finder\\": "" 1229 | }, 1230 | "exclude-from-classmap": [ 1231 | "/Tests/" 1232 | ] 1233 | }, 1234 | "notification-url": "https://packagist.org/downloads/", 1235 | "license": [ 1236 | "MIT" 1237 | ], 1238 | "authors": [ 1239 | { 1240 | "name": "Fabien Potencier", 1241 | "email": "fabien@symfony.com" 1242 | }, 1243 | { 1244 | "name": "Symfony Community", 1245 | "homepage": "https://symfony.com/contributors" 1246 | } 1247 | ], 1248 | "description": "Symfony Finder Component", 1249 | "homepage": "https://symfony.com", 1250 | "time": "2018-04-04T05:10:37+00:00" 1251 | }, 1252 | { 1253 | "name": "symfony/http-foundation", 1254 | "version": "v4.0.8", 1255 | "source": { 1256 | "type": "git", 1257 | "url": "https://github.com/symfony/http-foundation.git", 1258 | "reference": "d0864a82e5891ab61d31eecbaa48bed5a09b8e6c" 1259 | }, 1260 | "dist": { 1261 | "type": "zip", 1262 | "url": "https://api.github.com/repos/symfony/http-foundation/zipball/d0864a82e5891ab61d31eecbaa48bed5a09b8e6c", 1263 | "reference": "d0864a82e5891ab61d31eecbaa48bed5a09b8e6c", 1264 | "shasum": "" 1265 | }, 1266 | "require": { 1267 | "php": "^7.1.3", 1268 | "symfony/polyfill-mbstring": "~1.1" 1269 | }, 1270 | "require-dev": { 1271 | "symfony/expression-language": "~3.4|~4.0" 1272 | }, 1273 | "type": "library", 1274 | "extra": { 1275 | "branch-alias": { 1276 | "dev-master": "4.0-dev" 1277 | } 1278 | }, 1279 | "autoload": { 1280 | "psr-4": { 1281 | "Symfony\\Component\\HttpFoundation\\": "" 1282 | }, 1283 | "exclude-from-classmap": [ 1284 | "/Tests/" 1285 | ] 1286 | }, 1287 | "notification-url": "https://packagist.org/downloads/", 1288 | "license": [ 1289 | "MIT" 1290 | ], 1291 | "authors": [ 1292 | { 1293 | "name": "Fabien Potencier", 1294 | "email": "fabien@symfony.com" 1295 | }, 1296 | { 1297 | "name": "Symfony Community", 1298 | "homepage": "https://symfony.com/contributors" 1299 | } 1300 | ], 1301 | "description": "Symfony HttpFoundation Component", 1302 | "homepage": "https://symfony.com", 1303 | "time": "2018-04-03T05:24:00+00:00" 1304 | }, 1305 | { 1306 | "name": "symfony/http-kernel", 1307 | "version": "v4.0.8", 1308 | "source": { 1309 | "type": "git", 1310 | "url": "https://github.com/symfony/http-kernel.git", 1311 | "reference": "6dd620d96d64456075536ffe3c6c4658dd689021" 1312 | }, 1313 | "dist": { 1314 | "type": "zip", 1315 | "url": "https://api.github.com/repos/symfony/http-kernel/zipball/6dd620d96d64456075536ffe3c6c4658dd689021", 1316 | "reference": "6dd620d96d64456075536ffe3c6c4658dd689021", 1317 | "shasum": "" 1318 | }, 1319 | "require": { 1320 | "php": "^7.1.3", 1321 | "psr/log": "~1.0", 1322 | "symfony/debug": "~3.4|~4.0", 1323 | "symfony/event-dispatcher": "~3.4|~4.0", 1324 | "symfony/http-foundation": "~3.4.4|~4.0.4" 1325 | }, 1326 | "conflict": { 1327 | "symfony/config": "<3.4", 1328 | "symfony/dependency-injection": "<3.4.5|<4.0.5,>=4", 1329 | "symfony/var-dumper": "<3.4", 1330 | "twig/twig": "<1.34|<2.4,>=2" 1331 | }, 1332 | "provide": { 1333 | "psr/log-implementation": "1.0" 1334 | }, 1335 | "require-dev": { 1336 | "psr/cache": "~1.0", 1337 | "symfony/browser-kit": "~3.4|~4.0", 1338 | "symfony/config": "~3.4|~4.0", 1339 | "symfony/console": "~3.4|~4.0", 1340 | "symfony/css-selector": "~3.4|~4.0", 1341 | "symfony/dependency-injection": "^3.4.5|^4.0.5", 1342 | "symfony/dom-crawler": "~3.4|~4.0", 1343 | "symfony/expression-language": "~3.4|~4.0", 1344 | "symfony/finder": "~3.4|~4.0", 1345 | "symfony/process": "~3.4|~4.0", 1346 | "symfony/routing": "~3.4|~4.0", 1347 | "symfony/stopwatch": "~3.4|~4.0", 1348 | "symfony/templating": "~3.4|~4.0", 1349 | "symfony/translation": "~3.4|~4.0", 1350 | "symfony/var-dumper": "~3.4|~4.0" 1351 | }, 1352 | "suggest": { 1353 | "symfony/browser-kit": "", 1354 | "symfony/config": "", 1355 | "symfony/console": "", 1356 | "symfony/dependency-injection": "", 1357 | "symfony/var-dumper": "" 1358 | }, 1359 | "type": "library", 1360 | "extra": { 1361 | "branch-alias": { 1362 | "dev-master": "4.0-dev" 1363 | } 1364 | }, 1365 | "autoload": { 1366 | "psr-4": { 1367 | "Symfony\\Component\\HttpKernel\\": "" 1368 | }, 1369 | "exclude-from-classmap": [ 1370 | "/Tests/" 1371 | ] 1372 | }, 1373 | "notification-url": "https://packagist.org/downloads/", 1374 | "license": [ 1375 | "MIT" 1376 | ], 1377 | "authors": [ 1378 | { 1379 | "name": "Fabien Potencier", 1380 | "email": "fabien@symfony.com" 1381 | }, 1382 | { 1383 | "name": "Symfony Community", 1384 | "homepage": "https://symfony.com/contributors" 1385 | } 1386 | ], 1387 | "description": "Symfony HttpKernel Component", 1388 | "homepage": "https://symfony.com", 1389 | "time": "2018-04-06T16:25:03+00:00" 1390 | }, 1391 | { 1392 | "name": "symfony/polyfill-mbstring", 1393 | "version": "v1.7.0", 1394 | "source": { 1395 | "type": "git", 1396 | "url": "https://github.com/symfony/polyfill-mbstring.git", 1397 | "reference": "78be803ce01e55d3491c1397cf1c64beb9c1b63b" 1398 | }, 1399 | "dist": { 1400 | "type": "zip", 1401 | "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/78be803ce01e55d3491c1397cf1c64beb9c1b63b", 1402 | "reference": "78be803ce01e55d3491c1397cf1c64beb9c1b63b", 1403 | "shasum": "" 1404 | }, 1405 | "require": { 1406 | "php": ">=5.3.3" 1407 | }, 1408 | "suggest": { 1409 | "ext-mbstring": "For best performance" 1410 | }, 1411 | "type": "library", 1412 | "extra": { 1413 | "branch-alias": { 1414 | "dev-master": "1.7-dev" 1415 | } 1416 | }, 1417 | "autoload": { 1418 | "psr-4": { 1419 | "Symfony\\Polyfill\\Mbstring\\": "" 1420 | }, 1421 | "files": [ 1422 | "bootstrap.php" 1423 | ] 1424 | }, 1425 | "notification-url": "https://packagist.org/downloads/", 1426 | "license": [ 1427 | "MIT" 1428 | ], 1429 | "authors": [ 1430 | { 1431 | "name": "Nicolas Grekas", 1432 | "email": "p@tchwork.com" 1433 | }, 1434 | { 1435 | "name": "Symfony Community", 1436 | "homepage": "https://symfony.com/contributors" 1437 | } 1438 | ], 1439 | "description": "Symfony polyfill for the Mbstring extension", 1440 | "homepage": "https://symfony.com", 1441 | "keywords": [ 1442 | "compatibility", 1443 | "mbstring", 1444 | "polyfill", 1445 | "portable", 1446 | "shim" 1447 | ], 1448 | "time": "2018-01-30T19:27:44+00:00" 1449 | }, 1450 | { 1451 | "name": "symfony/polyfill-php72", 1452 | "version": "v1.7.0", 1453 | "source": { 1454 | "type": "git", 1455 | "url": "https://github.com/symfony/polyfill-php72.git", 1456 | "reference": "8eca20c8a369e069d4f4c2ac9895144112867422" 1457 | }, 1458 | "dist": { 1459 | "type": "zip", 1460 | "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/8eca20c8a369e069d4f4c2ac9895144112867422", 1461 | "reference": "8eca20c8a369e069d4f4c2ac9895144112867422", 1462 | "shasum": "" 1463 | }, 1464 | "require": { 1465 | "php": ">=5.3.3" 1466 | }, 1467 | "type": "library", 1468 | "extra": { 1469 | "branch-alias": { 1470 | "dev-master": "1.7-dev" 1471 | } 1472 | }, 1473 | "autoload": { 1474 | "psr-4": { 1475 | "Symfony\\Polyfill\\Php72\\": "" 1476 | }, 1477 | "files": [ 1478 | "bootstrap.php" 1479 | ] 1480 | }, 1481 | "notification-url": "https://packagist.org/downloads/", 1482 | "license": [ 1483 | "MIT" 1484 | ], 1485 | "authors": [ 1486 | { 1487 | "name": "Nicolas Grekas", 1488 | "email": "p@tchwork.com" 1489 | }, 1490 | { 1491 | "name": "Symfony Community", 1492 | "homepage": "https://symfony.com/contributors" 1493 | } 1494 | ], 1495 | "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", 1496 | "homepage": "https://symfony.com", 1497 | "keywords": [ 1498 | "compatibility", 1499 | "polyfill", 1500 | "portable", 1501 | "shim" 1502 | ], 1503 | "time": "2018-01-31T17:43:24+00:00" 1504 | }, 1505 | { 1506 | "name": "symfony/process", 1507 | "version": "v4.0.8", 1508 | "source": { 1509 | "type": "git", 1510 | "url": "https://github.com/symfony/process.git", 1511 | "reference": "d7dc1ee5dfe9f732cb1bba7310f5b99f2b7a6d25" 1512 | }, 1513 | "dist": { 1514 | "type": "zip", 1515 | "url": "https://api.github.com/repos/symfony/process/zipball/d7dc1ee5dfe9f732cb1bba7310f5b99f2b7a6d25", 1516 | "reference": "d7dc1ee5dfe9f732cb1bba7310f5b99f2b7a6d25", 1517 | "shasum": "" 1518 | }, 1519 | "require": { 1520 | "php": "^7.1.3" 1521 | }, 1522 | "type": "library", 1523 | "extra": { 1524 | "branch-alias": { 1525 | "dev-master": "4.0-dev" 1526 | } 1527 | }, 1528 | "autoload": { 1529 | "psr-4": { 1530 | "Symfony\\Component\\Process\\": "" 1531 | }, 1532 | "exclude-from-classmap": [ 1533 | "/Tests/" 1534 | ] 1535 | }, 1536 | "notification-url": "https://packagist.org/downloads/", 1537 | "license": [ 1538 | "MIT" 1539 | ], 1540 | "authors": [ 1541 | { 1542 | "name": "Fabien Potencier", 1543 | "email": "fabien@symfony.com" 1544 | }, 1545 | { 1546 | "name": "Symfony Community", 1547 | "homepage": "https://symfony.com/contributors" 1548 | } 1549 | ], 1550 | "description": "Symfony Process Component", 1551 | "homepage": "https://symfony.com", 1552 | "time": "2018-04-03T05:24:00+00:00" 1553 | }, 1554 | { 1555 | "name": "symfony/routing", 1556 | "version": "v4.0.8", 1557 | "source": { 1558 | "type": "git", 1559 | "url": "https://github.com/symfony/routing.git", 1560 | "reference": "0663036dd57dbfd4e9ff29f75bbd5dd3253ebe71" 1561 | }, 1562 | "dist": { 1563 | "type": "zip", 1564 | "url": "https://api.github.com/repos/symfony/routing/zipball/0663036dd57dbfd4e9ff29f75bbd5dd3253ebe71", 1565 | "reference": "0663036dd57dbfd4e9ff29f75bbd5dd3253ebe71", 1566 | "shasum": "" 1567 | }, 1568 | "require": { 1569 | "php": "^7.1.3" 1570 | }, 1571 | "conflict": { 1572 | "symfony/config": "<3.4", 1573 | "symfony/dependency-injection": "<3.4", 1574 | "symfony/yaml": "<3.4" 1575 | }, 1576 | "require-dev": { 1577 | "doctrine/annotations": "~1.0", 1578 | "doctrine/common": "~2.2", 1579 | "psr/log": "~1.0", 1580 | "symfony/config": "~3.4|~4.0", 1581 | "symfony/dependency-injection": "~3.4|~4.0", 1582 | "symfony/expression-language": "~3.4|~4.0", 1583 | "symfony/http-foundation": "~3.4|~4.0", 1584 | "symfony/yaml": "~3.4|~4.0" 1585 | }, 1586 | "suggest": { 1587 | "doctrine/annotations": "For using the annotation loader", 1588 | "symfony/config": "For using the all-in-one router or any loader", 1589 | "symfony/dependency-injection": "For loading routes from a service", 1590 | "symfony/expression-language": "For using expression matching", 1591 | "symfony/http-foundation": "For using a Symfony Request object", 1592 | "symfony/yaml": "For using the YAML loader" 1593 | }, 1594 | "type": "library", 1595 | "extra": { 1596 | "branch-alias": { 1597 | "dev-master": "4.0-dev" 1598 | } 1599 | }, 1600 | "autoload": { 1601 | "psr-4": { 1602 | "Symfony\\Component\\Routing\\": "" 1603 | }, 1604 | "exclude-from-classmap": [ 1605 | "/Tests/" 1606 | ] 1607 | }, 1608 | "notification-url": "https://packagist.org/downloads/", 1609 | "license": [ 1610 | "MIT" 1611 | ], 1612 | "authors": [ 1613 | { 1614 | "name": "Fabien Potencier", 1615 | "email": "fabien@symfony.com" 1616 | }, 1617 | { 1618 | "name": "Symfony Community", 1619 | "homepage": "https://symfony.com/contributors" 1620 | } 1621 | ], 1622 | "description": "Symfony Routing Component", 1623 | "homepage": "https://symfony.com", 1624 | "keywords": [ 1625 | "router", 1626 | "routing", 1627 | "uri", 1628 | "url" 1629 | ], 1630 | "time": "2018-04-04T13:50:32+00:00" 1631 | }, 1632 | { 1633 | "name": "symfony/translation", 1634 | "version": "v4.0.8", 1635 | "source": { 1636 | "type": "git", 1637 | "url": "https://github.com/symfony/translation.git", 1638 | "reference": "e20a9b7f9f62cb33a11638b345c248e7d510c938" 1639 | }, 1640 | "dist": { 1641 | "type": "zip", 1642 | "url": "https://api.github.com/repos/symfony/translation/zipball/e20a9b7f9f62cb33a11638b345c248e7d510c938", 1643 | "reference": "e20a9b7f9f62cb33a11638b345c248e7d510c938", 1644 | "shasum": "" 1645 | }, 1646 | "require": { 1647 | "php": "^7.1.3", 1648 | "symfony/polyfill-mbstring": "~1.0" 1649 | }, 1650 | "conflict": { 1651 | "symfony/config": "<3.4", 1652 | "symfony/dependency-injection": "<3.4", 1653 | "symfony/yaml": "<3.4" 1654 | }, 1655 | "require-dev": { 1656 | "psr/log": "~1.0", 1657 | "symfony/config": "~3.4|~4.0", 1658 | "symfony/dependency-injection": "~3.4|~4.0", 1659 | "symfony/finder": "~2.8|~3.0|~4.0", 1660 | "symfony/intl": "~3.4|~4.0", 1661 | "symfony/yaml": "~3.4|~4.0" 1662 | }, 1663 | "suggest": { 1664 | "psr/log": "To use logging capability in translator", 1665 | "symfony/config": "", 1666 | "symfony/yaml": "" 1667 | }, 1668 | "type": "library", 1669 | "extra": { 1670 | "branch-alias": { 1671 | "dev-master": "4.0-dev" 1672 | } 1673 | }, 1674 | "autoload": { 1675 | "psr-4": { 1676 | "Symfony\\Component\\Translation\\": "" 1677 | }, 1678 | "exclude-from-classmap": [ 1679 | "/Tests/" 1680 | ] 1681 | }, 1682 | "notification-url": "https://packagist.org/downloads/", 1683 | "license": [ 1684 | "MIT" 1685 | ], 1686 | "authors": [ 1687 | { 1688 | "name": "Fabien Potencier", 1689 | "email": "fabien@symfony.com" 1690 | }, 1691 | { 1692 | "name": "Symfony Community", 1693 | "homepage": "https://symfony.com/contributors" 1694 | } 1695 | ], 1696 | "description": "Symfony Translation Component", 1697 | "homepage": "https://symfony.com", 1698 | "time": "2018-02-22T10:50:29+00:00" 1699 | }, 1700 | { 1701 | "name": "symfony/var-dumper", 1702 | "version": "v4.0.8", 1703 | "source": { 1704 | "type": "git", 1705 | "url": "https://github.com/symfony/var-dumper.git", 1706 | "reference": "e1b4d008100f4d203cc38b0d793ad6252d8d8af0" 1707 | }, 1708 | "dist": { 1709 | "type": "zip", 1710 | "url": "https://api.github.com/repos/symfony/var-dumper/zipball/e1b4d008100f4d203cc38b0d793ad6252d8d8af0", 1711 | "reference": "e1b4d008100f4d203cc38b0d793ad6252d8d8af0", 1712 | "shasum": "" 1713 | }, 1714 | "require": { 1715 | "php": "^7.1.3", 1716 | "symfony/polyfill-mbstring": "~1.0", 1717 | "symfony/polyfill-php72": "~1.5" 1718 | }, 1719 | "conflict": { 1720 | "phpunit/phpunit": "<4.8.35|<5.4.3,>=5.0" 1721 | }, 1722 | "require-dev": { 1723 | "ext-iconv": "*", 1724 | "twig/twig": "~1.34|~2.4" 1725 | }, 1726 | "suggest": { 1727 | "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).", 1728 | "ext-intl": "To show region name in time zone dump" 1729 | }, 1730 | "type": "library", 1731 | "extra": { 1732 | "branch-alias": { 1733 | "dev-master": "4.0-dev" 1734 | } 1735 | }, 1736 | "autoload": { 1737 | "files": [ 1738 | "Resources/functions/dump.php" 1739 | ], 1740 | "psr-4": { 1741 | "Symfony\\Component\\VarDumper\\": "" 1742 | }, 1743 | "exclude-from-classmap": [ 1744 | "/Tests/" 1745 | ] 1746 | }, 1747 | "notification-url": "https://packagist.org/downloads/", 1748 | "license": [ 1749 | "MIT" 1750 | ], 1751 | "authors": [ 1752 | { 1753 | "name": "Nicolas Grekas", 1754 | "email": "p@tchwork.com" 1755 | }, 1756 | { 1757 | "name": "Symfony Community", 1758 | "homepage": "https://symfony.com/contributors" 1759 | } 1760 | ], 1761 | "description": "Symfony mechanism for exploring and dumping PHP variables", 1762 | "homepage": "https://symfony.com", 1763 | "keywords": [ 1764 | "debug", 1765 | "dump" 1766 | ], 1767 | "time": "2018-04-04T05:10:37+00:00" 1768 | }, 1769 | { 1770 | "name": "tijsverkoyen/css-to-inline-styles", 1771 | "version": "2.2.1", 1772 | "source": { 1773 | "type": "git", 1774 | "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", 1775 | "reference": "0ed4a2ea4e0902dac0489e6436ebcd5bbcae9757" 1776 | }, 1777 | "dist": { 1778 | "type": "zip", 1779 | "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/0ed4a2ea4e0902dac0489e6436ebcd5bbcae9757", 1780 | "reference": "0ed4a2ea4e0902dac0489e6436ebcd5bbcae9757", 1781 | "shasum": "" 1782 | }, 1783 | "require": { 1784 | "php": "^5.5 || ^7.0", 1785 | "symfony/css-selector": "^2.7 || ^3.0 || ^4.0" 1786 | }, 1787 | "require-dev": { 1788 | "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0" 1789 | }, 1790 | "type": "library", 1791 | "extra": { 1792 | "branch-alias": { 1793 | "dev-master": "2.2.x-dev" 1794 | } 1795 | }, 1796 | "autoload": { 1797 | "psr-4": { 1798 | "TijsVerkoyen\\CssToInlineStyles\\": "src" 1799 | } 1800 | }, 1801 | "notification-url": "https://packagist.org/downloads/", 1802 | "license": [ 1803 | "BSD-3-Clause" 1804 | ], 1805 | "authors": [ 1806 | { 1807 | "name": "Tijs Verkoyen", 1808 | "email": "css_to_inline_styles@verkoyen.eu", 1809 | "role": "Developer" 1810 | } 1811 | ], 1812 | "description": "CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inline styles. This is very useful when you're sending emails.", 1813 | "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", 1814 | "time": "2017-11-27T11:13:29+00:00" 1815 | }, 1816 | { 1817 | "name": "vlucas/phpdotenv", 1818 | "version": "v2.4.0", 1819 | "source": { 1820 | "type": "git", 1821 | "url": "https://github.com/vlucas/phpdotenv.git", 1822 | "reference": "3cc116adbe4b11be5ec557bf1d24dc5e3a21d18c" 1823 | }, 1824 | "dist": { 1825 | "type": "zip", 1826 | "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/3cc116adbe4b11be5ec557bf1d24dc5e3a21d18c", 1827 | "reference": "3cc116adbe4b11be5ec557bf1d24dc5e3a21d18c", 1828 | "shasum": "" 1829 | }, 1830 | "require": { 1831 | "php": ">=5.3.9" 1832 | }, 1833 | "require-dev": { 1834 | "phpunit/phpunit": "^4.8 || ^5.0" 1835 | }, 1836 | "type": "library", 1837 | "extra": { 1838 | "branch-alias": { 1839 | "dev-master": "2.4-dev" 1840 | } 1841 | }, 1842 | "autoload": { 1843 | "psr-4": { 1844 | "Dotenv\\": "src/" 1845 | } 1846 | }, 1847 | "notification-url": "https://packagist.org/downloads/", 1848 | "license": [ 1849 | "BSD-3-Clause-Attribution" 1850 | ], 1851 | "authors": [ 1852 | { 1853 | "name": "Vance Lucas", 1854 | "email": "vance@vancelucas.com", 1855 | "homepage": "http://www.vancelucas.com" 1856 | } 1857 | ], 1858 | "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", 1859 | "keywords": [ 1860 | "dotenv", 1861 | "env", 1862 | "environment" 1863 | ], 1864 | "time": "2016-09-01T10:05:43+00:00" 1865 | } 1866 | ], 1867 | "packages-dev": [], 1868 | "aliases": [], 1869 | "minimum-stability": "stable", 1870 | "stability-flags": [], 1871 | "prefer-stable": false, 1872 | "prefer-lowest": false, 1873 | "platform": [], 1874 | "platform-dev": [] 1875 | } 1876 | -------------------------------------------------------------------------------- /src/Preset.php: -------------------------------------------------------------------------------- 1 | '^0.1.0', 25 | 'tailwindcss' => '>=0.5.2', 26 | ], Arr::except($packages, [ 27 | 'bootstrap', 28 | 'jquery', 29 | 'popper.js', 30 | ])); 31 | } 32 | 33 | protected static function webpackDotMix() 34 | { 35 | copy(__DIR__ . '/stubs/webpack.mix.js', base_path('webpack.mix.js')); 36 | } 37 | 38 | protected static function gitignore() 39 | { 40 | copy(__DIR__ . '/stubs/gitignore-stub', base_path('.gitignore')); 41 | } 42 | 43 | protected static function bootstrapDotJs() 44 | { 45 | copy(__DIR__ . '/stubs/bootstrap.js', resource_path('js/bootstrap.js')); 46 | } 47 | 48 | protected static function appDotScss() 49 | { 50 | $files = new Filesystem; 51 | 52 | $files->makeDirectory(resource_path('sass/components', 0755, true)); 53 | 54 | $files->delete(resource_path('sass/_variables.scss')); 55 | 56 | copy(__DIR__ . '/stubs/app.scss', resource_path('sass/app.scss')); 57 | copy(__DIR__ . '/stubs/_custom-utilities.scss', resource_path('sass/_custom-utilities.scss')); 58 | copy(__DIR__ . '/stubs/components/_button.scss', resource_path('sass/components/_button.scss')); 59 | } 60 | 61 | protected static function views() 62 | { 63 | $files = new Filesystem; 64 | 65 | $files->delete(resource_path('views/welcome.blade.php')); 66 | $files->exists($file = resource_path('views/home.blade.php')) && $files->delete($file); 67 | 68 | $files->copyDirectory(__DIR__ . '/stubs/views', resource_path('views')); 69 | } 70 | } 71 | -------------------------------------------------------------------------------- /src/PresetServiceProvider.php: -------------------------------------------------------------------------------- 1 | info('Preset installed. To finish setup, run:'); 16 | $command->info('npm install && node_modules/.bin/tailwind init && npm run dev'); 17 | }); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/stubs/_custom-utilities.scss: -------------------------------------------------------------------------------- 1 | // Globally remove the annoying outline when a button or input is clicked. 2 | input, button, button:focus { 3 | outline: none; 4 | } 5 | 6 | // This class makes SVG icons more context-aware. There are 2 things going on here: 7 | // 1) "currentColor" fill allows you to set the color of the svg with a "color:" attribute. 8 | // 2) "1em" height and width size the SVG to the parent's font-size. 9 | // 3) the "vertical-align" and odd margin are adjustments to some specific and odd rendering behavior. 10 | .svg-icon { 11 | fill: currentColor; 12 | height: 1em; 13 | margin-top: -4px; 14 | vertical-align: middle; 15 | width: 1em; 16 | } 17 | 18 | // Usage: "cloak:hiden", "cloak:inline-block" 19 | // To understand these helpers, replace the word "cloak" with: 20 | // "while Vue is loading on the page, set the element's display property to:" 21 | [v-cloak] .cloak\:hidden { 22 | @apply .hidden; 23 | } 24 | 25 | [v-cloak] .cloak\:inline-block { 26 | @apply .inline-block; 27 | } 28 | 29 | [v-cloak] .cloak\:block { 30 | @apply .block; 31 | } 32 | -------------------------------------------------------------------------------- /src/stubs/app.scss: -------------------------------------------------------------------------------- 1 | 2 | @tailwind preflight; 3 | 4 | @tailwind components; 5 | 6 | @import "components/button"; 7 | 8 | @tailwind utilities; 9 | 10 | @import "custom-utilities"; 11 | -------------------------------------------------------------------------------- /src/stubs/bootstrap.js: -------------------------------------------------------------------------------- 1 | 2 | window._ = require('lodash'); 3 | 4 | /** 5 | * We'll load the axios HTTP library which allows us to easily issue requests 6 | * to our Laravel back-end. This library automatically handles sending the 7 | * CSRF token as a header based on the value of the "XSRF" token cookie. 8 | */ 9 | 10 | window.axios = require('axios'); 11 | 12 | window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest'; 13 | 14 | /** 15 | * Next we will register the CSRF Token as a common header with Axios so that 16 | * all outgoing HTTP requests automatically have it attached. This is just 17 | * a simple convenience so we don't have to attach every token manually. 18 | */ 19 | 20 | let token = document.head.querySelector('meta[name="csrf-token"]'); 21 | 22 | if (token) { 23 | window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content; 24 | } else { 25 | console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token'); 26 | } 27 | -------------------------------------------------------------------------------- /src/stubs/components/_button.scss: -------------------------------------------------------------------------------- 1 | 2 | // .btn { 3 | // @apply .border .font-bold .mb-2 .px-4 .py-3 .rounded .shadow .text-white .tracking-normal; 4 | // } 5 | 6 | // .btn-purple { 7 | // @apply .bg-purple-light .border-purple; 8 | // } 9 | 10 | // .btn-purple:hover { 11 | // @apply .bg-purple; 12 | // } 13 | -------------------------------------------------------------------------------- /src/stubs/gitignore-stub: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /public/hot 3 | /public/storage 4 | /storage/*.key 5 | /vendor 6 | /.idea 7 | /.vscode 8 | /.vagrant 9 | Homestead.json 10 | Homestead.yaml 11 | npm-debug.log 12 | yarn-error.log 13 | .env 14 | .DS_Store 15 | -------------------------------------------------------------------------------- /src/stubs/views/layouts/base.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 | 6 | 7 | 8 | 9 |