aboutsummaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorfloppydiskette <git@diskfloppy.me>2024-08-08 22:22:38 +0100
committerfloppydiskette <git@diskfloppy.me>2024-08-08 22:22:38 +0100
commit04fc009874db2d539ad881b649f7ebb512f05312 (patch)
tree9934681b96c15ceffbc9ce8d682621ff875f1b4f /config
parentfc5cd70e729f639aaf1c6ff6a4bf3d5d52664de9 (diff)
Init rails apprails
Diffstat (limited to 'config')
-rw-r--r--config/app.php34
-rw-r--r--config/application.rb39
-rw-r--r--config/auth.php115
-rw-r--r--config/bookmarks.php117
-rw-r--r--config/boot.rb4
-rw-r--r--config/broadcasting.php44
-rw-r--r--config/cache.php111
-rw-r--r--config/cors.php34
-rw-r--r--config/credentials.yml.enc1
-rw-r--r--config/database.php31
-rw-r--r--config/database.yml25
-rw-r--r--config/domain.php27
-rw-r--r--config/environment.rb5
-rw-r--r--config/environments/development.rb62
-rw-r--r--config/environments/production.rb79
-rw-r--r--config/environments/test.rb54
-rw-r--r--config/filesystems.php76
-rw-r--r--config/hashing.php17
-rw-r--r--config/importmap.rb7
-rw-r--r--config/initializers/assets.rb12
-rw-r--r--config/initializers/content_security_policy.rb25
-rw-r--r--config/initializers/filter_parameter_logging.rb8
-rw-r--r--config/initializers/inflections.rb16
-rw-r--r--config/initializers/permissions_policy.rb13
-rw-r--r--config/locales/en.yml31
-rw-r--r--config/logging.php93
-rw-r--r--config/mail.php125
-rw-r--r--config/projects.php71
-rw-r--r--config/puma.rb35
-rw-r--r--config/queue.php109
-rw-r--r--config/quotes.php957
-rw-r--r--config/routes.rb10
-rw-r--r--config/sentry.php108
-rw-r--r--config/services.php25
-rw-r--r--config/session.php201
-rw-r--r--config/view.php36
36 files changed, 426 insertions, 2331 deletions
diff --git a/config/app.php b/config/app.php
deleted file mode 100644
index 72a3525..0000000
--- a/config/app.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-use Illuminate\Support\Facades\Facade;
-use Illuminate\Support\ServiceProvider;
-
-return [
- 'name' => env('APP_NAME', 'diskfloppy.me'),
- 'version' => '2024.07.12',
- 'env' => env('APP_ENV', 'production'),
- 'debug' => (bool) env('APP_DEBUG', false),
- 'url' => env('APP_URL', 'http://localhost'),
- 'api_root' => env('API_ROOT', 'http://localhost:3000'),
-
- 'asset_url' => env('ASSET_URL'),
- 'timezone' => 'UTC',
- 'locale' => 'en',
- 'fallback_locale' => 'en',
- 'faker_locale' => 'en_US',
- 'key' => env('APP_KEY'),
- 'cipher' => 'AES-256-CBC',
- 'maintenance' => [
- 'driver' => 'file',
- ],
- 'providers' => ServiceProvider::defaultProviders()->merge([
- App\Providers\AppServiceProvider::class,
- App\Providers\AuthServiceProvider::class,
- App\Providers\EventServiceProvider::class,
- App\Providers\RouteServiceProvider::class,
- ])->replace([
- \Illuminate\Queue\QueueServiceProvider::class => \Gecche\Multidomain\Queue\QueueServiceProvider::class,
- ])->toArray(),
- 'aliases' => Facade::defaultAliases()->merge([
- ])->toArray(),
-];
diff --git a/config/application.rb b/config/application.rb
new file mode 100644
index 0000000..1df240b
--- /dev/null
+++ b/config/application.rb
@@ -0,0 +1,39 @@
+require_relative "boot"
+
+require "rails"
+# Pick the frameworks you want:
+require "active_model/railtie"
+# require "active_job/railtie"
+require "active_record/railtie"
+# require "active_storage/engine"
+require "action_controller/railtie"
+# require "action_mailer/railtie"
+# require "action_mailbox/engine"
+# require "action_text/engine"
+require "action_view/railtie"
+# require "action_cable/engine"
+require "rails/test_unit/railtie"
+
+# Require the gems listed in Gemfile, including any gems
+# you've limited to :test, :development, or :production.
+Bundler.require(*Rails.groups)
+
+module DiskfloppyMe
+ class Application < Rails::Application
+ # Initialize configuration defaults for originally generated Rails version.
+ config.load_defaults 7.1
+
+ # Please, add to the `ignore` list any other `lib` subdirectories that do
+ # not contain `.rb` files, or that should not be reloaded or eager loaded.
+ # Common ones are `templates`, `generators`, or `middleware`, for example.
+ config.autoload_lib(ignore: %w(assets tasks))
+
+ # Configuration for the application, engines, and railties goes here.
+ #
+ # These settings can be overridden in specific environments using the files
+ # in config/environments, which are processed later.
+ #
+ # config.time_zone = "Central Time (US & Canada)"
+ # config.eager_load_paths << Rails.root.join("extras")
+ end
+end
diff --git a/config/auth.php b/config/auth.php
deleted file mode 100644
index 9548c15..0000000
--- a/config/auth.php
+++ /dev/null
@@ -1,115 +0,0 @@
-<?php
-
-return [
-
- /*
- |--------------------------------------------------------------------------
- | Authentication Defaults
- |--------------------------------------------------------------------------
- |
- | This option controls the default authentication "guard" and password
- | reset options for your application. You may change these defaults
- | as required, but they're a perfect start for most applications.
- |
- */
-
- 'defaults' => [
- 'guard' => 'web',
- 'passwords' => 'users',
- ],
-
- /*
- |--------------------------------------------------------------------------
- | Authentication Guards
- |--------------------------------------------------------------------------
- |
- | Next, you may define every authentication guard for your application.
- | Of course, a great default configuration has been defined for you
- | here which uses session storage and the Eloquent user provider.
- |
- | All authentication drivers have a user provider. This defines how the
- | users are actually retrieved out of your database or other storage
- | mechanisms used by this application to persist your user's data.
- |
- | Supported: "session"
- |
- */
-
- 'guards' => [
- 'web' => [
- 'driver' => 'session',
- 'provider' => 'users',
- ],
- ],
-
- /*
- |--------------------------------------------------------------------------
- | User Providers
- |--------------------------------------------------------------------------
- |
- | All authentication drivers have a user provider. This defines how the
- | users are actually retrieved out of your database or other storage
- | mechanisms used by this application to persist your user's data.
- |
- | If you have multiple user tables or models you may configure multiple
- | sources which represent each model / table. These sources may then
- | be assigned to any extra authentication guards you have defined.
- |
- | Supported: "database", "eloquent"
- |
- */
-
- 'providers' => [
- 'users' => [
- 'driver' => 'eloquent',
- 'model' => App\Models\User::class,
- ],
-
- // 'users' => [
- // 'driver' => 'database',
- // 'table' => 'users',
- // ],
- ],
-
- /*
- |--------------------------------------------------------------------------
- | Resetting Passwords
- |--------------------------------------------------------------------------
- |
- | You may specify multiple password reset configurations if you have more
- | than one user table or model in the application and you want to have
- | separate password reset settings based on the specific user types.
- |
- | The expiry time is the number of minutes that each reset token will be
- | considered valid. This security feature keeps tokens short-lived so
- | they have less time to be guessed. You may change this as needed.
- |
- | The throttle setting is the number of seconds a user must wait before
- | generating more password reset tokens. This prevents the user from
- | quickly generating a very large amount of password reset tokens.
- |
- */
-
- 'passwords' => [
- 'users' => [
- 'provider' => 'users',
- 'table' => 'password_reset_tokens',
- 'expire' => 60,
- 'throttle' => 60,
- ],
- ],
-
- /*
- |--------------------------------------------------------------------------
- | Password Confirmation Timeout
- |--------------------------------------------------------------------------
- |
- | Here you may define the amount of seconds before a password confirmation
- | times out and the user is prompted to re-enter their password via the
- | confirmation screen. By default, the timeout lasts for three hours.
- |
- */
-
- 'password_timeout' => 10800,
-
-];
diff --git a/config/bookmarks.php b/config/bookmarks.php
deleted file mode 100644
index db955d5..0000000
--- a/config/bookmarks.php
+++ /dev/null
@@ -1,117 +0,0 @@
-<?php
-return [
- // Friends' Websites
- [
- 'name' => "Friends' Websites",
- 'bookmarks' => [
- [
- 'name' => "nick99nack",
- 'url' => "http://www.nick99nack.com/",
- 'description' => "Currently in the process of taking over the internet. I Totally didn't steal any of his stuff."
- ],
- [
- 'name' => "campos",
- 'url' => "https://campos02.me/",
- 'description' => "Cool brazilian dude, does programming and stuff"
- ],
- [
- 'name' => "Sashi",
- 'url' => "https://joshuaalto.com/",
- 'description' => "Site redesign #8! I'll find a website style I enjoy eventually, I swear!"
- ],
- [
- 'name' => "noone",
- 'url' => "http://strangenessnetworks.com/",
- 'description' => "Strangeness Networks, noone's website."
- ],
- [
- 'name' => "raf",
- 'url' => "https://notashelf.dev/",
- 'description' => "is a shelf"
- ],
- [
- 'name' => "CamK06",
- 'url' => "https://starman0620.neocities.org/",
- 'description' => "Now with more outdated HTML!"
- ],
- [
- 'name' => "HIDEN",
- 'url' => "https://hiden.pw/",
- 'description' => "Moar buttons!"
- ],
- [
- 'name' => "coco",
- 'url' => "http://cocomark.neocities.org/",
- 'description' => "needs to go to the brain store"
- ],
- [
- 'name' => "Toxidation",
- 'url' => "http://toxi.pw/",
- 'description' => "h (idk if this is his actual domain he has like 5)"
- ],
- [
- 'name' => "xproot",
- 'url' => "http://xproot.pw/",
- 'description' => "a random internet person on this very random planet"
- ]
- ]
- ],
- // Cool Projects
- [
- 'name' => "Cool Projects",
- 'bookmarks' => [
- [
- 'name' => "ToS;DR",
- 'url' => "https://tosdr.org/",
- 'description' => "\"I have read and agree to the Terms\" is the biggest lie on the web. They aim to fix that."
- ],
- [
- 'name' => "NINA",
- 'url' => "https://nina.chat/",
- 'description' => "Yahoo! Messenger (and soon AOL) revival"
- ],
- [
- 'name' => "Escargot",
- 'url' => "https://escargot.chat/",
- 'description' => "MSN/WLM revival"
- ],
- ]
- ],
- // Other Cool Stuff
- [
- 'name' => "Other Cool Stuff",
- 'bookmarks' => [
- [
- 'name' => "WinWorld",
- 'url' => "http://www.winworldpc.com/",
- 'description' => "WinWorld is an online museum dedicated to the preservation and sharing of vintage, abandoned, and pre-release software."
- ],
- [
- 'name' => "ToastyTech",
- 'url' => "http://toastytech.com/",
- 'description' => "Nathan's Toasty Technology Page"
- ],
- [
- 'name' => "Optimized for no one",
- 'url' => "http://www.hoary.org/browse/",
- 'description' => "Optimized for no one, but pretty much OK with . . ."
- ],
- [
- 'name' => "Cameron's World",
- 'url' => "http://www.cameronsworld.net/",
- 'description' => "A love letter to the Internet of old."
- ]
- ]
- ],
- // Miscellaneous Resources
- [
- 'name' => "Miscellaneous Resources",
- 'bookmarks' => [
- [
- 'name' => "Home Manager (Appendix A)",
- 'url' => "https://rycee.gitlab.io/home-manager/options.html",
- 'description' => "Useful list of configuration options for Home Manager."
- ]
- ]
- ]
-];
diff --git a/config/boot.rb b/config/boot.rb
new file mode 100644
index 0000000..988a5dd
--- /dev/null
+++ b/config/boot.rb
@@ -0,0 +1,4 @@
+ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../Gemfile", __dir__)
+
+require "bundler/setup" # Set up gems listed in the Gemfile.
+require "bootsnap/setup" # Speed up boot time by caching expensive operations.
diff --git a/config/broadcasting.php b/config/broadcasting.php
deleted file mode 100644
index 98a0093..0000000
--- a/config/broadcasting.php
+++ /dev/null
@@ -1,44 +0,0 @@
-<?php
-
-return [
- 'default' => env('BROADCAST_DRIVER', 'null'),
- 'connections' => [
- 'pusher' => [
- 'driver' => 'pusher',
- 'key' => env('PUSHER_APP_KEY'),
- 'secret' => env('PUSHER_APP_SECRET'),
- 'app_id' => env('PUSHER_APP_ID'),
- 'options' => [
- 'cluster' => env('PUSHER_APP_CLUSTER'),
- 'host' => env('PUSHER_HOST') ?: 'api-'.env('PUSHER_APP_CLUSTER', 'mt1').'.pusher.com',
- 'port' => env('PUSHER_PORT', 443),
- 'scheme' => env('PUSHER_SCHEME', 'https'),
- 'encrypted' => true,
- 'useTLS' => env('PUSHER_SCHEME', 'https') === 'https',
- ],
- 'client_options' => [
- // Guzzle client options: https://docs.guzzlephp.org/en/stable/request-options.html
- ],
- ],
-
- 'ably' => [
- 'driver' => 'ably',
- 'key' => env('ABLY_KEY'),
- ],
-
- 'redis' => [
- 'driver' => 'redis',
- 'connection' => 'default',
- ],
-
- 'log' => [
- 'driver' => 'log',
- ],
-
- 'null' => [
- 'driver' => 'null',
- ],
-
- ],
-
-];
diff --git a/config/cache.php b/config/cache.php
deleted file mode 100644
index d4171e2..0000000
--- a/config/cache.php
+++ /dev/null
@@ -1,111 +0,0 @@
-<?php
-
-use Illuminate\Support\Str;
-
-return [
-
- /*
- |--------------------------------------------------------------------------
- | Default Cache Store
- |--------------------------------------------------------------------------
- |
- | This option controls the default cache connection that gets used while
- | using this caching library. This connection is used when another is
- | not explicitly specified when executing a given caching function.
- |
- */
-
- 'default' => env('CACHE_DRIVER', 'file'),
-
- /*
- |--------------------------------------------------------------------------
- | Cache Stores
- |--------------------------------------------------------------------------
- |
- | Here you may define all of the cache "stores" for your application as
- | well as their drivers. You may even define multiple stores for the
- | same cache driver to group types of items stored in your caches.
- |
- | Supported drivers: "apc", "array", "database", "file",
- | "memcached", "redis", "dynamodb", "octane", "null"
- |
- */
-
- 'stores' => [
-
- 'apc' => [
- 'driver' => 'apc',
- ],
-
- 'array' => [
- 'driver' => 'array',
- 'serialize' => false,
- ],
-
- 'database' => [
- 'driver' => 'database',
- 'table' => 'cache',
- 'connection' => null,
- 'lock_connection' => null,
- ],
-
- 'file' => [
- 'driver' => 'file',
- 'path' => storage_path('framework/cache/data'),
- 'lock_path' => storage_path('framework/cache/data'),
- ],
-
- 'memcached' => [
- 'driver' => 'memcached',
- 'persistent_id' => env('MEMCACHED_PERSISTENT_ID'),
- 'sasl' => [
- env('MEMCACHED_USERNAME'),
- env('MEMCACHED_PASSWORD'),
- ],
- 'options' => [
- // Memcached::OPT_CONNECT_TIMEOUT => 2000,
- ],
- 'servers' => [
- [
- 'host' => env('MEMCACHED_HOST', '127.0.0.1'),
- 'port' => env('MEMCACHED_PORT', 11211),
- 'weight' => 100,
- ],
- ],
- ],
-
- 'redis' => [
- 'driver' => 'redis',
- 'connection' => 'cache',
- 'lock_connection' => 'default',
- ],
-
- 'dynamodb' => [
- 'driver' => 'dynamodb',
- 'key' => env('AWS_ACCESS_KEY_ID'),
- 'secret' => env('AWS_SECRET_ACCESS_KEY'),
- 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
- 'table' => env('DYNAMODB_CACHE_TABLE', 'cache'),
- 'endpoint' => env('DYNAMODB_ENDPOINT'),
- ],
-
- 'octane' => [
- 'driver' => 'octane',
- ],
-
- ],
-
- /*
- |--------------------------------------------------------------------------
- | Cache Key Prefix
- |--------------------------------------------------------------------------
- |
- | When utilizing the APC, database, memcached, Redis, or DynamoDB cache
- | stores there might be other applications using the same cache. For
- | that reason, you may prefix every cache key to avoid collisions.
- |
- */
-
- 'prefix' => env('CACHE_PREFIX', Str::slug(env('APP_NAME', 'laravel'), '_').'_cache_'),
-
-];
diff --git a/config/cors.php b/config/cors.php
deleted file mode 100644
index 8a39e6d..0000000
--- a/config/cors.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-return [
-
- /*
- |--------------------------------------------------------------------------
- | Cross-Origin Resource Sharing (CORS) Configuration
- |--------------------------------------------------------------------------
- |
- | Here you may configure your settings for cross-origin resource sharing
- | or "CORS". This determines what cross-origin operations may execute
- | in web browsers. You are free to adjust these settings as needed.
- |
- | To learn more: https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS
- |
- */
-
- 'paths' => ['api/*', 'sanctum/csrf-cookie'],
-
- 'allowed_methods' => ['*'],
-
- 'allowed_origins' => ['*'],
-
- 'allowed_origins_patterns' => [],
-
- 'allowed_headers' => ['*'],
-
- 'exposed_headers' => [],
-
- 'max_age' => 0,
-
- 'supports_credentials' => false,
-
-];
diff --git a/config/credentials.yml.enc b/config/credentials.yml.enc
new file mode 100644
index 0000000..9c02e82
--- /dev/null
+++ b/config/credentials.yml.enc
@@ -0,0 +1 @@
+/Dy1CRDIs9+cL1RD4ecoS6pkf21Ervocjmhv42w4E4wE0JagN40kS8K9myPJemf1yvU9gxNZ7kGyXu4A3FGSkjAe6DeFej4xr3K15s13E+svJCpTq3ABWA4NYJYhq+R7Lsj2fCCkqjhQwUU5jLz4Kdlh6jKB898so1khWiwVIedj16suIKNYQQUmKaeqIHcNRkmlrxlwCYHpYv3sVGnn2Xr7OpRriW0of9UC1iBLrg9izNeo/X806PCkJGDB58jeC91Zmx9Vazeu150nEWnBf9HhuV2sXELSZ9mFKH77Np66DmWYToQnt40rzEdN1uh7eBetBdCxr5C33YSVuNW7YMmMPbe6dAkg0h3TL2tYaNPOoz/W7Oenz3h983Het4EFhjWUHmlXfcuBTJbW3Ha5FJjX9A8Y--/jNkyAmvE5iWAZnz--JjgO9wRYQBURPQ1rQOhjiw== \ No newline at end of file
diff --git a/config/database.php b/config/database.php
deleted file mode 100644
index 5e2b5d4..0000000
--- a/config/database.php
+++ /dev/null
@@ -1,31 +0,0 @@
-<?php
-
-use Illuminate\Support\Str;
-
-return [
- 'default' => env('DB_CONNECTION', 'mysql'),
-
- 'connections' => [
- 'mysql' => [
- 'driver' => 'mysql',
- 'url' => env('DATABASE_URL'),
- 'host' => env('DB_HOST', '127.0.0.1'),
- 'port' => env('DB_PORT', '3306'),
- 'database' => env('DB_DATABASE', 'forge'),
- 'username' => env('DB_USERNAME', 'forge'),
- 'password' => env('DB_PASSWORD', ''),
- 'unix_socket' => env('DB_SOCKET', ''),
- 'charset' => 'utf8mb4',
- 'collation' => 'utf8mb4_unicode_ci',
- 'prefix' => '',
- 'prefix_indexes' => true,
- 'strict' => true,
- 'engine' => null,
- 'options' => extension_loaded('pdo_mysql') ? array_filter([
- PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
- ]) : [],
- ],
- ],
-
- 'migrations' => 'migrations',
-];
diff --git a/config/database.yml b/config/database.yml
new file mode 100644
index 0000000..796466b
--- /dev/null
+++ b/config/database.yml
@@ -0,0 +1,25 @@
+# SQLite. Versions 3.8.0 and up are supported.
+# gem install sqlite3
+#
+# Ensure the SQLite 3 gem is defined in your Gemfile
+# gem "sqlite3"
+#
+default: &default
+ adapter: sqlite3
+ pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
+ timeout: 5000
+
+development:
+ <<: *default
+ database: storage/development.sqlite3
+
+# Warning: The database defined as "test" will be erased and
+# re-generated from your development database when you run "rake".
+# Do not set this db to the same as development or production.
+test:
+ <<: *default
+ database: storage/test.sqlite3
+
+production:
+ <<: *default
+ database: storage/production.sqlite3
diff --git a/config/domain.php b/config/domain.php
deleted file mode 100644
index 8d5bbca..0000000
--- a/config/domain.php
+++ /dev/null
@@ -1,27 +0,0 @@
-<?php
-
-return [
- 'env_stub' => '.env',
- 'storage_dirs' => [
- 'app' => [
- 'public' => [
- ],
- ],
- 'framework' => [
- 'cache' => [
- ],
- 'testing' => [
- ],
- 'sessions' => [
- ],
- 'views' => [
- ],
- ],
- 'logs' => [
- ],
- ],
- 'domains' => [
- 'diskfloppy.me' => 'diskfloppy.me',
- 'dwiskfwoppy.me' => 'diskfloppy.me',
- ],
- ];
diff --git a/config/environment.rb b/config/environment.rb
new file mode 100644
index 0000000..cac5315
--- /dev/null
+++ b/config/environment.rb
@@ -0,0 +1,5 @@
+# Load the Rails application.
+require_relative "application"
+
+# Initialize the Rails application.
+Rails.application.initialize!
diff --git a/config/environments/development.rb b/config/environments/development.rb
new file mode 100644
index 0000000..63daa06
--- /dev/null
+++ b/config/environments/development.rb
@@ -0,0 +1,62 @@
+require "active_support/core_ext/integer/time"
+
+Rails.application.configure do
+ # Settings specified here will take precedence over those in config/application.rb.
+
+ # In the development environment your application's code is reloaded any time
+ # it changes. This slows down response time but is perfect for development
+ # since you don't have to restart the web server when you make code changes.
+ config.enable_reloading = true
+
+ # Do not eager load code on boot.
+ config.eager_load = false
+
+ # Show full error reports.
+ config.consider_all_requests_local = true
+
+ # Enable server timing
+ config.server_timing = true
+
+ # Enable/disable caching. By default caching is disabled.
+ # Run rails dev:cache to toggle caching.
+ if Rails.root.join("tmp/caching-dev.txt").exist?
+ config.action_controller.perform_caching = true
+ config.action_controller.enable_fragment_cache_logging = true
+
+ config.cache_store = :memory_store
+ config.public_file_server.headers = {
+ "Cache-Control" => "public, max-age=#{2.days.to_i}"
+ }
+ else
+ config.action_controller.perform_caching = false
+
+ config.cache_store = :null_store
+ end
+
+ # Print deprecation notices to the Rails logger.
+ config.active_support.deprecation = :log
+
+ # Raise exceptions for disallowed deprecations.
+ config.active_support.disallowed_deprecation = :raise
+
+ # Tell Active Support which deprecation messages to disallow.
+ config.active_support.disallowed_deprecation_warnings = []
+
+ # Raise an error on page load if there are pending migrations.
+ config.active_record.migration_error = :page_load
+
+ # Highlight code that triggered database queries in logs.
+ config.active_record.verbose_query_logs = true
+
+ # Suppress logger output for asset requests.
+ config.assets.quiet = true
+
+ # Raises error for missing translations.
+ # config.i18n.raise_on_missing_translations = true
+
+ # Annotate rendered view with file names.
+ # config.action_view.annotate_rendered_view_with_filenames = true
+
+ # Raise error when a before_action's only/except options reference missing actions
+ config.action_controller.raise_on_missing_callback_actions = true
+end
diff --git a/config/environments/production.rb b/config/environments/production.rb
new file mode 100644
index 0000000..3e6684f
--- /dev/null
+++ b/config/environments/production.rb
@@ -0,0 +1,79 @@
+require "active_support/core_ext/integer/time"
+
+Rails.application.configure do
+ # Settings specified here will take precedence over those in config/application.rb.
+
+ # Code is not reloaded between requests.
+ config.enable_reloading = false
+
+ # Eager load code on boot. This eager loads most of Rails and
+ # your application in memory, allowing both threaded web servers
+ # and those relying on copy on write to perform better.
+ # Rake tasks automatically ignore this option for performance.
+ config.eager_load = true
+
+ # Full error reports are disabled and caching is turned on.
+ config.consider_all_requests_local = false
+ config.action_controller.perform_caching = true
+
+ # Ensures that a master key has been made available in ENV["RAILS_MASTER_KEY"], config/master.key, or an environment
+ # key such as config/credentials/production.key. This key is used to decrypt credentials (and other encrypted files).
+ # config.require_master_key = true
+
+ # Disable serving static files from `public/`, relying on NGINX/Apache to do so instead.
+ # config.public_file_server.enabled = false
+
+ # Compress CSS using a preprocessor.
+ # config.assets.css_compressor = :sass
+
+ # Do not fall back to assets pipeline if a precompiled asset is missed.
+ config.assets.compile = false
+
+ # Enable serving of images, stylesheets, and JavaScripts from an asset server.
+ # config.asset_host = "http://assets.example.com"
+
+ # Specifies the header that your server uses for sending files.
+ # config.action_dispatch.x_sendfile_header = "X-Sendfile" # for Apache
+ # config.action_dispatch.x_sendfile_header = "X-Accel-Redirect" # for NGINX
+
+ # Assume all access to the app is happening through a SSL-terminating reverse proxy.
+ # Can be used together with config.force_ssl for Strict-Transport-Security and secure cookies.
+ # config.assume_ssl = true
+
+ # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
+ config.force_ssl = true
+
+ # Log to STDOUT by default
+ config.logger = ActiveSupport::Logger.new(STDOUT)
+ .tap { |logger| logger.formatter = ::Logger::Formatter.new }
+ .then { |logger| ActiveSupport::TaggedLogging.new(logger) }
+
+ # Prepend all log lines with the following tags.
+ config.log_tags = [ :request_id ]
+
+ # "info" includes generic and useful information about system operation, but avoids logging too much
+ # information to avoid inadvertent exposure of personally identifiable information (PII). If you
+ # want to log everything, set the level to "debug".
+ config.log_level = ENV.fetch("RAILS_LOG_LEVEL", "info")
+
+ # Use a different cache store in production.
+ # config.cache_store = :mem_cache_store
+
+ # Enable locale fallbacks for I18n (makes lookups for any locale fall back to
+ # the I18n.default_locale when a translation cannot be found).
+ config.i18n.fallbacks = true
+
+ # Don't log any deprecations.
+ config.active_support.report_deprecations = false
+
+ # Do not dump schema after migrations.
+ config.active_record.dump_schema_after_migration = false
+
+ # Enable DNS rebinding protection and other `Host` header attacks.
+ # config.hosts = [
+ # "example.com", # Allow requests from example.com
+ # /.*\.example\.com/ # Allow requests from subdomains like `www.example.com`
+ # ]
+ # Skip DNS rebinding protection for the default health check endpoint.
+ # config.host_authorization = { exclude: ->(request) { request.path == "/up" } }
+end
diff --git a/config/environments/test.rb b/config/environments/test.rb
new file mode 100644
index 0000000..d349c35
--- /dev/null
+++ b/config/environments/test.rb
@@ -0,0 +1,54 @@
+require "active_support/core_ext/integer/time"
+
+# The test environment is used exclusively to run your application's
+# test suite. You never need to work with it otherwise. Remember that
+# your test database is "scratch space" for the test suite and is wiped
+# and recreated between test runs. Don't rely on the data there!
+
+Rails.application.configure do
+ # Settings specified here will take precedence over those in config/application.rb.
+
+ # While tests run files are not watched, reloading is not necessary.
+ config.enable_reloading = false
+
+ # Eager loading loads your entire application. When running a single test locally,
+ # this is usually not necessary, and can slow down your test suite. However, it's
+ # recommended that you enable it in continuous integration systems to ensure eager
+ # loading is working properly before deploying your code.
+ config.eager_load = ENV["CI"].present?
+
+ # Configure public file server for tests with Cache-Control for performance.
+ config.public_file_server.enabled = true
+ config.public_file_server.headers = {
+ "Cache-Control" => "public, max-age=#{1.hour.to_i}"
+ }
+
+ # Show full error reports and disable caching.
+ config.consider_all_requests_local = true
+ config.action_controller.perform_caching = false
+ config.cache_store = :null_store
+
+ # Render exception templates for rescuable exceptions and raise for other exceptions.
+ config.action_dispatch.show_exceptions = :rescuable
+
+ # Disable request forgery protection in test environment.
+ config.action_controller.allow_forgery_protection = false
+
+ # Print deprecation notices to the stderr.
+ config.active_support.deprecation = :stderr
+
+ # Raise exceptions for disallowed deprecations.
+ config.active_support.disallowed_deprecation = :raise
+
+ # Tell Active Support which deprecation messages to disallow.
+ config.active_support.disallowed_deprecation_warnings = []
+
+ # Raises error for missing translations.
+ # config.i18n.raise_on_missing_translations = true
+
+ # Annotate rendered view with file names.
+ # config.action_view.annotate_rendered_view_with_filenames = true
+
+ # Raise error when a before_action's only/except options reference missing actions
+ config.action_controller.raise_on_missing_callback_actions = true
+end
diff --git a/config/filesystems.php b/config/filesystems.php
deleted file mode 100644
index e9d9dbd..0000000
--- a/config/filesystems.php
+++ /dev/null
@@ -1,76 +0,0 @@
-<?php
-
-return [
-
- /*
- |--------------------------------------------------------------------------
- | Default Filesystem Disk
- |--------------------------------------------------------------------------
- |
- | Here you may specify the default filesystem disk that should be used
- | by the framework. The "local" disk, as well as a variety of cloud
- | based disks are available to your application. Just store away!
- |
- */
-
- 'default' => env('FILESYSTEM_DISK', 'local'),
-
- /*
- |--------------------------------------------------------------------------
- | Filesystem Disks
- |--------------------------------------------------------------------------
- |
- | Here you may configure as many filesystem "disks" as you wish, and you
- | may even configure multiple disks of the same driver. Defaults have
- | been set up for each driver as an example of the required values.
- |
- | Supported Drivers: "local", "ftp", "sftp", "s3"
- |
- */
-
- 'disks' => [
-
- 'local' => [
- 'driver' => 'local',
- 'root' => storage_path('app'),
- 'throw' => false,
- ],
-
- 'public' => [
- 'driver' => 'local',
- 'root' => storage_path('app/public'),
- 'url' => env('APP_URL').'/storage',
- 'visibility' => 'public',
- 'throw' => false,
- ],
-
- 's3' => [
- 'driver' => 's3',
- 'key' => env('AWS_ACCESS_KEY_ID'),
- 'secret' => env('AWS_SECRET_ACCESS_KEY'),
- 'region' => env('AWS_DEFAULT_REGION'),
- 'bucket' => env('AWS_BUCKET'),
- 'url' => env('AWS_URL'),
- 'endpoint' => env('AWS_ENDPOINT'),
- 'use_path_style_endpoint' => env('AWS_USE_PATH_STYLE_ENDPOINT', false),
- 'throw' => false,
- ],
-
- ],
-
- /*
- |--------------------------------------------------------------------------
- | Symbolic Links
- |--------------------------------------------------------------------------
- |
- | Here you may configure the symbolic links that will be created when the
- | `storage:link` Artisan command is executed. The array keys should be
- | the locations of the links and the values should be their targets.
- |
- */
-
- 'links' => [
- public_path('storage') => storage_path('app/public'),
- ],
-
-];
diff --git a/config/hashing.php b/config/hashing.php
deleted file mode 100644
index eca4888..0000000
--- a/config/hashing.php
+++ /dev/null
@@ -1,17 +0,0 @@
-<?php
-
-return [
- // One of "bcrypt", "argon", "argon2id"
- 'driver' => 'bcrypt',
-
- 'bcrypt' => [
- 'rounds' => env('BCRYPT_ROUNDS', 10),
- ],
-
-
- 'argon' => [
- 'memory' => 65536,
- 'threads' => 1,
- 'time' => 4,
- ],
-];
diff --git a/config/importmap.rb b/config/importmap.rb
new file mode 100644
index 0000000..909dfc5
--- /dev/null
+++ b/config/importmap.rb
@@ -0,0 +1,7 @@
+# Pin npm packages by running ./bin/importmap
+
+pin "application"
+pin "@hotwired/turbo-rails", to: "turbo.min.js"
+pin "@hotwired/stimulus", to: "stimulus.min.js"
+pin "@hotwired/stimulus-loading", to: "stimulus-loading.js"
+pin_all_from "app/javascript/controllers", under: "controllers"
diff --git a/config/initializers/assets.rb b/config/initializers/assets.rb
new file mode 100644
index 0000000..2eeef96
--- /dev/null
+++ b/config/initializers/assets.rb
@@ -0,0 +1,12 @@
+# Be sure to restart your server when you modify this file.
+
+# Version of your assets, change this if you want to expire all your assets.
+Rails.application.config.assets.version = "1.0"
+
+# Add additional assets to the asset load path.
+# Rails.application.config.assets.paths << Emoji.images_path
+
+# Precompile additional assets.
+# application.js, application.css, and all non-JS/CSS in the app/assets
+# folder are already added.
+# Rails.application.config.assets.precompile += %w( admin.js admin.css )
diff --git a/config/initializers/content_security_policy.rb b/config/initializers/content_security_policy.rb
new file mode 100644
index 0000000..b3076b3
--- /dev/null
+++ b/config/initializers/content_security_policy.rb
@@ -0,0 +1,25 @@
+# Be sure to restart your server when you modify this file.
+
+# Define an application-wide content security policy.
+# See the Securing Rails Applications Guide for more information:
+# https://guides.rubyonrails.org/security.html#content-security-policy-header
+
+# Rails.application.configure do
+# config.content_security_policy do |policy|
+# policy.default_src :self, :https
+# policy.font_src :self, :https, :data
+# policy.img_src :self, :https, :data
+# policy.object_src :none
+# policy.script_src :self, :https
+# policy.style_src :self, :https
+# # Specify URI for violation reports
+# # policy.report_uri "/csp-violation-report-endpoint"
+# end
+#
+# # Generate session nonces for permitted importmap, inline scripts, and inline styles.
+# config.content_security_policy_nonce_generator = ->(request) { request.session.id.to_s }
+# config.content_security_policy_nonce_directives = %w(script-src style-src)
+#
+# # Report violations without enforcing the policy.
+# # config.content_security_policy_report_only = true
+# end
diff --git a/config/initializers/filter_parameter_logging.rb b/config/initializers/filter_parameter_logging.rb
new file mode 100644
index 0000000..c2d89e2
--- /dev/null
+++ b/config/initializers/filter_parameter_logging.rb
@@ -0,0 +1,8 @@
+# Be sure to restart your server when you modify this file.
+
+# Configure parameters to be partially matched (e.g. passw matches password) and filtered from the log file.
+# Use this to limit dissemination of sensitive information.
+# See the ActiveSupport::ParameterFilter documentation for supported notations and behaviors.
+Rails.application.config.filter_parameters += [
+ :passw, :secret, :token, :_key, :crypt, :salt, :certificate, :otp, :ssn
+]
diff --git a/config/initializers/inflections.rb b/config/initializers/inflections.rb
new file mode 100644
index 0000000..3860f65
--- /dev/null
+++ b/config/initializers/inflections.rb
@@ -0,0 +1,16 @@
+# Be sure to restart your server when you modify this file.
+
+# Add new inflection rules using the following format. Inflections
+# are locale specific, and you may define rules for as many different
+# locales as you wish. All of these examples are active by default:
+# ActiveSupport::Inflector.inflections(:en) do |inflect|
+# inflect.plural /^(ox)$/i, "\\1en"
+# inflect.singular /^(ox)en/i, "\\1"
+# inflect.irregular "person", "people"
+# inflect.uncountable %w( fish sheep )
+# end
+
+# These inflection rules are supported but not enabled by default:
+# ActiveSupport::Inflector.inflections(:en) do |inflect|
+# inflect.acronym "RESTful"
+# end
diff --git a/config/initializers/permissions_policy.rb b/config/initializers/permissions_policy.rb
new file mode 100644
index 0000000..7db3b95
--- /dev/null
+++ b/config/initializers/permissions_policy.rb
@@ -0,0 +1,13 @@
+# Be sure to restart your server when you modify this file.
+
+# Define an application-wide HTTP permissions policy. For further
+# information see: https://developers.google.com/web/updates/2018/06/feature-policy
+
+# Rails.application.config.permissions_policy do |policy|
+# policy.camera :none
+# policy.gyroscope :none
+# policy.microphone :none
+# policy.usb :none
+# policy.fullscreen :self
+# policy.payment :self, "https://secure.example.com"
+# end
diff --git a/config/locales/en.yml b/config/locales/en.yml
new file mode 100644
index 0000000..6c349ae
--- /dev/null
+++ b/config/locales/en.yml
@@ -0,0 +1,31 @@
+# Files in the config/locales directory are used for internationalization and
+# are automatically loaded by Rails. If you want to use locales other than
+# English, add the necessary files in this directory.
+#
+# To use the locales, use `I18n.t`:
+#
+# I18n.t "hello"
+#
+# In views, this is aliased to just `t`:
+#
+# <%= t("hello") %>
+#
+# To use a different locale, set it with `I18n.locale`:
+#
+# I18n.locale = :es
+#
+# This would use the information in config/locales/es.yml.
+#
+# To learn more about the API, please read the Rails Internationalization guide
+# at https://guides.rubyonrails.org/i18n.html.
+#
+# Be aware that YAML interprets the following case-insensitive strings as
+# booleans: `true`, `false`, `on`, `off`, `yes`, `no`. Therefore, these strings
+# must be quoted to be interpreted as strings. For example:
+#
+# en:
+# "yes": yup
+# enabled: "ON"
+
+en:
+ hello: "Hello world"
diff --git a/config/logging.php b/config/logging.php
deleted file mode 100644
index 2da9712..0000000
--- a/config/logging.php
+++ /dev/null
@@ -1,93 +0,0 @@
-<?php
-
-use Monolog\Handler\NullHandler;
-use Monolog\Handler\StreamHandler;
-use Monolog\Handler\SyslogUdpHandler;
-use Monolog\Processor\PsrLogMessageProcessor;
-
-return [
- 'default' => env('LOG_CHANNEL', 'stack'),
-
- 'deprecations' => [
- 'channel' => env('LOG_DEPRECATIONS_CHANNEL', 'null'),
- 'trace' => false,
- ],
-
- 'channels' => [
- 'stack' => [
- 'driver' => 'stack',
- 'channels' => ['single'],
- 'ignore_exceptions' => false,
- ],
-
- 'single' => [
- 'driver' => 'single',
- 'path' => storage_path('logs/laravel.log'),
- 'level' => env('LOG_LEVEL', 'debug'),
- 'replace_placeholders' => true,
- ],
-
- 'daily' => [
- 'driver' => 'daily',
- 'path' => storage_path('logs/laravel.log'),
- 'level' => env('LOG_LEVEL', 'debug'),
- 'days' => 14,
- 'replace_placeholders' => true,
- ],
-
- 'slack' => [
- 'driver' => 'slack',
- 'url' => env('LOG_SLACK_WEBHOOK_URL'),
- 'username' => 'Laravel Log',
- 'emoji' => ':boom:',
- 'level' => env('LOG_LEVEL', 'critical'),
- 'replace_placeholders' => true,
- ],
-
- 'papertrail' => [
- 'driver' => 'monolog',
- 'level' => env('LOG_LEVEL', 'debug'),
- 'handler' => env('LOG_PAPERTRAIL_HANDLER', SyslogUdpHandler::class),
- 'handler_with' => [
- 'host' => env('PAPERTRAIL_URL'),
- 'port' => env('PAPERTRAIL_PORT'),
- 'connectionString' => 'tls://'.env('PAPERTRAIL_URL').':'.env('PAPERTRAIL_PORT'),
- ],
- 'processors' => [PsrLogMessageProcessor::class],
- ],
-
- 'stderr' => [
- 'driver' => 'monolog',
- 'level' => env('LOG_LEVEL', 'debug'),
- 'handler' => StreamHandler::class,
- 'formatter' => env('LOG_STDERR_FORMATTER'),
- 'with' => [
- 'stream' => 'php://stderr',
- ],
- 'processors' => [PsrLogMessageProcessor::class],
- ],
-
- 'syslog' => [
- 'driver' => 'syslog',
- 'level' => env('LOG_LEVEL', 'debug'),
- 'facility' => LOG_USER,
- 'replace_placeholders' => true,
- ],
-
- 'errorlog' => [
- 'driver' => 'errorlog',
- 'level' => env('LOG_LEVEL', 'debug'),
- 'replace_placeholders' => true,
- ],
-
- 'null' => [
- 'driver' => 'monolog',
- 'handler' => NullHandler::class,
- ],
-
- 'emergency' => [
- 'path' => storage_path('logs/laravel.log'),
- ],
- ],
-
-];
diff --git a/config/mail.php b/config/mail.php
deleted file mode 100644
index e652bd0..0000000
--- a/config/mail.php
+++ /dev/null
@@ -1,125 +0,0 @@
-<?php
-
-return [
-
- /*
- |--------------------------------------------------------------------------
- | Default Mailer
- |--------------------------------------------------------------------------
- |
- | This option controls the default mailer that is used to send any email
- | messages sent by your application. Alternative mailers may be setup
- | and used as needed; however, this mailer will be used by default.
- |
- */
-
- 'default' => env('MAIL_MAILER', 'smtp'),
-
- /*
- |--------------------------------------------------------------------------
- | Mailer Configurations
- |--------------------------------------------------------------------------
- |
- | Here you may configure all of the mailers used by your application plus
- | their respective settings. Several examples have been configured for
- | you and you are free to add your own as your application requires.
- |
- | Laravel supports a variety of mail "transport" drivers to be used while
- | sending an e-mail. You will specify which one you are using for your
- | mailers below. You are free to add additional mailers as required.
- |
- | Supported: "smtp", "sendmail", "mailgun", "ses", "ses-v2",
- | "postmark", "log", "array", "failover"
- |
- */
-
- 'mailers' => [
- 'smtp' => [
- 'transport' => 'smtp',
- 'url' => env('MAIL_URL'),
- 'host' => env('MAIL_HOST', 'smtp.mailgun.org'),
- 'port' => env('MAIL_PORT', 587),
- 'encryption' => env('MAIL_ENCRYPTION', 'tls'),
- 'username' => env('MAIL_USERNAME'),
- 'password' => env('MAIL_PASSWORD'),
- 'timeout' => null,
- 'local_domain' => env('MAIL_EHLO_DOMAIN'),
- ],
-
- 'ses' => [
- 'transport' => 'ses',
- ],
-
- 'mailgun' => [
- 'transport' => 'mailgun',
- // 'client' => [
- // 'timeout' => 5,
- // ],
- ],
-
- 'postmark' => [
- 'transport' => 'postmark',
- // 'client' => [
- // 'timeout' => 5,
- // ],
- ],
-
- 'sendmail' => [
- 'transport' => 'sendmail',
- 'path' => env('MAIL_SENDMAIL_PATH', '/usr/sbin/sendmail -bs -i'),
- ],
-
- 'log' => [
- 'transport' => 'log',
- 'channel' => env('MAIL_LOG_CHANNEL'),
- ],
-
- 'array' => [
- 'transport' => 'array',
- ],
-
- 'failover' => [
- 'transport' => 'failover',
- 'mailers' => [
- 'smtp',
- 'log',
- ],
- ],
- ],
-
- /*
- |--------------------------------------------------------------------------
- | Global "From" Address
- |--------------------------------------------------------------------------
- |
- | You may wish for all e-mails sent by your application to be sent from
- | the same address. Here, you may specify a name and address that is
- | used globally for all e-mails that are sent by your application.
- |
- */
-
- 'from' => [
- 'address' => env('MAIL_FROM_ADDRESS', 'hello@example.com'),
- 'name' => env('MAIL_FROM_NAME', 'Example'),
- ],
-
- /*
- |--------------------------------------------------------------------------
- | Markdown Mail Settings
- |--------------------------------------------------------------------------
- |
- | If you are using Markdown based email rendering, you may configure your
- | theme and component paths here, allowing you to customize the design
- | of the emails. Or, you may simply stick with the Laravel defaults!
- |
- */
-
- 'markdown' => [
- 'theme' => 'default',
-
- 'paths' => [
- resource_path('views/vendor/mail'),
- ],
- ],
-
-];
diff --git a/config/projects.php b/config/projects.php
deleted file mode 100644
index 1c6c0f2..0000000
--- a/config/projects.php
+++ /dev/null
@@ -1,71 +0,0 @@
-<?php
-return [
- [
- 'name' => "Websites",
- 'projects' => [
- [
- 'name' => "diskfloppy.me",
- 'description' => "The website you're looking at right now!",
- 'url' => "https://github.com/floppydisk05/diskfloppy.me",
- 'languages' => ["PHP", "CSS"]
- ],
- [
- 'name' => "NetDrivers",
- 'description' => "Driver downloads website.",
- 'url' => "https://github.com/floppydisk05/NetDrivers",
- 'languages' => ["Ruby", "CSS"]
- ]
- ]
- ],
- [
- 'name' => "APIs",
- 'projects' => [
- [
- 'name' => "trivia-api",
- 'description' => "API to serve random trivia questions.",
- 'url' => "https://github.com/floppydisk05/trivia-api",
- 'languages' => ["JavaScript"]
- ]
- ]
- ],
- [
- 'name' => "Discord Bots",
- 'projects' => [
- [
- 'name' => "PlexBot",
- 'description' => "A basic bot to play music from the configured Plex server in a Discord voice channel.",
- 'url' => "https://github.com/floppydisk05/PlexBot",
- 'languages' => ["Python"]
- ]
- ]
- ],
- [
- 'name' => "Abandoned Projects",
- 'projects' => [
- [
- 'name' => "website-cf",
- 'description' => "Rewrite of my personal website in Adobe ColdFusion.",
- 'url' => "https://github.com/floppydisk05/website-cf",
- 'languages' => ["Adobe ColdFusion"]
- ],
- [
- 'name' => "WinBotJDA",
- 'description' => "Rewrite of CamK06's WinBot using Java and DiscordJDA.",
- 'url' => "https://github.com/floppydisk05/WinBotJDA",
- 'languages' => ["Java"]
- ],
- [
- 'name' => "delayed-eject",
- 'description' => "Scripts which eject the cd drive a lot to annoy nick.",
- 'url' => "https://github.com/floppydisk05/delayed-eject",
- 'languages' => ["Shell", "C"]
- ],
- [
- 'name' => "php-sound",
- 'description' => "Plays a specified sound file or files on the web server when a php page is loaded.",
- 'url' => "https://github.com/floppydisk05/php-sound",
- 'languages' => ["PHP", "Shell"]
- ]
- ]
- ]
-];
diff --git a/config/puma.rb b/config/puma.rb
new file mode 100644
index 0000000..afa809b
--- /dev/null
+++ b/config/puma.rb
@@ -0,0 +1,35 @@
+# This configuration file will be evaluated by Puma. The top-level methods that
+# are invoked here are part of Puma's configuration DSL. For more information
+# about methods provided by the DSL, see https://puma.io/puma/Puma/DSL.html.
+
+# Puma can serve each request in a thread from an internal thread pool.
+# The `threads` method setting takes two numbers: a minimum and maximum.
+# Any libraries that use thread pools should be configured to match
+# the maximum value specified for Puma. Default is set to 5 threads for minimum
+# and maximum; this matches the default thread size of Active Record.
+max_threads_count = ENV.fetch("RAILS_MAX_THREADS") { 5 }
+min_threads_count = ENV.fetch("RAILS_MIN_THREADS") { max_threads_count }
+threads min_threads_count, max_threads_count
+
+# Specifies that the worker count should equal the number of processors in production.
+if ENV["RAILS_ENV"] == "production"
+ require "concurrent-ruby"
+ worker_count = Integer(ENV.fetch("WEB_CONCURRENCY") { Concurrent.physical_processor_count })
+ workers worker_count if worker_count > 1
+end
+
+# Specifies the `worker_timeout` threshold that Puma will use to wait before
+# terminating a worker in development environments.
+worker_timeout 3600 if ENV.fetch("RAILS_ENV", "development") == "development"
+
+# Specifies the `port` that Puma will listen on to receive requests; default is 3000.
+port ENV.fetch("PORT") { 3000 }
+
+# Specifies the `environment` that Puma will run in.
+environment ENV.fetch("RAILS_ENV") { "development" }
+
+# Specifies the `pidfile` that Puma will use.
+pidfile ENV.fetch("PIDFILE") { "tmp/pids/server.pid" }
+
+# Allow puma to be restarted by `bin/rails restart` command.
+plugin :tmp_restart
diff --git a/config/queue.php b/config/queue.php
deleted file mode 100644
index 01c6b05..0000000
--- a/config/queue.php
+++ /dev/null
@@ -1,109 +0,0 @@
-<?php
-
-return [
-
- /*
- |--------------------------------------------------------------------------
- | Default Queue Connection Name
- |--------------------------------------------------------------------------
- |
- | Laravel's queue API supports an assortment of back-ends via a single
- | API, giving you convenient access to each back-end using the same
- | syntax for every one. Here you may define a default connection.
- |
- */
-
- 'default' => env('QUEUE_CONNECTION', 'sync'),
-
- /*
- |--------------------------------------------------------------------------
- | Queue Connections
- |--------------------------------------------------------------------------
- |
- | Here you may configure the connection information for each server that
- | is used by your application. A default configuration has been added
- | for each back-end shipped with Laravel. You are free to add more.
- |
- | Drivers: "sync", "database", "beanstalkd", "sqs", "redis", "null"
- |
- */
-
- 'connections' => [
-
- 'sync' => [
- 'driver' => 'sync',
- ],
-
- 'database' => [
- 'driver' => 'database',
- 'table' => 'jobs',
- 'queue' => 'default',
- 'retry_after' => 90,
- 'after_commit' => false,
- ],
-
- 'beanstalkd' => [
- 'driver' => 'beanstalkd',
- 'host' => 'localhost',
- 'queue' => 'default',
- 'retry_after' => 90,
- 'block_for' => 0,
- 'after_commit' => false,
- ],
-
- 'sqs' => [
- 'driver' => 'sqs',
- 'key' => env('AWS_ACCESS_KEY_ID'),
- 'secret' => env('AWS_SECRET_ACCESS_KEY'),
- 'prefix' => env('SQS_PREFIX', 'https://sqs.us-east-1.amazonaws.com/your-account-id'),
- 'queue' => env('SQS_QUEUE', 'default'),
- 'suffix' => env('SQS_SUFFIX'),
- 'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
- 'after_commit' => false,
- ],
-
- 'redis' => [
- 'driver' => 'redis',
- 'connection' => 'default',
- 'queue' => env('REDIS_QUEUE', 'default'),
- 'retry_after' => 90,
- 'block_for' => null,
- 'after_commit' => false,
- ],
-
- ],
-
- /*
- |--------------------------------------------------------------------------
- | Job Batching
- |--------------------------------------------------------------------------
- |
- | The following options configure the database and table that store job
- | batching information. These options can be updated to any database
- | connection and table which has been defined by your application.
- |
- */
-
- 'batching' => [
- 'database' => env('DB_CONNECTION', 'mysql'),
- 'table' => 'job_batches',
- ],
-
- /*
- |--------------------------------------------------------------------------
- | Failed Queue Jobs
- |--------------------------------------------------------------------------
- |
- | These options configure the behavior of failed queue job logging so you
- | can control which database and table are used to store the jobs that
- | have failed. You may change them to any database / table you wish.
- |
- */
-
- 'failed' => [
- 'driver' => env('QUEUE_FAILED_DRIVER', 'database-uuids'),
- 'database' => env('DB_CONNECTION', 'mysql'),
- 'table' => 'failed_jobs',
- ],
-
-];
diff --git a/config/quotes.php b/config/quotes.php
deleted file mode 100644
index 9bfd8ad..0000000
--- a/config/quotes.php
+++ /dev/null
@@ -1,957 +0,0 @@
-<?php
-return [
- "toh" => [
- [
- "lines" => [
- [
- "character" => "EDA",
- "line" => "Ahh sure. Spare us."
- ],
- [
- "character" => "LILITH",
- "line" => "Woe to us whose fates are sealed."
- ]
- ],
- "attribution" => "The Owl House, S1E11"
- ],
- [
- "lines" => [
- [
- "character" => "EDA",
- "line" => "Hey freeloaders! Guess what today is!"
- ]
- ],
- "attribution" => "The Owl House, S1E12"
- ],
- [
- "lines" => [
- [
- "character" => "EDA",
- "line" => "Quitting! It's like trying, but easier!"
- ]
- ],
- "attribution" => "The Owl House, S1E13"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Can it, Fangs! You don't know diddly-dang about squiddly-squat!"
- ]
- ],
- "attribution" => "The Owl House, S1E13"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Holy bones, you poofed it! Call the cops, this guy's crazy!"
- ]
- ],
- "attribution" => "The Owl House, S1E14"
- ],
- [
- "lines" => [
- [
- "character" => "EDA",
- "line" => "There is one way, but it's terribly dangerous and partially illegal."
- ]
- ],
- "attribution" => "The Owl House, S1E15"
- ],
- [
- "lines" => [
- [
- "character" => "GUS CLONE",
- "line" => "I'd rather die than expose my secrets!"
- ],
- [
- "character" => "GUS",
- "line" => "Then die, you shall!"
- ]
- ],
- "attribution" => "The Owl House, S1E15"
- ],
- [
- "lines" => [
- [
- "character" => "LUZ",
- "line" => "Vee, you're giving up too quick!"
- ],
- [
- "character" => "VEE",
- "line" => "I'm being realistic."
- ]
- ],
- "attribution" => "The Owl House, S2E10"
- ],
- [
- "lines" => [
- [
- "character" => "LUZ",
- "line" => "I have questions about that name..."
- ],
- [
- "character" => "LILITH",
- "line" => "And I have questions about my life!"
- ]
- ],
- "attribution" => "The Owl House, S2E12"
- ],
- [
- "lines" => [
- [
- "character" => "EMIRA",
- "line" => "We can shout as loud as we want, but money always shouts louder."
- ]
- ],
- "attribution" => "The Owl House, S2E20"
- ],
- [
- "lines" => [
- [
- "character" => "VEE",
- "line" => "Uhh, no, I'm new in town, I just have one of those faces! But, ju-just one, the normal amount of face."
- ]
- ],
- "attribution" => "The Owl House, S3E01"
- ],
- [
- "lines" => [
- [
- "character" => "RAINE",
- "line" => "You Know I Hate These Things. Talking To People. Waving To People. People."
- ]
- ],
- "attribution" => "The Owl House, S2E11"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Who dares intrude upon I, the King of Demons?!"
- ]
- ],
- "attribution" => "The Owl House, S1E1"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Soon, Mr. Ducky, we shall drink the fear of those who mocked us."
- ]
- ],
- "attribution" => "The Owl House, S1E1"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Try to catch me when I’m covered in grease! I'm a squirmy little fella."
- ]
- ],
- "attribution" => "The Owl House, S1E1"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "My crown! Yes, yes! I can feel my powers returning! You, there. Nightmare critter. I shall call you Francois, and you shall be a minion in my army of darkness. Ha‐ha!"
- ]
- ],
- "attribution" => "The Owl House, S1E1"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Weh?"
- ]
- ],
- "attribution" => "The Owl House, S1E1"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "That was actually one of her better breakups!"
- ]
- ],
- "attribution" => "The Owl House, S1E1"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "I AM NOT YOUR CUTIE-PIE!!!"
- ]
- ],
- "attribution" => "The Owl House, S1E2"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Ha! Good luck. The Boiling Isles is nothing but a cesspool of despair."
- ]
- ],
- "attribution" => "The Owl House, S1E2"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "You should run a small business of more scones into my mouth."
- ]
- ],
- "attribution" => "The Owl House, S1E2"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Finally, all that mean-spirited laughter made me sleepy."
- ]
- ],
- "attribution" => "The Owl House, S1E2"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Less talky, more nappy."
- ]
- ],
- "attribution" => "The Owl House, S1E2"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Can't mistake her smell. Like lemons and young, naïve confidence."
- ]
- ],
- "attribution" => "The Owl House, S1E2"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "I have no son! Eat salt!"
- ]
- ],
- "attribution" => "The Owl House, S1E3"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Even demons have inner demons."
- ]
- ],
- "attribution" => "The Owl House, S1E4"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Look, now we're boo-boo buddies!"
- ]
- ],
- "attribution" => "The Owl House, S1E4"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Bap!"
- ]
- ],
- "attribution" => "The Owl House, S1E4"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Remember when her head got cut off last week? That woman can survive anything. She's probably just tired from staying up all night chasing shrews and voles."
- ]
- ],
- "attribution" => "The Owl House, S1E4"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "That voice. That horrific voice!!!"
- ]
- ],
- "attribution" => "The Owl House, S1E4"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Show me the picture! Hah! I can draw better than that. You know, they once called me the King of Artists."
- ]
- ],
- "attribution" => "The Owl House, S1E5"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Are you bestowing gifts upon me? Yes! I accept your offering! The King of Demons is back!"
- ]
- ],
- "attribution" => "The Owl House, S1E5"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Cupcakes in my tummy-tum makes the King say yummy-yum!"
- ]
- ],
- "attribution" => "The Owl House, S1E5"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Mmm? Oh, yeah. No."
- ]
- ],
- "attribution" => "The Owl House, S1E5"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "I'm stealing everything that's not nailed down!"
- ]
- ],
- "attribution" => "The Owl House, S1E6"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "King? Who's King? I go by Little Bone Boy now."
- ]
- ],
- "attribution" => "The Owl House, S1E6"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Rivals are meant to be annihilated not befriended. Now keep reading. I've been sucked into your awful fandom."
- ]
- ],
- "attribution" => "The Owl House, S1E7"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "What does Luz know about problems anyway? All she has is dumb teen drama! She doesn't understand how hard some of us have it."
- ]
- ],
- "attribution" => "The Owl House, S1E8"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Well, I don't know if you realized, but I'm not a baby!"
- ]
- ],
- "attribution" => "The Owl House, S1E8"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "My life is a living nightmare!"
- ]
- ],
- "attribution" => "The Owl House, S1E8"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Fight to the death!"
- ]
- ],
- "attribution" => "The Owl House, S1E8"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "I've got some... very confusing emotions right now."
- ]
- ],
- "attribution" => "The Owl House, S1E8"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "All right, you acne‐encrusted hormone buckets. Let's go let out some teen angst!"
- ]
- ],
- "attribution" => "The Owl House, S1E8"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Ooh! Fight, fight, fight!"
- ]
- ],
- "attribution" => "The Owl House, S1E9"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Yes! Yes! This is a throne worthy of a tyrant. Bow to me you snotty underlings. Bow!"
- ]
- ],
- "attribution" => "The Owl House, S1E10"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "*Rage squeals*"
- ]
- ],
- "attribution" => "The Owl House, S1E10"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Hey you scum! Which one of you wants to read my literary masterpiece? Anyone brave enough?"
- ]
- ],
- "attribution" => "The Owl House, S1E11"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "I've always wanted a people chair! I'm in! This will be my first step in my reclamation of power!"
- ]
- ],
- "attribution" => "The Owl House, S1E11"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "I'm sorry, my lawyer advised me not to look at unsolicited work."
- ]
- ],
- "attribution" => "The Owl House, S1E11"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "What's a book? Good night!"
- ]
- ],
- "attribution" => "The Owl House, S1E11"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Hey! Less ready, more scratchy!"
- ]
- ],
- "attribution" => "The Owl House, S1E12"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Military discipline, cooking! Ha, I truly am a demon for all seasons! Just a dash of Eda's secret sauce and I'm the creator of life!"
- ]
- ],
- "attribution" => "The Owl House, S1E12"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "This day shall live in infamy."
- ]
- ],
- "attribution" => "The Owl House, S1E12"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Obedience? Well, what is a teacher if not an authority figure? A king of children, if you will. Yes! I am your teacher! You may call me Mr. King!"
- ]
- ],
- "attribution" => "The Owl House, S1E13"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Assume a coefficient of ten, carry the two, solve for Y, and that is the way to steal a pie from a windowsill! Also you can eat trash."
- ]
- ],
- "attribution" => "The Owl House, S1E13"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Alright. Read chapters three to five on the right way to scratch yourself in public. Spoiler alert: There's no wrong way! Ah, days like these make being a teacher all worth it."
- ]
- ],
- "attribution" => "The Owl House, S1E13"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Oh dear, I've gotten a tube stuck on my nose! Will I ever eat again? Looks like I'm toast!"
- ]
- ],
- "attribution" => "The Owl House, S1E14"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "The King of Demons misses nobody! I wouldn't care if she came through this door right now!"
- ]
- ],
- "attribution" => "The Owl House, S1E14"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Beat up the man and steal his things for me!"
- ]
- ],
- "attribution" => "The Owl House, S1E14"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "I'm gonna bake that kid into a pie!"
- ]
- ],
- "attribution" => "The Owl House, S1E15"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Senseless violence. Yes, attack! DEATH IS YOUR GOD!"
- ]
- ],
- "attribution" => "The Owl House, S1E16"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "I FORGE MY OWN PATH!"
- ]
- ],
- "attribution" => "The Owl House, S1E16"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Why am I doing this? I don't even wear clothes!"
- ]
- ],
- "attribution" => "The Owl House, S1E16"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Ha! What possible regrets could come from the internet? Oh, did you know the earth is actually flat!"
- ]
- ],
- "attribution" => "The Owl House, S1E16"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "We're going to turn this blood-bath into a fun-bath!"
- ]
- ],
- "attribution" => "The Owl House, S1E16"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Girl, you can pull off anything! Up top! We're style geniuses!"
- ]
- ],
- "attribution" => "The Owl House, S1E16"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Now I am king and queen! Best of both things!"
- ]
- ],
- "attribution" => "The Owl House, S1E16"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Yes! Now I’ll strike fear into my enemies with this armor of intimidation."
- ]
- ],
- "attribution" => "The Owl House, S1E17"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "You know what, when she first got here, I thought we were gonna eat her. But now I only think of that, like, sometimes."
- ]
- ],
- "attribution" => "The Owl House, S1E18"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "The cake is me!"
- ]
- ],
- "attribution" => "The Owl House, S1E18"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Me and Eda don't always see eye to eye, but I do consider her family. I want her back as much as you do."
- ]
- ],
- "attribution" => "The Owl House, S1E19"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "We'll have to do something so diabolical, so criminally insane, that they'll have to send us to the Conformatorium."
- ]
- ],
- "attribution" => "The Owl House, S1E19"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "I'm never letting you go! You're never returning to the human realm!"
- ]
- ],
- "attribution" => "The Owl House, S2E1"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "King want a cracker!"
- ]
- ],
- "attribution" => "The Owl House, S2E1"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Weh? Yeah yeah, I'll deal with it. No one ever said power came with responsibility..."
- ]
- ],
- "attribution" => "The Owl
-
- House, S2E2"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "The King of Demons yields to no one!"
- ]
- ],
- "attribution" => "The Owl House, S2E3"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Ah, the chamber where I would devour the hearts of my foes. The taste was cold and bitter, but I bet yours would be sweet, Luz."
- ]
- ],
- "attribution" => "The Owl House, S2E3"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Is that a six-footed pig or a floating appendage? Why, no! It's Gus the Illusion Master. Please leave a message."
- ]
- ],
- "attribution" => "The Owl House, S2E5"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "And weh, and weh, and weh, and weh, and weh, and weh, and weh, and weh!"
- ]
- ],
- "attribution" => "The Owl House, S2E7"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Haha! Saint Epiderm? More like Stank Epiderm!"
- ]
- ],
- "attribution" => "The Owl House, S2E7"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "DID YOU OWL PELLET ME?!"
- ]
- ],
- "attribution" => "The Owl House, S2E8"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "You look like one of my hairballs. Let's just do the trench coat thing!"
- ]
- ],
- "attribution" => "The Owl House, S2E9"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Guess minecart chases are a lot more dangerous than video games make'em seem."
- ]
- ],
- "attribution" => "The Owl House, S2E9"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "I can't wait to eat HUMAN snacks!"
- ]
- ],
- "attribution" => "The Owl House, S2E10"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "It was the... yeast I could do."
- ]
- ],
- "attribution" => "The Owl House, S2E11"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "With my love of mayhem and Hooty’s desperate need for attention, this’ll be a cake walk!"
- ]
- ],
- "attribution" => "The Owl House, S2E11"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Hey, Eda, look! \"Dear sister, join the Emperor's Coven and together, we can become gods!\""
- ]
- ],
- "attribution" => "The Owl House, S2E12"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Ooh! That'll work great when birds try to fly away with me."
- ]
- ],
- "attribution" => "The Owl House, S2E14"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "What you need is a healthy distractions from your problems. Like breakfast!"
- ]
- ],
- "attribution" => "The Owl House, S2E14"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Is this thing on? Demon King to Luzura, you copy?"
- ]
- ],
- "attribution" => "The Owl House, S2E16"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "Uh, oh. Uh... Hable más lento, por favor."
- ]
- ],
- "attribution" => "The Owl House, S2E16"
- ],
- [
- "lines" => [
- [
- "character" => "KING",
- "line" => "The Collector is just a little kid. A scary, powerful one, but… also… sad, and alone. I don’t know, this whole time, I was scared of making him mad, but… I think I can relate to him."
- ]
- ],
- "attribution" => "The Owl House, S3E1"
- ]
- ],
- "neversaid" => [
- [
- "name" => "ASM",
- "quote" => "The Director liked all the props we got today."
- ],
- [
- "name" => "PM",
- "quote" => "Ah ha, a revolve. Terrific."
- ],
- [
- "name" => "Chippie",
- "quote" => "I don't know, let's look at the ground plan."
- ],
- [
- "name" => "Set Designer",
- "quote" => "Well, let's just have whatever is cheaper."
- ],
- [
- "name" => "Sound",
- "quote" => "Better turn that down a bit. We don't want to deafen them."
- ],
- [
- "name" => "Director",
- "quote" => "Sorry, my mistake."
- ],
- [
- "name" => "Electrics",
- "quote" => "This equipment is more complicated than we need."
- ],
- [
- "name" => "Performer",
- "quote" => "I really think my big scene should be cut."
- ],
- [
- "name" => "SM",
- "quote" => "Can we do that scene change again please?"
- ],
- [
- "name" => "LX designer",
- "quote" => "Bit more light from those big chaps at the side. Yes that's right, the ones on stalks whatever they are called."
- ],
- [
- "name" => "Electrics",
- "quote" => "All the equipment works perfectly."
- ],
- [
- "name" => "Musicians",
- "quote" => "So what if that's the end of a call. Let's just finish this bit off."
- ],
- [
- "name" => "Wardrobe",
- "quote" => "Now, when exactly is the first dress rehearsal?"
- ],
- [
- "name" => "Workshop",
- "quote" => "I don't want anyone to know, but if you insist then yes, I admit it, I have just done an all-nighter."
- ],
- [
- "name" => "Performer",
- "quote" => "This costume is so comfortable."
- ],
- [
- "name" => "Admin",
- "quote" => "The level of overtime payments here are simply unacceptable. Our backstage staff deserve better."
- ],
- [
- "name" => "Box Office",
- "quote" => "Comps? No problem."
- ],
- [
- "name" => "Set Designer",
- "quote" => "You're right, it looks dreadful."
- ],
- [
- "name" => "Flyman",
- "quote" => "No, my lips are sealed. What I may or may not have seen remains a secret."
- ],
- [
- "name" => "Electrics",
- "quote" => "That had nothing to do with the computer, it was my fault."
- ],
- [
- "name" => "Crew",
- "quote" => "No, no, I'm sure that's our job."
- ],
- [
- "name" => "SMgt",
- "quote" => "Thanks, but I don't drink."
- ],
- [
- "name" => "Performer",
- "quote" => "Let me stand down here with my back to the audience."
- ],
- [
- "name" => "Chippie",
- "quote" => "I can't really manage those big fast power tools myself."
- ],
- [
- "name" => "Chippie",
- "quote" => "I prefer to use these little hand drills."
- ],
- [
- "name" => "All",
- "quote" => "Let's go and ask the Production Manager. He'll know."
- ]
- ]
-];
diff --git a/config/routes.rb b/config/routes.rb
new file mode 100644
index 0000000..a125ef0
--- /dev/null
+++ b/config/routes.rb
@@ -0,0 +1,10 @@
+Rails.application.routes.draw do
+ # Define your application routes per the DSL in https://guides.rubyonrails.org/routing.html
+
+ # Reveal health status on /up that returns 200 if the app boots with no exceptions, otherwise 500.
+ # Can be used by load balancers and uptime monitors to verify that the app is live.
+ get "up" => "rails/health#show", as: :rails_health_check
+
+ # Defines the root path route ("/")
+ # root "posts#index"
+end
diff --git a/config/sentry.php b/config/sentry.php
deleted file mode 100644
index 2421325..0000000
--- a/config/sentry.php
+++ /dev/null
@@ -1,108 +0,0 @@
-<?php
-
-/**
- * Sentry Laravel SDK configuration file.
- *
- * @see https://docs.sentry.io/platforms/php/guides/laravel/configuration/options/
- */
-return [
-
- // @see https://docs.sentry.io/product/sentry-basics/dsn-explainer/
- 'dsn' => env('SENTRY_LARAVEL_DSN', env('SENTRY_DSN')),
-
- // The release version of your application
- // Example with dynamic git hash: trim(exec('git --git-dir ' . base_path('.git') . ' log --pretty="%h" -n1 HEAD'))
- 'release' => env('SENTRY_RELEASE'),
-
- // When left empty or `null` the Laravel environment will be used (usually discovered from `APP_ENV` in your `.env`)
- 'environment' => env('SENTRY_ENVIRONMENT'),
-
- // @see: https://docs.sentry.io/platforms/php/guides/laravel/configuration/options/#sample-rate
- 'sample_rate' => env('SENTRY_SAMPLE_RATE') === null ? 1.0 : (float)env('SENTRY_SAMPLE_RATE'),
-
- // @see: https://docs.sentry.io/platforms/php/guides/laravel/configuration/options/#traces-sample-rate
- 'traces_sample_rate' => env('SENTRY_TRACES_SAMPLE_RATE') === null ? null : (float)env('SENTRY_TRACES_SAMPLE_RATE'),
-
- // @see: https://docs.sentry.io/platforms/php/guides/laravel/configuration/options/#profiles-sample-rate
- 'profiles_sample_rate' => env('SENTRY_PROFILES_SAMPLE_RATE') === null ? null : (float)env('SENTRY_PROFILES_SAMPLE_RATE'),
-
- // @see: https://docs.sentry.io/platforms/php/guides/laravel/configuration/options/#send-default-pii
- 'send_default_pii' => env('SENTRY_SEND_DEFAULT_PII', false),
-
- // @see: https://docs.sentry.io/platforms/php/guides/laravel/configuration/options/#ignore-exceptions
- // 'ignore_exceptions' => [],
-
- // @see: https://docs.sentry.io/platforms/php/guides/laravel/configuration/options/#ignore-transactions
- // 'ignore_transactions' => [],
-
- // Breadcrumb specific configuration
- 'breadcrumbs' => [
- // Capture Laravel logs as breadcrumbs
- 'logs' => env('SENTRY_BREADCRUMBS_LOGS_ENABLED', true),
-
- // Capture Laravel cache events (hits, writes etc.) as breadcrumbs
- 'cache' => env('SENTRY_BREADCRUMBS_CACHE_ENABLED', true),
-
- // Capture Livewire components like routes as breadcrumbs
- 'livewire' => env('SENTRY_BREADCRUMBS_LIVEWIRE_ENABLED', true),
-
- // Capture SQL queries as breadcrumbs
- 'sql_queries' => env('SENTRY_BREADCRUMBS_SQL_QUERIES_ENABLED', true),
-
- // Capture SQL query bindings (parameters) in SQL query breadcrumbs
- 'sql_bindings' => env('SENTRY_BREADCRUMBS_SQL_BINDINGS_ENABLED', false),
-
- // Capture queue job information as breadcrumbs
- 'queue_info' => env('SENTRY_BREADCRUMBS_QUEUE_INFO_ENABLED', true),
-
- // Capture command information as breadcrumbs
- 'command_info' => env('SENTRY_BREADCRUMBS_COMMAND_JOBS_ENABLED', true),
-
- // Capture HTTP client request information as breadcrumbs
- 'http_client_requests' => env('SENTRY_BREADCRUMBS_HTTP_CLIENT_REQUESTS_ENABLED', true),
- ],
-
- // Performance monitoring specific configuration
- 'tracing' => [
- // Trace queue jobs as their own transactions (this enables tracing for queue jobs)
- 'queue_job_transactions' => env('SENTRY_TRACE_QUEUE_ENABLED', false),
-
- // Capture queue jobs as spans when executed on the sync driver
- 'queue_jobs' => env('SENTRY_TRACE_QUEUE_JOBS_ENABLED', true),
-
- // Capture SQL queries as spans
- 'sql_queries' => env('SENTRY_TRACE_SQL_QUERIES_ENABLED', true),
-
- // Capture SQL query bindings (parameters) in SQL query spans
- 'sql_bindings' => env('SENTRY_TRACE_SQL_BINDINGS_ENABLED', false),
-
- // Capture where the SQL query originated from on the SQL query spans
- 'sql_origin' => env('SENTRY_TRACE_SQL_ORIGIN_ENABLED', true),
-
- // Capture views rendered as spans
- 'views' => env('SENTRY_TRACE_VIEWS_ENABLED', true),
-
- // Capture Livewire components as spans
- 'livewire' => env('SENTRY_TRACE_LIVEWIRE_ENABLED', true),
-
- // Capture HTTP client requests as spans
- 'http_client_requests' => env('SENTRY_TRACE_HTTP_CLIENT_REQUESTS_ENABLED', true),
-
- // Capture Redis operations as spans (this enables Redis events in Laravel)
- 'redis_commands' => env('SENTRY_TRACE_REDIS_COMMANDS', false),
-
- // Capture where the Redis command originated from on the Redis command spans
- 'redis_origin' => env('SENTRY_TRACE_REDIS_ORIGIN_ENABLED', true),
-
- // Enable tracing for requests without a matching route (404's)
- 'missing_routes' => env('SENTRY_TRACE_MISSING_ROUTES_ENABLED', false),
-
- // Configures if the performance trace should continue after the response has been sent to the user until the application terminates
- // This is required to capture any spans that are created after the response has been sent like queue jobs dispatched using `dispatch(...)->afterResponse()` for example
- 'continue_after_response' => env('SENTRY_TRACE_CONTINUE_AFTER_RESPONSE', true),
-
- // Enable the tracing integrations supplied by Sentry (recommended)
- 'default_integrations' => env('SENTRY_TRACE_DEFAULT_INTEGRATIONS_ENABLED', true),
- ],
-
-];
diff --git a/config/services.php b/config/services.php
deleted file mode 100644
index aaad053..0000000
--- a/config/services.php
+++ /dev/null
@@ -1,25 +0,0 @@
-<?php
-
-return [
-
- /*
- |--------------------------------------------------------------------------
- | Third Party Services
- |--------------------------------------------------------------------------
- |
- | This file is for storing the credentials for third party services such
- | as Mailgun, Postmark, AWS and more. This file provides the de facto
- | location for this type of information, allowing packages to have
- | a conventional file to locate the various service credentials.
- |
- */
-
- 'lastfm' => [
- 'key' => env('LASTFM_KEY'),
- 'user' => env('LASTFM_USER'),
- ],
- 'lanyard' => [
- 'user_id' => env('DISCORD_USER_ID'),
- ],
- 'weatherlink' => env('WEATHERLINK_IP')
-];
diff --git a/config/session.php b/config/session.php
deleted file mode 100644
index 8fed97c..0000000
--- a/config/session.php
+++ /dev/null
@@ -1,201 +0,0 @@
-<?php
-
-use Illuminate\Support\Str;
-
-return [
-
- /*
- |--------------------------------------------------------------------------
- | Default Session Driver
- |--------------------------------------------------------------------------
- |
- | This option controls the default session "driver" that will be used on
- | requests. By default, we will use the lightweight native driver but
- | you may specify any of the other wonderful drivers provided here.
- |
- | Supported: "file", "cookie", "database", "apc",
- | "memcached", "redis", "dynamodb", "array"
- |
- */
-
- 'driver' => env('SESSION_DRIVER', 'file'),
-
- /*
- |--------------------------------------------------------------------------
- | Session Lifetime
- |--------------------------------------------------------------------------
- |
- | Here you may specify the number of minutes that you wish the session
- | to be allowed to remain idle before it expires. If you want them
- | to immediately expire on the browser closing, set that option.
- |
- */
-
- 'lifetime' => env('SESSION_LIFETIME', 120),
-
- 'expire_on_close' => false,
-
- /*
- |--------------------------------------------------------------------------
- | Session Encryption
- |--------------------------------------------------------------------------
- |
- | This option allows you to easily specify that all of your session data
- | should be encrypted before it is stored. All encryption will be run
- | automatically by Laravel and you can use the Session like normal.
- |
- */
-
- 'encrypt' => false,
-
- /*
- |--------------------------------------------------------------------------
- | Session File Location
- |--------------------------------------------------------------------------
- |
- | When using the native session driver, we need a location where session
- | files may be stored. A default has been set for you but a different
- | location may be specified. This is only needed for file sessions.
- |
- */
-
- 'files' => storage_path('framework/sessions'),
-
- /*
- |--------------------------------------------------------------------------
- | Session Database Connection
- |--------------------------------------------------------------------------
- |
- | When using the "database" or "redis" session drivers, you may specify a
- | connection that should be used to manage these sessions. This should
- | correspond to a connection in your database configuration options.
- |
- */
-
- 'connection' => env('SESSION_CONNECTION'),
-
- /*
- |--------------------------------------------------------------------------
- | Session Database Table
- |--------------------------------------------------------------------------
- |
- | When using the "database" session driver, you may specify the table we
- | should use to manage the sessions. Of course, a sensible default is
- | provided for you; however, you are free to change this as needed.
- |
- */
-
- 'table' => 'sessions',
-
- /*
- |--------------------------------------------------------------------------
- | Session Cache Store
- |--------------------------------------------------------------------------
- |
- | While using one of the framework's cache driven session backends you may
- | list a cache store that should be used for these sessions. This value
- | must match with one of the application's configured cache "stores".
- |
- | Affects: "apc", "dynamodb", "memcached", "redis"
- |
- */
-
- 'store' => env('SESSION_STORE'),
-
- /*
- |--------------------------------------------------------------------------
- | Session Sweeping Lottery
- |--------------------------------------------------------------------------
- |
- | Some session drivers must manually sweep their storage location to get
- | rid of old sessions from storage. Here are the chances that it will
- | happen on a given request. By default, the odds are 2 out of 100.
- |
- */
-
- 'lottery' => [2, 100],
-
- /*
- |--------------------------------------------------------------------------
- | Session Cookie Name
- |--------------------------------------------------------------------------
- |
- | Here you may change the name of the cookie used to identify a session
- | instance by ID. The name specified here will get used every time a
- | new session cookie is created by the framework for every driver.
- |
- */
-
- 'cookie' => env(
- 'SESSION_COOKIE',
- Str::slug(env('APP_NAME', 'laravel'), '_').'_session'
- ),
-
- /*
- |--------------------------------------------------------------------------
- | Session Cookie Path
- |--------------------------------------------------------------------------
- |
- | The session cookie path determines the path for which the cookie will
- | be regarded as available. Typically, this will be the root path of
- | your application but you are free to change this when necessary.
- |
- */
-
- 'path' => '/',
-
- /*
- |--------------------------------------------------------------------------
- | Session Cookie Domain
- |--------------------------------------------------------------------------
- |
- | Here you may change the domain of the cookie used to identify a session
- | in your application. This will determine which domains the cookie is
- | available to in your application. A sensible default has been set.
- |
- */
-
- 'domain' => env('SESSION_DOMAIN'),
-
- /*
- |--------------------------------------------------------------------------
- | HTTPS Only Cookies
- |--------------------------------------------------------------------------
- |
- | By setting this option to true, session cookies will only be sent back
- | to the server if the browser has a HTTPS connection. This will keep
- | the cookie from being sent to you when it can't be done securely.
- |
- */
-
- 'secure' => env('SESSION_SECURE_COOKIE'),
-
- /*
- |--------------------------------------------------------------------------
- | HTTP Access Only
- |--------------------------------------------------------------------------
- |
- | Setting this value to true will prevent JavaScript from accessing the
- | value of the cookie and the cookie will only be accessible through
- | the HTTP protocol. You are free to modify this option if needed.
- |
- */
-
- 'http_only' => true,
-
- /*
- |--------------------------------------------------------------------------
- | Same-Site Cookies
- |--------------------------------------------------------------------------
- |
- | This option determines how your cookies behave when cross-site requests
- | take place, and can be used to mitigate CSRF attacks. By default, we
- | will set this value to "lax" since this is a secure default value.
- |
- | Supported: "lax", "strict", "none", null
- |
- */
-
- 'same_site' => 'lax',
-
-];
diff --git a/config/view.php b/config/view.php
deleted file mode 100644
index 22b8a18..0000000
--- a/config/view.php
+++ /dev/null
@@ -1,36 +0,0 @@
-<?php
-
-return [
-
- /*
- |--------------------------------------------------------------------------
- | View Storage Paths
- |--------------------------------------------------------------------------
- |
- | Most templating systems load templates from disk. Here you may specify
- | an array of paths that should be checked for your views. Of course
- | the usual Laravel view path has already been registered for you.
- |
- */
-
- 'paths' => [
- resource_path('views'),
- ],
-
- /*
- |--------------------------------------------------------------------------
- | Compiled View Path
- |--------------------------------------------------------------------------
- |
- | This option determines where all the compiled Blade templates will be
- | stored for your application. Typically, this is within the storage
- | directory. However, as usual, you are free to change this value.
- |
- */
-
- 'compiled' => env(
- 'VIEW_COMPILED_PATH',
- realpath(storage_path('framework/views'))
- ),
-
-];